How To Get Into FAANG as a Self-Taught Programmer
Mục lục bài viết
How To Get Into FAANG as a Self-Taught Programmer
It is much easier than you think
Photo by Jonny Gios on Unsplash
Let me start with a few examples. Kairsten Fay is a self-taught programmer currently working at Meta Seattle.
Megan Chang, no cs degree. A self-taught programmer currently working at Google.
Clement Mihailescu, an Ex-Google and Ex-Facebook software engineer. Also a self-taught programmer.
Most people think it’s so difficult to get a job at FAANG as a self-taught programmer. This isn’t true. When Megan Chang joined Google, she met developers from all sorts of backgrounds; electrical engineers, lawyers, animators, etc.
There are mainly 3 ways that you can learn how to code. A university program, a coding Bootcamp, or learn by yourself. All three are valid.
Let us now look at how you can get a job at FAANG as a self-taught programmer.
Data Structures and Algorithm
I assume by now you already know how to code and want to challenge yourself to the next frontier which is securing a job.
Source
Getting into FAANG requires a good understanding of data structures and algorithms. Google is notorious for asking these kinds of questions.
Therefore you need to brush your skills a bit in this area before going to the interview.
The good news is that there are numerous resources you can use. It shouldn’t be that difficult to improve your understanding of this area. You can start here.
Behavioral and Systems Design
Photo by Med Badr Chemmaoui
Understanding how things work is as important as knowing how to code. Knowing how people think and behave in certain scenarios is handy when building products.
The employer needs you to understand the flow of things or why a product has been designed the way it is.
Google is notorious for asking these kinds of questions as well. In order to make it to FAANG, you need to learn behavioral and systems design.
Here is a playlist of YouTube videos on behavioral and systems design. Kairsten Fay used them to ace her Meta interview.
LeetCode
Source
Leetcode is a platform that builds your knowledge and prepares you for technical interviews.
The recommended approach is to attempt the Top General Interview Questions. You should start with easy problems, then medium problems, and finally hard problems.
Leetcode can be overwhelming and unhelpful if you approach it the wrong way.
You should go through it step by step in a sustainable way. Not trying to solve all the problems in one day. A sustainable approach will help you cover more and retain most of what you learn.
You should also time yourself. How long does it take to solve a problem? It should be 10–15 minutes (easy problems), 15–20 minutes (medium problems), and 20–30 minutes (hard problems).
If you finish earlier than the stipulated time, go back and check your code. The correctness and possible improvement. If you take longer than the stipulated time, keep practicing. You will get better with time.
Here are the problems Kairsten Fay attempted on LeetCode. You will see she is not a genius by any means.
Megan Chang recommends paying for the premium package to unlock solutions with diagrams.
The premium package also helps you unlock company-specific problems. The Facebook Module had 50 problems. These problems are kept up to date and voted by the users. According to her, the Facebook problems were pretty much accurate.
AlgoExpert and ‘Cracking the Coding Interview’
AlgoExpert is also another great resource you can go through at the same time. It’s a perfect study guide.
You can go through it as part of your preparation for the interview. Another almost similar alternative for people who like reading books is Cracking the Coding Interview.
Image Source
It’s highly recommended for understanding data structures and algorithms. It contains many crucial concepts in programming.
Concepts such as big O notation are explained in the book which is a must-know before an interview. The book also works well as a study guide prior to the interview.
The STAR method ⭐
The star method is a technique you can use to prepare for your behavioral interviews. Below is how it’s broken down.
- Situation
- Task
- Action
- Result
You should prepare several examples and practice by yourself. You can utilize learning experiences or previous successes.
There are numerous resources you can use to prepare for responses in the STAR format. You should rehearse them until you realize the areas you shine.
In Conclusion
I didn’t mention building your portfolio and resume. These are also critical elements that increase your chances of being hired.
Your resume might not be the best but your portfolio needs to stand out. You should convincingly show you know the job and have actually built real projects.
Some people might comment the aforementioned examples had ivy league privileges. This isn’t true. It’s mostly about putting in the hours.
The story of Kairsten Fay is particularly interesting. She had an undergrad in Biology. Regardless, she shifted her career to a software engineer without any computer-related degree or background.
She didn’t even attend boot camps that require a minimum of $10,000 to enroll. She self-studied using Coursera and other resources on her own. The total cost of her studies amounted to $200 and she made it to Facebook.
We are now living in a world of possibilities. Contrary to popular belief, you can become a software engineer at Facebook or Google as a self-taught programmer.