AMAJun 7, 2020
FacebookVGtL32

career switch hardware to software AMA

I actually got a lot of questions lately about this. So thought why not expose info to larger audience. I had both of my bachelor's and master's degree in EE, specifically VLSI design. I worked on physical design at various company including Apple for 5 years before switching over to software. Before I switched to sw I actually was in a top 10 MBA program for a week, but I decided it wasn't my thing so I dropped out and switched to sw. Since the day I started to learn about software to the day I got offer, it took about 6 months of spare time. And it's been over 4 years since I'm in sw. AMA I'll see if I can help. #career #hardware #faang TC: 360K

Western Digital Troll food Jun 7, 2020

What level did you start with on your first job switching from HW to SW?

Facebook VGtL32 OP Jun 7, 2020

E4 with a 30% bump on TC compared to my hw job

Western Digital Troll food Jun 7, 2020

Nice, I was thinking about doing the same but was worried about a dip or have to start from new grad level.

Boeing cwSq01 Jun 7, 2020

Thanks for the post! What were the reasons you switched from hw to sw? What all did you do in those 6 months in sw to get the offer?

Facebook VGtL32 OP Jun 7, 2020

I lost my interest in hw. Toxic culture contributes to my decision too. During the 6 months, I took on projects as close to sw as possible at work, did side projects(for me it was a web crawler in python), most importantly leetcode and system design.

Amazon kio1bsh Jun 8, 2020

OP, the toxic culture was company specific, I presume? There will be toxic culture in SW also - probably more so?

Maxim Integrated homeboy Jun 7, 2020

What software projects did you work on and put in the resume. What was your interview perp?

Facebook VGtL32 OP Jun 7, 2020

tweaked my resume as close to sw as possible, emphasize on projects like automate runs, extract and slice/dice data from logs. Interview preps are all over, including take on projects as close to sw as possible at work, do side projects(for me it was a web crawler in python), most importantly leetcode and system design.

Samsara yHLn43 Jun 8, 2020

God I hate how leetcoding is one of the more important things to prep. Even over real-world development experience.

Maxim Integrated homeboy Jun 7, 2020

Also, was 6 months of weekends/weekdays after work? Or did you quit your job?

Facebook VGtL32 OP Jun 7, 2020

I didn't quit my job, weekday nights and weekends

Intel QaDF6g Jun 7, 2020

How long did it take you to conquer DYnamic Programming, LC hard, algorithms, design patterns, system design etc ? Did you find it hard to be at same pace as your SW colleagues who must have had 5+ yoe at E4? How did your PSC/review go?

Facebook VGtL32 OP Jun 8, 2020

I didn't do all leetcode, by the time I was preparing there are about 500+ questions in total, I did some of them multiple times, some of them I never attempt, the reason is a lot of them are google only, I wasn't interested in google in particular. So not have to prepare those saved me a ton of time. I don't find DP difficult in particular btw, the most important thing is how do you connect a question to the solution, the thinking process and why would be more useful. For example, if you solve question with DFS, and the complexity is O(2^n), then the interview asks you to optimize it time wise, you automatically think can I use DP and make it O(n^2)

Facebook VGtL32 OP Jun 8, 2020

It's hard initially, but the fact that you passed the interview means you're intellectually capable, so there is nothing to worry about. I don't want to get to details in my PSC, but the fact that I entered as E4 and has been there for almost 4 years proves I survived the time limitation to get to E5, so in short, I'm fine.

New
TOPS3 Jun 8, 2020

What resources did you use? Was it just LC, and if so how many questions did you complete(easy/medium/hard)? Lastly, I see you say you put emphasis on work projects but did you do any other side projects besides the web crawler? Did they care or were they just useful to have on resume?

Facebook VGtL32 OP Jun 8, 2020

I replied an earlier Q, I didn't count each level, but it's about 400 close to 500, some of them multiple times. Some of them I never touched. Yeah, they do care, and they do ask you what the project is like, my system design interview at fb is given a set of servers and design a crawler. Also you can have more projects from work, for example, we do have analyze timing analysis results from runs, I proposed why don't we bucket the timing paths violations and put it on a webpage so we can see them. Stuff like that, you can do multiple.

Apple WqUd84 Jul 8, 2020

This bucketing thing is classic Apple scripting. Everyone has their own version of bucketizer :D

Maxim Integrated homeboy Jun 8, 2020

What resources did you use for system design? Was Facebook your first see company in SW after HW? Or did you join a smaller company and then join Facebook? Also, you probably would have made 360k TC as hw with 9yoe staying at Apple. Do you still feel you’ve made the right choice? Was TC your motivation or lack of interest in HW? Or something else?

Facebook VGtL32 OP Jun 8, 2020

It's my first company, I also got Workday but end up select FB. I don't think you can make 360K TC at apple hardware. I don't know where that data point come from. You can try interview at Apple and get an offer see what is it like. It's definitely the right choice for me, if you divide the TC over working hour, I'm way higher now. Got all kinds of time to do side project. TC is not the main reason, but the long feedback loop is, run a P&R + timing flow and wait for 5 days to see the results... no, I'm not interested in that.

New
WFFh33 Jun 8, 2020

Thank you for doing this AMA. Looking back what would you change in your preparation process? Also which subfield of sw would you recommend for someone starting to learn today? Also, how difficult was it to get interviews? Were the interviews skeptical given your background?

Facebook VGtL32 OP Jun 8, 2020

I would be more aggressive, I was being conservative and tried to keep my courtesy at work. For example, I never tried take a week or two off and prepare/interview intensively. Now since you've asked I think I should and everyone should, it's not like the company won't function if you don't work right? For interview, definitely use python, it's all the same to interviewer. For large company like FAANG, no, no one ever skeptical about background, as long as you get to interview stage, you're equal with other candidates. It's all about how well you do in the whole process

Amazon azq183 Jun 8, 2020

Op - your switch is impressive. I was in the semiconductor field too. How did you manage to get interview (get your resume past screening SW) . Since all your titles would be HW engineering

Apple bDXC41 Jun 8, 2020

How much time it took for you to adapt to sw work environment? Are you liking your work now? What are the things which are better in HW as compared to SW, if you find any?

Facebook VGtL32 OP Jun 8, 2020

The first whole year was kind of rough, but I had a good mentor, and it's never toxic, busy but happy. Yeah, I do like my work. The most immediate thing you an notice is, to verify a change now, I just need to rebuild and run a cli get the results in seconds. But for HW I had to kick off a 'flow' run, it takes 5 days, so you have to do many in parallel with different combination of params feeding the EDA tool, and there is a meeting tomorrow morning, in which you'll have to show the results. No time to waste, you'll have to keep your run going, which depend on the server what happens if this run somehow break at 3am? Then the next morning you go to the meeting without any results, and enjoy the spotlight and questions from VP to PMs, feeling like a super star, lol

Synopsys droc Jun 9, 2020

Your vendors need to speed up those EDA tools :D

Maxim Integrated mungushug Jun 8, 2020

Were you in H1b visa? If yes, did it cause any issues with the transfer and stuff?

Facebook VGtL32 OP Jun 8, 2020

Yes, there was no problem at all

Maxim Integrated mungushug Jun 8, 2020

What about greencard priority date? Don’t they check for similar job description?