What is the recommended way to transition from a mechanical engineering role or a generalist engineering (like a maker/tinkerer/prototyper) role to a software engineering role? Assume you have a degree in engineering physics, or a blend of physics/math/mech/elec eng and haven't been out of school for long. Would you 1. Go back and do BSc in computer science 2. Go straight into a MSc in computer science with your BASc engineering physics degree 3. Go do a bootcamp and start off at lesser known software companies to gain some experience 4. Watch tutorials/self teach and start off at a lesser known software company to gain actual experience 5. (3 or 4, only you target FANG instead of a lesser known company.) TC 100k YoE 1 Feel free to suggest alternatives or elaborate on the choices given!
Watch tutorials/self teach and then switch to SWE roles in your current company.
3 is probably the easiest, most reasonable path here. You clearly have an analytical background, gaining that is often the hard part for most people. Learning to code shouldn’t be too difficult.
High GPA, lots of extracurriculars and internship experience. Ended up in a prestigious but small startup, that paid 100k base.
Well, that's because it's engineering physics, not mech e, strictly speaking
I was aiming for 4 cuz I don’t have money to go to bootcamp, then landed at 5 :) Anything is possible with dedication
Tutorials + leetcode. You can get into the industry just by understanding one single (not particularly complicated) undergrad class: algorithms and data structures. Tons of sw engineers do not have a cs degree.
I did 5 w/ bootcamp. I'd recommend hanging out on Leetcode for a few months, then see if you feel like a bootcamp would still be necessary. In my case, the bootcamp helped accelerate things, because I had no technical background.
3 & 4.
5 is unlikely without a degree or experience and 1 would definitely be a waste of time.