Harness System Design Interviews Through Apprenticeship
A typical salary jump from senior to staff level backend engineer is 50%. Many otherwise qualified engineers struggled to land a plus-one level offer because of system design interviews. While there are loads of online training and books, none covered the depth required by the staff level. Not even close.
Bridging Gaps on Experience and Technical Depth Through Apprenticeship
On 2020, I coached several friends on System Design interviews. They all harvested rich +1 level offers ($700K to $1M). I then learned about the big market vacuum: Online courses all lack in depth, their solutions are mostly unacceptable for staff level bar, sometimes are wrong. Books like DDIA and blog posts from industrial experts are not targeted for interviews and usually too hard to follow. (More one this.)
The coaching experience also showed that the real issue of struggling at System Design is the lack of experience and technical depth. The coaching is essentially bridging the gap through a condensed work experience. My method proved a game changer for all participants. I hope to scale its impact by offering it as a 1:1 course here.
The Phases Of Apprentice Course
Phase 1: Understandning The Real Game
Are you overwhelmed by questions like design Uber, Yelp, or TicketMaster? You won’t after you understand what’s the real game behind the scene. Yes, system design interview is a game and you need to understand the subtle rules to take full advantages. You will learn that the real problem is finding what’s the real problem to solve from the intended vague problem statement. (More on the real game.)
Phase 2: To Be Worth Your Salt
Knowing the structure of the game gives you a huge advantage. But to ace it, you need the real force. In this phase, we will show you how to approach and engage in system design interviews by solving common problems: designing Webhook, job schedulers, Uber, Yelp, News Feed, etc. The time we spent depends on your skill level and it varies a lot. But all the time is worth it because what you learned here makes you a significantly stronger engineer in your job too, not only a better interviewee. We can’t move on before you truly get it!
Get a taste of the meat by reading samples our past design.
Phase 3: Game On!
Now it’s your turn. With all the knowledge and skill mastered in the last two phases, you are ready for the interviews. We will tailor a plan like preparing for a Boxing champion. After each interview, we will review it with you so that you can continuously perfecting what you learned. Before knowing, your offers should be better and better, more and more.
Phase 4: Golden & Juicy
You should have received satisfactory offers. But we are not done yet! Let’s get a final push on compensation negotiation and get the already juicy package even juicier! Both of us deserve it after the hard work. To do that, we will use some unconventional skills.
FAQs
What’s the course format?
Right now, we only offer 1:1 training which is repeatedly proven to be effective. It will be remote meeting unless your location is close to San Francisco Bay Area. It will consists of designing systems like a apprenticeship, interviewing techniques, tips on experience and behavior interviews, mock interviews, and offer negotiation.
What’s the price?
Each apprentice training session is $1200. This is designed for anyone serious about getting a fat L6+ offer. The program is all-in-one from application planning to offer negotiation. However, charing is per session based to account for the huge individual difference. Other options are in the pricing page.
How to know if the course will work for me?
You need proofs from several aspects.
I have the claimed skill. Please read sample designs and my blog posts on designing distributed systems. Those systems are usually asked in interviews. They are not answers to interviews because 45 minutes discussion can’t cover all included topics, but they should demonstrate my skill level and show what I mean by depth. Real interviews won’t cover all topics, but those covered do need that level of depth.
My career track. The LinkedIn page showed my work experience.
Judging from the consultation. It will give you a taste of the full course and help you judge what you can get from my teaching. It’s like a cheap trial of a product. RSVP here.
Who definitely shouldn’t buy this course?
Those who are interviewing for L3 and L4 engineering jobs don’t need this class. Because existing online courses, free or not, are sufficient for such interviews. Theirs will be much cheaper and my price is unjustified for such need. L5 is borderline. The course content over qualify for some L5 interviews but will equip one will the technical capacity for the next level.
What if I don’t want to interview but just want to learn?
The course will definitely help you become a stronger software architect. Those interviews are designed that way for a reason: They are strong indicators of the interviewee’s performance in real job. Can the candidates review design, give constructive feedbacks, and approve responsibly? Can they spot the problems when junior coworkers can’t? Can they spot the opportunities to make existing systems better? Can they make the right technical tradeoffs based on different business requirements?
Such knowledge is identical in interview and in real job (unlike Leetcode coding). For this case, our format will be adjusted for more apprentice style system building. We will also include career development tips like communication, collaboration, and leadership. The price will be cheaper too.