System Design Interview Prep Guide
Có khá nhiều câu hỏi về kinh nghiệm luyện system design interview, nên mình xin được chia sẻ kinh nghiệm luyện system design của mình và các resources mà mình thường dùng. Mỗi lúc sắp đi interview lại lôi ra xài, cũng được multiple offers nên chắc là chất lượng đảm bảo.
Guide luyện system design interview của mình như sau:
- Read this to understand the system design interview format and step-by-step guide:https://www.designgurus.io/blog/step-by-step-guide
- Follow these courses to quickly grab basic concepts and high level design: Grokking System Design Fundamentals, Grokking the System Design Interview, Grokking Modern System Design Interview for Engineers & Managers
- Read Alex Xu’s system design books: volume 1 and volume 2
- Read Designing Data Intensive Applications: at least 3rd, 5th, and 6th chapter.
- If you are currently working in tech, then take full advantage by studying all the technical review documentation of the systems you're most interested in learning about within your company. This is your chance to learn the most from real world systems and far beyond theoretical knowledge.
- Try to implement some system from scratch. There’s a good resource that Hieu Pham just shared about codecrafters: https://www.facebook.com/.../permalink/1545563609600220
- Get a buddy to do mock interview or just pay some mock interview sessions: TIPS: contact Phạm Quang Vũ or use https://interviewing.io/
- Follow some engineering blogs and read research papers of some complex systems.
A FEW OTHER SYSTEM DESIGN RESOURCES:
- Pragmatice engineer newsletter
- Neo K.'s System Design Newsletter makes engineering blogs more digestible: https://newsletter.systemdesign.one/?r=n49ky
- Google Senior Staff (L7) Engineer's detailed whitepaper notes: https://stephenholiday.com/notes/
- ByteByteGo system design newsletter by Alex Xu
- Architecture Notes
- Quastor System Design Case Studies: https://quastor.substack.com/
- 32 system design resources
- Figma Engineering: https://www.figma.com/blog/engineering/
- OpenAI Software Engineering: https://openai.com/research?topics=software-engineering
- Engineering @ Meta: https://engineering.fb.com/
- Snap Engineering: https://eng.snap.com/
- Stripe Engineering: https://stripe.com/blog/engineering
- Nextflix Tech: https://netflixtechblog.com/
- Pinterest Engineering: https://medium.com/pinterest-engineering
- Quora Eng: https://quoraengineering.quora.com/
- Martin Kleppman's channel - https://www.youtube.com/@kleppmann
- CMU Database Group - https://www.youtube.com/@CMUDatabaseGroup
- MIT6.824: Distributed Systems - https://email@example.com
- DistSys Reading Group - https://www.youtube.com/@distsysreadinggroup596