# 2. System Design

**Important:** For front-end or mobile developers, don't spend too much time on these. You'd be better off reviewing technologies that are important to your domain.

* Review [these](https://github.com/orrsella/soft-eng-interview-prep/blob/master/topics/system-architecture.md) notes with important [examples](https://github.com/orrsella/soft-eng-interview-prep/blob/master/topics/system-architecture-examples.md).
* Listen to podcasts and watch lectures on how companies scaled their products.
* [Take this course.](https://www.hiredintech.com/courses/system-design)
* [Read this](http://highscalability.com/blog/2010/12/1/8-commonly-used-scalable-system-design-patterns.html)
* [OO Design](http://buildingskills.itmaybeahack.com/book/oodesign-java-2.1/html/blackjack/solution.html#blackjack-solution-proc)
