Happy New Year! I’m 34 and a former Berkeley BS/Stanford MS in MechE. 10 years ago after a year as an ME at a medical devices company, I made a career switch to mgmt consulting (top3) and later bizops roles at 2 startups. I am considering switching to SWE (details on why below) at FAANG. Primary question is whether being very good at LeetCode is enough to make the switch with my background, and if yes, what level SWE would I be recruited at. Secondary questions: would a bootcamp be useful for me, and should I consider Data Science as well? Some more important things that might be relevant: 1 – At Stanford I was a PhD candidate and earned two major fellowships NSF and SGF. At Cal, I got the ME Dept. Citation ( highest GPA in my class). 2 – Over last month, I picked up Python and have been LeetCoding the official interview collection easy questions (arrays, strings, trees, lists, search, sort etc). I get optimal time and space complexity 75% of the time, but they take me around an hour and my code is not concise and buggy. I think in another two-three months of dedicated effort I could get quite good at leetcode (let's just assume this is true, if not no chance of becoming SWE anyway). 3 – While at Stanford (a decade ago), I took CS106b, the first level algos and data structures class and did very well in the class. I was one of the first 5 people to finish every midterm and final and got an A. 4 - In my 10 years in consulting/bizops I have interacted with every part of the business side of a startup, which may be useful for understanding customer needs or collaborating with other non-eng teams. My primary responsibilities were sales and marketing ops, but I also touched customer support, HR, finance, M&A and more. 5 – The primary reason I want to switch is that I have found that EQ and managing politics trump IQ on the business side. When I was an MechE, I thought my EQ was high, but when I switched to business side I realized I was wrong. Worse, EQ is even more important with seniority. It only took me a decade to recognize that my most valuable asset is my technical abilities! I should have made a change 5 years ago, but at the time I was very eager to join my second startup, which I really believed in at the time, and BizOps was the only role for which I could join. Then after I realized startup #2 wasn’t going anywhere, I got married and started a 2.5-year complete rebuild of my house, which I am just finishing. 6 – Not sure how important this is, but I have many friends who work at FAANG so can definitely get warm referrals. BTW - these friends are all making much more money than I am and are probably getting ready to retire =P. Thank you in advance for your thoughts! Have a great new year! #leetcode #career #change #switch #faang #sde
You seem like a beast. I think a better question is what you want for yourself. You definitely have the experience, but if you are switching to SWE, you might have to start all over, which I assume is a risk you want to take? But in general, you should try to get to do medium problems on leetcode in 30-45 minutes consistently and I think you should be fine
Thanks that's a good benchmark. And yes have been thinking a lot about what I really want. Also need to consider what is possible!
Only concern would be getting noticed by a recruiter. Other than that you sound capable of any tech job.
Yes that's one of my concerns as well. How helpful would the warm referrals be? Should I ask my friends to give me a practice interview so that they can vouch for my leetcode abilities?
Mock interviews are great for getting a feel for the experience. I’d also apply to some companies that you don’t care about for practice before tackling FANG level companies. Referrals are 100% the way to go, I have gotten each of my previous 4 jobs through referrals and I have almost never been contacted for positions I applied to online (with the exception of LinkedIn postings)
You can move to managerial role if you are interested. Not a lot of coding questions are at asked at some companies
I'm open to this in the long run but would be concerned about getting taken seriously as an eng manager if I have no real experience
Yeah, I don’t think you will have a problem being a SWE. The question is what level. You will likely get lowball. Best bet is to get multiple offers!
Yes for sure since I don't know my own value I would apply to many places and try to get multiple offers. Thanks for the reply
Maybe try a technical PM instead? It might seem that grass is greener on the other side, but I feel like you're setting yourself up for disappointment. Even in eng there are plenty of politics especially if you're not an IC, you need to learn to navigate it, not avoid it.
Grass-is-greener mentality is the reason I switched to biz side in the first place, so yes I am absolutely concerned about making the same mistake twice and thank you for bringing this up. The 3 big reasons I want to switch to SWE that I think are not susceptible to grass-is-greener are: (1) Opportunity to remain an IC (not possible in BizOps). (2) politics is everywhere but easier to manage when you have a clearly defined role like in engineering. BizOps is inherently amorphous unless you have a super strong exec leading the group. Even better if that role matches your strengths so you can enter political convos with credibility and past successes. (3) I would have trouble hiring and managing a BizOps team. Among my consulting and bizops peers I have always felt socially out of place, and my network is not strong. I have a better network of engineers today, despite being out of the field for a decade. Maybe this just means I'm bad at networking =P. I would absolutely appreciate feedback on whether these ideas are real or just my imagination!
1. Depending on where you go and what team you’re placed on, as a lower / mid level SWE you may be doing stuff that’s not as rewarding 2. Politics are politics. They suck everywhere. 3. Hiring and managing engineers is it’s own beast. You have to really understand what makes a good eng (hint: it’s not being able to regurgitate LC hard answers) You sound smart and level headed and humble so I don’t think you’ll have trouble making the switch. Just wanted to provide some feedback to balance your expectations. Best of luck
I feel you dude, thinking about doing the same
Yeah I totally got sold on the big3's marketing that you "solve the hardest problems." In my experience the most technical thing you will do is create an excel model and slide deck that looks complex but is secretly so simple you can do the calcs in your head to impress the client and convince them to hire you again.
Yes Leetcode is enough. I started coding when I was 30. Did a bunch of Leetcode and landed FANG at 32. I did a bootcamp but you don't need to with your background. I'd say be prepared to take a new-grad level role. You will love Leetcoding if you enjoyed that CS course.
Thanks for the reply! Appreciate knowing I wouldn't be the first to take this route. I am wondering if I could convince the recruiter to come in as a fresh PhD (even though I don't have a PhD). I believe that is one level higher than a fresh undergrad at Google/Facebook (can't remember the terminology). I did enjoy the cs class and am feeling good about leetcode so far.
Awesome! You're on an exciting journey -- good luck! And I wouldn't stress about the level of your first SWE job. There's a lot you'll need to learn, so it wouldn't hurt if you're company has lower expectations for a year or so.
Leetcode is enough to get an offer for an entry level at least. You may get more. Now, the job is different, but if you learn everyday you should do great. It's not hard for someone with your background.
Thanks for the reply! When you say entry level do you mean fresh undergrad? Do you think I have a chance of getting an offer one level up like a fresh PhDs (even though j don't have a PhD)? Would the chances of that depend on my leetcode skills?
Yes, a fresh undergrad would get entry level. The offer you get depends on whether you woo your interviewers, but since you don't have experience as an SWE, it will probably be entry level and then you can get promoted rather fast if you perform well. To get a higher position, you'll definitely have to show some system design skill. Not sure LC has that. You can read "Designing Data-Intensive Applications" for that matter, and design systems as practice. Of course solve the typical SD problems, like tinyurl and friends.
Why not try a biz ops role at Fang to get in, and then you can do SWE rotations etc. TBH if I were you (MBB + Tech/Coding), id shoot for PM roles
Yes am considering PM as well although my concern is it wouldnt take advantage of my technical abilities as much and also there is no IC option. But it would certainly be less of a career change than SWE.
PM can be technical in some orgs and is usually an IC level role until you’re close to Director level
Dude unless you’re applying to be a CEO, there shouldn’t be an issue getting a position.
I hope you're right! Thanks for the reply
👍