Curated Low Level System Design Roadmap
Software Engineer at work working on Open Source Technologies

Curated Low Level System Design Roadmap

Zero to Hero Comprehensive Roadmap for Low Level Design Interview Preparation curated over months of research:


?? Expectations from Low Level System Design Interview:

  • Classes (Structure)
  • Relationship (Behavior)
  • Data Model (Persistence)
  • SOLID Principles (Clean Modular Maintainable Code)
  • Design Patterns (If applicable)

?? Important Concepts:

Object Oriented Programming (OOP): Idea of implementing real-world entities in Code by designing software around data, or objects, rather than functions and logic. This helps in building flexible, maintainable and reusable software systems.
Object Oriented Analysis and Design (OOAD): This describes the paradigms and guidelines for analyzing, designing and writing serious object-oriented software
UML: Unified Modelling Language is language agnostic visual representations used for specifying, constructing, and documenting the artifacts of systems
Data Modelling: Every application centers around data and how to store data efficiently and query them depends on how effectively data is modeled
Design Principles: These are general guidelines and best practices that are used to create software that is maintainable, scalable, and efficient.

  • SOLID (S - Single-Responsiblity Principle, O - Open-closed Principle, L - Liskov Substitution Principle, I - Interface Segregation Principle, D - Dependency Inversion Principle)
  • KISS (Keep It Simple and Stupid)
  • DRY (Don't Repeat Yourself)
  • YAGNI (You Aren't Gonna Need It)

Design Patterns: These are underlying patterns established over time which takes into account general design principles guidelines and try to provide a guideline to approach a problem statement

  • Creational
  • Structural
  • Behavioral


?? References:

?? Books:

?? Head First Design Patterns: by Eric Freeman, Ph.D. [https://amzn.eu/d/enZHQ5f]

?? Head First Object-Oriented Analysis & Design: by Brett McLaughlin [https://amzn.eu/d/6rMyQyO]

?? Clean Code : by Robert C Martin [https://amzn.eu/d/gxsctp4] Uncle Bob Consulting LLC.

?? Clean Architecture: by Robert Martin [https://amzn.eu/d/aghQlf3]

?? Refactoring: Improving the Design of Existing Code: by Martin Fowler

[https://refactoring.com/] [https://amzn.eu/d/3dg1orv]

?? Patterns of Enterprise Application Architecture: by Martin Fowler [https://martinfowler.com/architecture/] [https://amzn.eu/d/eHQY71A]

?? Design Patterns: Elements of Reusable Object-Oriented Software: [https://www.oreilly.com/library/view/design-patterns-elements/0201633612/]


? Blogs:

?? Level Up Coding [https://levelup.gitconnected.com/mastering-low-level-design-technical-interviews-tips-and-resources-1df00522d334]

?? InterviewBit Anshuman Singh Abhimanyu Saxena [https://www.interviewbit.com/low-level-design-interview-questions/]

?? Sandeep Kumar [https://medium.com/@sandeep.kumar.ece16/low-level-design-roadmap-7581688d96fa]

?? Educative Fahim ul Haq [https://www.educative.io/blog/interview-guide-low-level-object-oriented-advanced-system-design]

?? Shankhya Chatterjee [https://www.dhirubhai.net/pulse/mastering-low-level-design-comprehensive-guide-shankhya-chatterjee/]

?? Animesh Gaitonde [https://betterprogramming.pub/how-to-ace-the-low-level-design-interview-3f1be6401070]

?? freeCodeCamp Quincy Larson https://www.freecodecamp.org/news/the-basic-design-patterns-all-developers-need-to-know/


?? Websites:

?? Refactoring.Guru https://refactoring.guru/design-patterns

?? Alexander Shvets https://sourcemaking.com/design_patterns

?? GeeksforGeeks Sandeep Jain https://www.geeksforgeeks.org/software-design-patterns/


???? Code:

?? Kamran Ahmed https://github.com/kamranahmedse/design-patterns-for-humans

?? Prasad Gujar https://github.com/prasadgujar/low-level-design-primer

?? Udit Agarwal https://github.com/anomaly2104

?? InterviewReady Gaurav Sen https://github.com/InterviewReady/Low-Level-Design

?? Kumaran Gowthaman https://github.com/kumaransg/LLD/

?? Dov Amir https://github.com/DovAmir/awesome-design-patterns#programming-language-design-patterns


#lld #hld #codingcommunity #interviewpreparation #interviewguidance #mentorship #ebooks #systemdesign #roadmap #dsa #datastructures #realisticsystems #systemdesign #practicalexperience #hld #lld #givingbacktothecommunity #algorithms #datastructuresandalgorithms #codinginterview #interviewtips


What would you read next?

Also I write a weekly newsletter to teach realistic system design here: https://www.dhirubhai.net/newsletters/realistic-systems-7146486009650749440/

If you liked this post.

?? Follow: Saurav Saha for more such content

? Repost to help others find it.

?? Save it for future reference.

Subhahu Jain

MTS @ Salesforce | Ex-SDE @ Amazon | LLDcoding.com | 500+ sessions on PrePlaced | 100K+ Mnth Page Views | Google Summer of Code Mentor | Top Mentor @ PrePlaced | Ex-SDE @ Hyland | TA at Relevel | GCI Mentor | Freelancer

1 年

要查看或添加评论,请登录

Saurav Saha的更多文章

社区洞察