|
@@ -48,9 +48,9 @@ Additional topics for interview prep:
|
|
|
|
|
|
The provided [Anki flashcard decks](https://apps.ankiweb.net/) use spaced repetition to help you retain key system design concepts.
|
|
|
|
|
|
-* [System design deck](https://github.com/donnemartin/system-design-primer/blob/master/resources/flash_cards/System%20Design.apkg)
|
|
|
-* [System design exercises deck](https://github.com/donnemartin/system-design-primer/blob/master/resources/flash_cards/System%20Design%20Exercises.apkg)
|
|
|
-* [Object oriented design exercises deck](https://github.com/donnemartin/system-design-primer/blob/master/resources/flash_cards/OO%20Design.apkg)
|
|
|
+* [System design deck](resources/flash_cards/System%20Design.apkg)
|
|
|
+* [System design exercises deck](resources/flash_cards/System%20Design%20Exercises.apkg)
|
|
|
+* [Object oriented design exercises deck](resources/flash_cards/OO%20Design.apkg)
|
|
|
|
|
|
Great for use while on-the-go.
|
|
|
|
|
@@ -66,7 +66,7 @@ Feel free to submit pull requests to help:
|
|
|
|
|
|
Content that needs some polishing is placed [under development](#under-development).
|
|
|
|
|
|
-Review the [Contributing Guidelines](https://github.com/donnemartin/system-design-primer/blob/master/CONTRIBUTING.md).
|
|
|
+Review the [Contributing Guidelines](CONTRIBUTING.md).
|
|
|
|
|
|
## Index of system design topics
|
|
|
|
|
@@ -226,10 +226,10 @@ Outline a high level design with all important components.
|
|
|
|
|
|
### Step 3: Design core components
|
|
|
|
|
|
-Dive into details for each core component. For example, if you were asked to [design a url shortening service](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/pastebin/README.md), discuss:
|
|
|
+Dive into details for each core component. For example, if you were asked to [design a url shortening service](solutions/system_design/pastebin/README.md), discuss:
|
|
|
|
|
|
* Generating and storing a hash of the full url
|
|
|
- * [MD5](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/pastebin/README.md) and [Base62](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/pastebin/README.md)
|
|
|
+ * [MD5](solutions/system_design/pastebin/README.md) and [Base62](solutions/system_design/pastebin/README.md)
|
|
|
* Hash collisions
|
|
|
* SQL or NoSQL
|
|
|
* Database schema
|
|
@@ -272,61 +272,61 @@ Check out the following links to get a better idea of what to expect:
|
|
|
|
|
|
| Question | |
|
|
|
|---|---|
|
|
|
-| Design Pastebin.com (or Bit.ly) | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/pastebin/README.md) |
|
|
|
-| Design the Twitter timeline (or Facebook feed)<br/>Design Twitter search (or Facebook search) | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/twitter/README.md) |
|
|
|
-| Design a web crawler | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/web_crawler/README.md) |
|
|
|
-| Design Mint.com | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/mint/README.md) |
|
|
|
-| Design the data structures for a social network | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/social_graph/README.md) |
|
|
|
-| Design a key-value store for a search engine | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/query_cache/README.md) |
|
|
|
-| Design Amazon's sales ranking by category feature | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/sales_rank/README.md) |
|
|
|
-| Design a system that scales to millions of users on AWS | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/scaling_aws/README.md) |
|
|
|
+| Design Pastebin.com (or Bit.ly) | [Solution](solutions/system_design/pastebin/README.md) |
|
|
|
+| Design the Twitter timeline (or Facebook feed)<br/>Design Twitter search (or Facebook search) | [Solution](solutions/system_design/twitter/README.md) |
|
|
|
+| Design a web crawler | [Solution](solutions/system_design/web_crawler/README.md) |
|
|
|
+| Design Mint.com | [Solution](solutions/system_design/mint/README.md) |
|
|
|
+| Design the data structures for a social network | [Solution](solutions/system_design/social_graph/README.md) |
|
|
|
+| Design a key-value store for a search engine | [Solution](solutions/system_design/query_cache/README.md) |
|
|
|
+| Design Amazon's sales ranking by category feature | [Solution](solutions/system_design/sales_rank/README.md) |
|
|
|
+| Design a system that scales to millions of users on AWS | [Solution](solutions/system_design/scaling_aws/README.md) |
|
|
|
| Add a system design question | [Contribute](#contributing) |
|
|
|
|
|
|
### Design Pastebin.com (or Bit.ly)
|
|
|
|
|
|
-[View exercise and solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/pastebin/README.md)
|
|
|
+[View exercise and solution](solutions/system_design/pastebin/README.md)
|
|
|
|
|
|

|
|
|
|
|
|
### Design the Twitter timeline and search (or Facebook feed and search)
|
|
|
|
|
|
-[View exercise and solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/twitter/README.md)
|
|
|
+[View exercise and solution](solutions/system_design/twitter/README.md)
|
|
|
|
|
|

|
|
|
|
|
|
### Design a web crawler
|
|
|
|
|
|
-[View exercise and solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/web_crawler/README.md)
|
|
|
+[View exercise and solution](solutions/system_design/web_crawler/README.md)
|
|
|
|
|
|

|
|
|
|
|
|
### Design Mint.com
|
|
|
|
|
|
-[View exercise and solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/mint/README.md)
|
|
|
+[View exercise and solution](solutions/system_design/mint/README.md)
|
|
|
|
|
|

|
|
|
|
|
|
### Design the data structures for a social network
|
|
|
|
|
|
-[View exercise and solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/social_graph/README.md)
|
|
|
+[View exercise and solution](solutions/system_design/social_graph/README.md)
|
|
|
|
|
|

|
|
|
|
|
|
### Design a key-value store for a search engine
|
|
|
|
|
|
-[View exercise and solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/query_cache/README.md)
|
|
|
+[View exercise and solution](solutions/system_design/query_cache/README.md)
|
|
|
|
|
|

|
|
|
|
|
|
### Design Amazon's sales ranking by category feature
|
|
|
|
|
|
-[View exercise and solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/sales_rank/README.md)
|
|
|
+[View exercise and solution](solutions/system_design/sales_rank/README.md)
|
|
|
|
|
|

|
|
|
|
|
|
### Design a system that scales to millions of users on AWS
|
|
|
|
|
|
-[View exercise and solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/scaling_aws/README.md)
|
|
|
+[View exercise and solution](solutions/system_design/scaling_aws/README.md)
|
|
|
|
|
|

|
|
|
|
|
@@ -340,12 +340,12 @@ Check out the following links to get a better idea of what to expect:
|
|
|
|
|
|
| Question | |
|
|
|
|---|---|
|
|
|
-| Design a hash map | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/hash_table/hash_map.ipynb) |
|
|
|
-| Design a least recently used cache | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/lru_cache/lru_cache.ipynb) |
|
|
|
-| Design a call center | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/call_center/call_center.ipynb) |
|
|
|
-| Design a deck of cards | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/deck_of_cards/deck_of_cards.ipynb) |
|
|
|
-| Design a parking lot | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/parking_lot/parking_lot.ipynb) |
|
|
|
-| Design a chat server | [Solution](https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/online_chat/online_chat.ipynb) |
|
|
|
+| Design a hash map | [Solution](solutions/object_oriented_design/hash_table/hash_map.ipynb) |
|
|
|
+| Design a least recently used cache | [Solution](solutions/object_oriented_design/lru_cache/lru_cache.ipynb) |
|
|
|
+| Design a call center | [Solution](solutions/object_oriented_design/call_center/call_center.ipynb) |
|
|
|
+| Design a deck of cards | [Solution](solutions/object_oriented_design/deck_of_cards/deck_of_cards.ipynb) |
|
|
|
+| Design a parking lot | [Solution](solutions/object_oriented_design/parking_lot/parking_lot.ipynb) |
|
|
|
+| Design a chat server | [Solution](solutions/object_oriented_design/online_chat/online_chat.ipynb) |
|
|
|
| Design a circular array | [Contribute](#contributing) |
|
|
|
| Add an object-oriented design question | [Contribute](#contributing) |
|
|
|
|