# System Designの勉強 ## System Designを考える上で必要な要素 * Load Balancer * CDN * Proxy * Cache * Database * API * online/batch * Performance * Observability * Scale * Service Pattern * Service Mesh * etc.. 考えることが多すぎて何からやればいいかわからない。 自分の専門性を考えると、Observability、Scale、Serviice Pattern、Service Meshあたり中心。 業務で触ってみないと感じ掴めない部分も多くて、みんなどうしてるのか気になる。 ## 参考 * [GeeksforGeeks](https://www.geeksforgeeks.org/) * NetflixやUberなんかのシステムデザインについて解説されてる * 他にもデータ構造やアルゴリズムとかの解説もあり * ![Netflixのシステムデザイン](https://hackmd.io/_uploads/SkTgJHNgT.png) 参照:https://www.geeksforgeeks.org/system-design-netflix-a-complete-architecture/ * [IGotAnOffer](https://igotanoffer.com/en/interview-coaching/type/tech-interview) * tech interviewについて解説された記事が載ってる * Google, Meta, AmazonのSWEのinterview記事を見てる