All Linked Resources You Need on Your Journey to Becoming a Backend Software Engineer :)

Rachel Wang
4 min readJul 14, 2022

( I will be publishing more about frontend engineer, product manager, and UX designer positions in the future.)

It’s truly never too late to start. Remember it’s not about “innate intelligence” but really about practice.

No matter how much you just can’t understand at the beginning, it is not indicative of your success in the future. I was literally that person once and kind of still am.

Catch up on the step-by-step-tutorial series here:

If you’ve caught up to this line, you must have watched Parts 1–3 already so I’ll get straight to it. If this was useful to you, please click the Medium clap icon at the very bottom. :) I also want to hear what goals you’re shooting for for yourself in the upcoming week, month, and year.

1. Free CS61B: Data Structures Course To Learn The Concepts For Interview Questions: https://sp21.datastructur.es/

(Make sure it’s Spring 2021 taught by Josh Hug)

*** There’s a big helpful informational block I put at the very bottom of the article. Scroll to the bottom and read that first then come back.

2. Optional Free Easier Classes to Start With Before Doing CS61B If CS61B is Too Confusing at the Moment:

3. Resume-Builder Project Tutorial Videos (In Python Language): https://www.youtube.com/watch?v=jl5yUEdekEM

  • There are many other free project tutorials on Youtube as well in different languages!
  • See how people format their resumes on Youtube as well.

4. Join this subreddit to connect with others going through the same process as you: https://www.reddit.com/r/csMajors/

  • You can also try finding Facebook groups in your area.

5. Practice Interview Questions from Top Companies: leetcode.com

  • I recommend sharing a Premium subscription with friends to get access to more questions.

6. Do a practice interview with a peer: pramp.com

7. Add your resume bullet points to https://www.linkedin.com/ and directly and ruthlessly DM people

that you find who work at the companies you want to ask for a referral because they get money if you get an offer. Referrals are not necessary but help sometimes.

8. I’ve listed what you should apply to depending on where you are in your life. Google software engineer internships/full-time positions in early August and throughout the month as early as your freshman year. Do this as early as possible before they run out of space.

  • High schoolers should apply to high-school specific programs (usually third party since big companies hire at 18).
  • Current freshmen and sophomores should apply to freshmen/sophomore specific programs
  • Juniors and seniors seeking masters should just search for regular internships.
  • ***I will be adding additional classes you should take to be fully ready to be a backend engineer.
  • Post-grads should seek full-time roles. You can work your way up at smaller, budding companies.

To Be Continued: Remaining links will be added. Taking a break from writing :)

***Learn what data structures are in code with this free UC Berkeley course. Once you do, you’ll be ready to do practice interview questions.

If you have already graduated university or have not yet entered college, if you have the option, I think it is best to enroll in an affordable community college course so that you can go to office hours to ask for help on projects, but if not do this with the UC Berkeley CS61B Data Structures course. Use Spring 2021’s website with Professor Josh Hug.

There exist boot camps that train you for free temporarily but you have to pay them back once you get a job. I’m not familiar with those. Do research on Google.

If you are in the middle of getting your undergrad degree, I highly highly recommend switching to computer science or the variants your university offers. It is easier to have support while in university, and immense value

I have listed two other easier classes below the instructions to start with before working your way back to the CS61B class if CS61B is super confusing, but I’m confident if you’re patient, you will be able to understand.

CS61B: Data Structures

  1. Watch the lecture videos to learn the new concepts.
  2. Watch the discussion videos so that you can see the TAs walk through sample problems (don’t worry these are not the same as the interview questions; some of the ones here are more theoretical)
  3. Read through the lab instructions and make an attempt to do what they ask.
  4. Try the exams and try to understand the solutions. (Also these are not industry interview questions; the exams just help you build knowledge of concepts: https://tbp.berkeley.edu/courses/cs/61B/
  5. If you ever need help, seek out tutors in nearby community colleges or high schools. This is also why I recommend taking an actual community college course because you would have direct access to office hours.

If CS61B is going over your head, I’ve listed the other easier courses to help you build a better foundation.

You can now return to steps 2–7 at the top of the article.

--

--

Rachel Wang

Software Engineer, Dancer, too many hobbies. I’ve been to 32 countries, so I’m happy to answer any questions about traveling! :)