我开了一个叫做 System Deep Dive 的系统设计小班，面向在美国寻求软件工程师工作的人。系统设计面试跟算法编码面试有相似的地方也有不一样的地方。相似的地方是，你都需要让面试官想要和你共事，这需要说服他你能跟他一起解决复杂系统的设计难题。不一样的地方在于，系统设计问题没有标准答案，不存在 LeetCode 这样的系统为你的训练提供实时反馈。
System Deep Dive 采用教练带领学生探索复杂系统的小班教学模式，帮助你接触常见的系统设计面试题，模拟真实面试过程 — 鼓励你多提问题了解系统需求，引导你把问题分解成子问题，给机会你独立解决具体子问题。教练会对你的解题过程提供反馈，最后还会展示部分系统代码，帮助你加深对设计难点的理解。
我们的教练曾在大型科技公司中担任 tech lead，有丰富的系统设计经验和面试经验。此外他还创办了自己的 startup，帮助其它科技公司通过实战项目筛选候选人。我们保证你投入到面试准备的每一滴汗水都能有充分的回报。
为了保证跟面试和工作环境一致，整个 System Deep Dive 采用全英语沟通。以下是 System Deep Dive 的详细信息及报名链接：
What is this program?
System Deep Dive is a system design practice group with a coach. The program not only teaches you all the necessary skills to excel at a system design interview but also practices designing complex systems together. In each session, the coach would lead the students to dive deep into a complex system problem and explore different design choices together. Students are encouraged to ask questions and deliberate trade-offs because that’s the best way to learn.
What is the value of this program?
- Get a feel for the real system design questions asked in interviews. We’ll pick the most popular system design questions asked in industry and elaborate on different paths they lead to. You will learn how to design a real system. We’ll explain in-depth about the usual structure to answer such design questions.
- You will ask questions and lead discussions like in a real interview. System design interviews are open-ended by nature. In a real interview, candidates will do most of the talks. We will tackle the problem together as a team and you will ask questions and get answers from the coach or other students. In this way, you can understand deeply and learn the trade-offs better among different design choices.
- You can see how a complex system works in real life. Interviewers often dive deep into the system design to see whether you were actually involved in the project. You might get stuck if you haven’t seen the real thing. We will demo some code and configuration of different system components. In this way, you will understand better, for example, what load balancer does and how the cache is built.
Who is the program for?
People who are committed to getting a software engineer job, have coding experience but lack the experience of designing a complex system.
What is the structure of the program?
This program is structured session by session. Each session will take 2 hours talking about one or two similar system design questions in depth. There will be 4 parts in a session:
- In the first part, you’ll be asked to discuss and walk your thoughts out for the question just like in an interview.
- In the second part, the coach would challenge you and guide you through different directions of the problem. Students are also encouraged to discuss and it’s a perfect time to explore the pros and cons of design choices.
- In the third part, the coach will talk about the common strategy to tackle such a design problem so you can learn the framework tackling it yourself.
- Lastly, the coach will demo with real code to illustrate different parts of the system in real life.
Who is the coach?
Our coach has many years of experience designing complex systems and interviewing candidates at well-established tech companies. He’s also the CEO and founder of a startup specialized in helping tech companies hire engineers through practical projects.
How much does it cost?
We’ll be running a series of sessions as a pilot program and charge by each session. A session will cost $200 with a limit of 8 students. Once a session is full, we’ll stop accepting registration and move candidates to the same session of a later date.
What sessions are available?
We will offer the following sessions in the pilot program:
- System Design Interview Skills: understanding the problem, breaking it down, exploring each subproblem, deliberating trade-offs and articulating decisions. (3/4 7pm–9pm Pacific Time)
- Design an Autocomplete. (3/11 7pm–9pm Pacific Time)
- Design a Facebook/Instagram/Twitter Newsfeed. (3/18 7pm–9pm Pacific Time)
- Design a Customer Service Center. (3/25 7pm–9pm Pacific Time)
We plan to offer each session once in the pilot program. We will adjust them based on feedback and repeat these sessions after the pilot program.
How do I sign up?
Use the following link to sign up for the pilot program and pick the sessions you are interested in:
If you are interested in the sessions after the pilot program (or if you are reading this after the pilot program signup is closed), sign up for the wait list with the following link:
We will contact you through email after you signed up.
Originally published at https://chinese.catchen.me.