mybook
12

フルスタック設計ロードマップ

フロントからインフラまで、ソフトウェア設計の全体像を段階的に学ぶ学習ガイド

1
プロローグ — 設計のロードマップを手に入れる

なぜ体系的に設計を学ぶのか。未経験からエンジニアになったヒロシが、メンターのマイと出会い、フルスタック設計の旅を始める

2
Stage 1: クリーンコード — 読みやすいコードの基礎

命名、関数設計、Railsの規約を通じて、誰でも読めるコードを書く技術を学ぶ

3
Stage 2: プログラミングパラダイム — OOP・関数型・手続き型

オブジェクト指向・関数型・手続き型の3つのパラダイムを理解し、Rubyのオブジェクト指向を使いこなす

4
Stage 3: SOLID原則 — オブジェクト指向設計の5原則

Single Responsibility, Open/Closed, Liskov, Interface Segregation, Dependency Inversionの5原則をRailsで実践する

5
Stage 4: デザインパターン — GoFパターンの活用

Strategy・Observer・Factoryパターンを中心に、再利用可能な設計語彙をRailsで身につける

6
Stage 5: アーキテクチャ原則 — コンポーネント設計

凝集度・結合度・パッケージ原則を通じて、コンポーネント間の依存関係を正しく設計する

7
Stage 6: アーキテクチャスタイル — MVC・レイヤード・クリーン

MVCからクリーンアーキテクチャまで、Railsでのアーキテクチャスタイルの選択と実践を学ぶ

8
Stage 7: データベース設計 — スキーマ設計とクエリ最適化

正規化、インデックス設計、N+1問題の解決から、AWSのRDS・DynamoDB選択まで実践的に学ぶ

9
Stage 8: テスト戦略 — テストピラミッドと品質保証

テストピラミッドを理解し、RSpecを使って効果的なテスト設計とTDDのサイクルを習得する

10
Stage 9: DevOps と CI/CD — デプロイの自動化

GitHub ActionsとAWS CodePipeline、ECSを使った安全で高速なデプロイパイプラインを構築する

11
Stage 10: 分散システム — 大規模設計の入り口

CAP定理、メッセージング、耐障害性設計を通じて、大規模システムの設計思考を習得する

12
エピローグ — ロードマップの先へ

学び続けるエンジニアへ。T字型スキルの成長戦略と、ヒロシとマイが振り返るフルスタック設計の旅