Hacker News new | ask | show | jobs
by testfit1 499 days ago
1) Not everyone can cook, but great cooks can come from anywhere. SWE @ FAANG is a high bar, not everyone can reach it. Being older will make it more difficult. But it is not impossible and the only way to find out is to try.

2) Given you have no prior CS background, I would recommend finding a undergraduate / graduate program. I would heavily recommend internships / part-time work as a student. The easiest way to get into FAANG is via return offer for internship. You should practice SWE interviewing and prepare a lot for those interviews, they are a big blocker for many roles, and interviewing techniques are not commonly taught in university.

3) Depends on if you want to do research or engineering and how good you are. I don't think you should worry about this problem now though, you aren't at the stage where specialization matters. Just learn about what interests you.

I think if you're serious about your goal of making it into FAANG, the best-case timeline would be ~5 years. I would break down your goal into smaller ones (Graduation, first internship, first job, etc) along the way to maintain momentum.

The game is definitely worth the grind financially though. Best of luck!

1 comments

I feel like I can learn the material without going into an undergraduate program, however as you mentioned that pathway is the best way into getting an internship. Do you think the best-case timeline would still be ~5 years without going through undergrad? Or would it likely be extended? I appreciate the comments/advice.
The timeline is largely a function of how talented you are and how hard you work.

If you can maintain the rigor and pace of an undergraduate CS degree by yourself, you'll be fine. But I think that's really hard to do, and also misses some of the group aspect of college learning (you can augment with OSS projects though).

If this was 2020 I wouldn't recommend for you to go to college, I would say just bootcamp or self study, and find some startup to work at and hone your skills, and job hop from there. But junior hiring has grown much more competitive.

Do you have any network you can leverage to find a first job? If so, I think that route is definitely better. But in the current market I don't see why a company would hire you vs. some random new grad.

That's definitely true regarding your last point. Maybe I need to contribute significantly to some OSS projects or have a really nice side project or portfolio of side projects to level the playing field?
It will help, but you won't be able to totally level the playing field.

For entry level, recruiters get thousands of candidates. They skim each resume for 30s to decide who to bring on to interview and usually don't have the technical context to understand OSS / side projects. If you don't have a degree you likely won't make it past the screen. Also there are many new grads with impressive OSS contributions / side projects.

Also, making a meaningful OSS contribution is ... hard. You have minimal programming experience, you're going to need to learn a lot just to be able to fix a typo. Not to discourage, but just to put into perspective (I work on OSS for FAANG).

Indeed it is something to think about. I appreciate all the advice you gave. Last question, I'm currently taking CS50's Programming with Python and MITs Intro to CS in Python, what would be a good branching point after those two courses? I know it depends on the individual and their interests, but what would you best recommend with respect to your point of view? I'll also be learning math (calculus, linear algebra) simultaneously, to develop the math background to tackle AI/ML.
I took Andrew Ng's Coursera ML course but I think it's a bit out of date now. I've heard good things about https://karpathy.ai/zero-to-hero.html to learn AI/ML.

Most tech interviews will have a leetcode component, so I would also take a more advanced algorithms/data structures class like https://www.coursera.org/learn/algorithms-part1

I would also start doing problems on leetcode once you finish the course.