Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: How do I pivot into SWE from being a stay-at-home dad?
20 points by martinjacobd on Dec 19, 2021 | hide | past | favorite | 9 comments
Hi all,

I graduated college from MIT in Mathematics in 2018, but since then, I've mostly done odd jobs like tutoring or playing the organ for churches. When my daughter was born, with the cost of childcare, it just made sense for me to stay at home. It's nice to be at home, but to be honest, this was never really my plan. My GPA was poor (2.9/4.0); I wasn't motivated in college and didn't 'apply myself.' I never did any internships, for instance. And my mental health was so poor, in addition to these hurdles, that I could never really motivate myself to find a 'real job' after graduation.

That being said, I've done a lot of work on myself and have been doing a lot better over the past year or so. My wife and I are going to have another baby in March, and I want to use the time she has off to really work and try to pivot into software engineering (or a similar technical role). I think this will be important for my 'personal development.'

I'm somewhat familiar with programming, but not much:

  - I took 6.01 (intro to EE/CS) at MIT, so A\* search is probably the most 'complex' thing I've ever done.
  - The other day I wondered how a JIT compiler works. So I made a tiny C program (and used `man`) to find out about the system calls I would need to use to map memory twice to get around W^X protection and copy some simple instructions over and execute them. It was fun, but it was just a toy exercise.
  - That's basically the extent of all the programming I've ever done--toy exercises. I've never worked on a large codebase, or even written a program with more than a few hundred lines of code.
  - I recently got to final round interviews at Google (cold call from a recruiter who saw my resume in their slush pile), but I didn't get an offer. I was able to solve all of the problems (in Python), but apparently, my solutions were inefficient, or I otherwise didn't explain them well enough.
Constraints for a job:

  - Probably, at least $100k salary. That being said, I would be willing to work for less for a smaller amount of time (like a 3-month internship or similar), if it had a high probability of giving me the opportunity to make more in the future.
  - Work that doesn't violate my conscience. So, probably not defense. I would be fine working in finance, though.
  - Work in Boston area or remote.
Constraints for the 'pivot work':

  - The bulk would need to take around 16 weeks starting in March, in Boston or remote.
  - A budget of, at most, $20k, though less is obviously better.
  - Not completely self-guided work. I'm not good at motivating myself to do personal projects, and I find it difficult to convince myself to give them the time that they need. So I would need something with concrete deadlines, etc. I've had the opportunity to make a big 'personal project' since I was in middle school, but I haven't done so yet.
What would you recommend for somebody with a moderate technical background pivoting to SWE? What would be good for a resume and coding interviews? Is one of these 'coding bootcamps' worthwhile? Is there something like a programming tutor who could motivate me to work on something to gain a good bit of experience?


I personally would not spend any money on becoming a SWE. Spending that money will not get you anywhere if you lack motivation. Sure you can audit some free online courses, see e.g. https://www.classcentral.com but paying money will solve very little.

Instead I would go for work experience. That will give you the feedback to know what you actually need to learn. Apply for all sorts of (junior) on-site work as part of a larger team. You will need co-workers to ask and show you to quickly gain experience. On-site work will give you that feedback needed to not lose motivation.

You will probably need to apply to many jobs. You will not get an answer back at all, or get rejected after interviews over and over again. That occurs to most of us!

Perhaps also look at software testing or security surveillance. That is two paths I know acquaintances have taken to eventually get SWE positions. Both can be just-a-work on days when motivation is lacking, or allow you to automate stuff in Python etc to eventually do more and more SWE.

Forget Google etc. The truth is you will probably need to work 10 years at smaller places first to gain experience. And that is probably a good thing. A hyper-competitive environment might not allow you to grow the way you need to.

Best of luck with your career and kids!


> Forget Google etc. The truth is you will probably need to work 10 years at smaller places first to gain experience.

Well technically all you need is to grind on LeetCode for 6 months to prepare for an interview to get the position. The Google interview esp for a Jr/entry level position is firmly selecting for time spent preparing rather than any other factor (assuming you have a CS/Math/Engineering degree to pass the recruiter filter)


you probably have a fairly good shot at getting a junior developer role somewhere. you may not be competitive at getting a role at a highly prestigious top-tier employer who gets a huge number of fresh grad applicants, since such employers afford to be very picky -- but there are plenty of other software jobs out there with decent pay and tolerable working conditions where you can gain practical real world experience working in industry as part of a team on serious projects.

submit job applications to a bunch of places. for each application and interview process there is a fair amount of variability and luck involved in the process generating a job offer even if you would be a strong fit for the role. i wouldn't pay money to 'pivot' --- get a job where you are getting paid to learn on the job as a junior engineer.


> Forget Google etc. The truth is you will probably need to work 10 years at smaller places first to gain experience

This is, IMO, highly presumptive. I have a friend who's entire career after college was "competitive rock climber" (his degree was not in STEM). He went to a bootcamp, joined a small company, and 8 months later jumped to Google. This was in 2018, he's thriving there now and his been promoted to a mid level engineer.

Not everyone can do that of course, but I wouldn't limit yourself.


Your best chance in Boston is probably grubhub. Unicorns and FAANG will also pay 100k+ for junior, but you probably need a lot more programming chops. I'd start building things (a simple web app is good). There's a good chance your first job will have to be web dev.

You could consider a bootcamp, I wouldn't mention it in your application but it can be very useful in getting yourself to code and familiarising yourself with common tools. I know many people who've bootstrapped their careers that way, avoid lambda school though. If you just want to optimise for interview prep I know the people behind https://www.kibaclass.com/ and would vouch for them, they can guide you to consistently getting optimal or close to optimal solutions as well as dealing with the soft skills interviews.

Good luck.


Going from a low GPA math degree to a 100k salary as a SWE in 3 months might be a bit ambitious. I have 1st class honours and 9 years experience. I'm not up to that yet. Admittedly I'm in a small city in New Zealand where they pay is not great.

That said you should be able to get into software engineering relatively easily.

I'd suggest reading Ultralearning: Master Hard Skills, Outsmart the Competition, and Accelerate Your Career Book by Scott H. Young.

It outlines a pattern for this kind of self education.

Try to work as much as you can with people in the industry. Internships are a great way to get contacts. Anything you can do to meet people in the industry will help.


> I recently got to final round interviews at Google (cold call from a recruiter who saw my resume in their slush pile), but I didn't get an offer. I was able to solve all of the problems (in Python), but apparently, my solutions were inefficient, or I otherwise didn't explain them well enough.

If you were able to solve programming questions in a Google interview regardless of how inefficient then I very much doubt you will have a lot of difficulty passing the programming portion of an interview at most companies.

Just apply to a lot of jobs, esp junior entry level ones... do lots of easy-medium practice problems on leetcode to keep that part sharp for companies that do care about that type of problems.

I wouldn't worry too much about the GPA... most companies don't even look at the GPA unless you highlight it on a resume, they might be more inclined to look at it for your first job but it's not a dealbreaker by any means.

I would also advise against bootcamps, you already have bachelors degree in a related field which should help you get your foot in the door. Just apply to lots of places, write a good resume and don't bother customizing it for each company, just apply in bulk, it's a numbers game.


FWIW, Boston is where Thoughtbot is headquartered; their apprenticeship program might not be exactly what you're looking for, but they also have a lot of useful introductory resources.

https://thoughtbot.com


Not sure what covid has done to the place, but friends I know who have worked here -https://faithlife.com/devinterns - Came from unusual backgrounds and it might be a good place to try.

Just tell your story honestly.

Their target market is evangelicals but many of the devs are not Christian, they just like the geographical area.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: