So I finally got the offer
When I started, I had 5 years of experience as a Java Developer and some basic knowledge of data structures and algorithms. I struggled even with LeetCode Easy problems.
Overall:
- Time for preparation: 1 year
- Solved Leetcode problems: 800+
- Problem solving mocks: 20+
- System design mocks: 10+
- Behavioral mocks: 2
Courses taken:
- Grokking the Coding Interview Patterns
- Grokking System Design Fundamentals
- Grokking the System Design Interview
- Grokking Dynamic Programming Patterns for Coding Interviews
Companies:
- Amazon, Berlin: Raised the bar for DSA, problem solving, and LLD. Met the bar for SD and one LP, but unfortunately, that LP was critical. I received a 6-month cooldown period.
- Meta, London: Received very strong feedback for all rounds except for SD. I was advised to attempt SD again to qualify for IC5 but declined, as I wasn't confident I could replicate the positive feedback. I proceeded to the team matching stage as IC4 and, after two months, received an offer.
Most of my mock interviews were free; I only paid for the system design and behavioral mocks, which were totally worth it.
Overall Experience: I received an offer and enjoyed the process with Meta (except for the team matching stage). However, everyone I know who applied to big tech companies, despite having strong DSA and SD skills, did not receive a single offer. In my opinion, this statistic is quite disheartening. If you're considering applying, it might be better to postpone until next year.