プログラミングスクールか自己学習かを悩んだ末

私はSES事業のSEとして1年半勤めており、最初の一年は試験工程を主に経験し、半年は要件定義から試験工程まで一通り経験いたしました。
しかし、一通り経験した案件はローコード開発ということもあり、技術力のスキルアップスピード感が遅いと感じ、自身のスキルアップを目標にスクールから自学を検討していました。


プログラミングスクールの無料相談を通して、多くの意見とカリキュラムを見てきました。
結論としてはどこのスクールに行っても自分で学習することが重要で、そこに現役エンジニアからのコーチングと転職サポートがあるかくらいだと思います。

初めは何から勉強したら効率が良いかわからないため、スクールを受けようと思いましたが無料期間で見れる教材を見てると、ネットで見たことある動画や資料で復習テストといっても一問一答が少し程度であまり役に立たなそうだなと感じたのが正直な感想です。

そこで、ChatGPTにある企業のデータサイティスト募集求人の条件をもとにカリキュラムの作成をしてもらったところ思ったよりしっかりしてるものが出力されました。
以下が実際の返答になります。

### **6ヶ月間の学習カリキュラム（参考教材付き）**  
Python学習を先にして数学を学ぶ流れで、理論と実践を並行して進めます。  
GitHubやQiitaでアウトプットしながら進めることで、ポートフォリオに活かせます。  

---

#### **1〜2ヶ月目：Pythonと数学基礎**  

##### **Week 1-4：Python基礎**  
- **目標:** Pythonを使って基本的なデータ処理ができるようになる  
- **内容:**  
  - Python基礎文法：変数、制御構文、関数、クラス  
  - データ処理：NumPy、Pandas  
  - データ可視化：Matplotlib、Seaborn  
- **教材:**  
  - 書籍：  
    - **『Pythonスタートブック』（技術評論社）** - 基本文法習得  
    - **『独学プログラマー Python言語の基礎から仕事のやり方まで』（オライリー）** - 実践的なコーディング  
  - オンライン講座：  
    - **Python入門 - Progate**  
    - **Python for Everybody - Coursera**  
  - 無料学習サイト：  
    - **PyQ**（基礎文法と演習）  
  - 実践：  
    - **KaggleのTitanicデータセットでデータ前処理**  
  - アウトプット：  
    - GitHubで基礎演習コードを公開  
    - Qiitaで「Python基礎入門」記事作成  

---

##### **Week 5-8：数学・統計基礎**  
- **目標:** 数学的背景を理解し、Pythonで実装できるようになる  
- **内容:**  
  - 線形代数：ベクトル、行列演算、固有値分解  
  - 微積分：微分、偏微分、勾配  
  - 統計基礎：平均、分散、標準偏差、回帰分析  
- **教材:**  
  - 書籍：  
    - **『やさしく学ぶ線形代数』（森北出版）** - ベクトルと行列の基礎  
    - **『統計学入門』（東京大学出版会）** - 基礎統計学  
    - **『ゼロから分かる微分積分』（かんき出版）** - 微積分基礎  
    - **『Pythonで学ぶ線形代数』（講談社）** - コードを使った学習  
  - 動画：  
    - **YouTube：StatQuest**（数学解説がわかりやすい）  
  - 実践：  
    - **NumPyを使った行列演算スクリプト作成**  
    - **scikit-learnで回帰モデル構築**  
  - アウトプット：  
    - GitHubで数式と実装を整理  
    - Qiitaで「線形代数とPython実装」記事投稿  

---

#### **3〜4ヶ月目：機械学習とディープラーニング基礎**  

##### **Week 9-12：機械学習基礎**  
- **目標:** 基本的なアルゴリズムを理解し実装できる  
- **内容:**  
  - 教師あり学習：線形回帰、ロジスティック回帰、SVM  
  - 教師なし学習：K-means、主成分分析（PCA）  
  - モデル評価：混同行列、ROC曲線、F値  
- **教材:**  
  - 書籍：  
    - **『Pythonではじめる機械学習』（オライリー）** - 実践的なアルゴリズム解説  
    - **『機械学習のための特徴量エンジニアリング』（オライリー）** - 前処理技術  
  - オンライン講座：  
    - **Coursera：Machine Learning by Stanford University（Andrew Ng氏）**  
  - 実践：  
    - **Kaggleでタイタニック予測モデル構築**  
  - アウトプット：  
    - GitHubにプロジェクト公開  
    - Qiitaで「回帰モデルの実装と評価」記事投稿  

---

##### **Week 13-16：ディープラーニング基礎**  
- **目標:** 基本的なディープラーニングモデルを実装できる  
- **内容:**  
  - ニューラルネットワーク：多層パーセプトロン（MLP）  
  - CNN：畳み込み操作、プーリング  
  - RNN：時系列データ処理  
- **教材:**  
  - 書籍：  
    - **『ゼロから作るDeep Learning』（オライリー）** - 理論と実装  
    - **『Deep Learning with Python』（オライリー）** - Keras活用  
  - 動画：  
    - **YouTube：DeepLearning.ai**  
  - 実践：  
    - **MNIST手書き文字認識モデルの構築**  
  - アウトプット：  
    - GitHubに実装を公開  
    - Qiitaで「CNNを使った手書き認識」記事投稿  

---

#### **5ヶ月目：画像認識・物体検出実践**  
- **目標:** 物体検出モデルを構築し、応用できる  
- **教材：**  
  - **『Deep Learning for Computer Vision with Python』（PyImageSearch）** - 画像認識入門  
  - **『OpenCV 画像処理入門』（工学社）** - OpenCVの実践  
  - **公式リファレンス：TensorFlow Object Detection API**  
  - **YOLOv5 GitHubリポジトリ** - 物体検出モデル  
- **実践:**  
  - **自作データセットで物体検出モデル学習**  
- **アウトプット:**  
  - GitHubに物体検出プロジェクト公開  
  - Qiitaでモデルチューニング方法を解説  

---

#### **6ヶ月目：デプロイ技術とポートフォリオ作成**  
- **目標:** モデルをコンテナ化してデプロイできる  
- **教材：**  
  - **『Docker/Kubernetes 実践入門』（技術評論社）**  
  - **『はじめてのUbuntuサーバー構築』（日経BP）**  
  - **Udemy：DockerとKubernetes完全ガイド**  
- **実践:**  
  - **YOLOv5モデルをDockerでコンテナ化し、AWSでデプロイ**  
- **アウトプット:**  
  - GitHubにデプロイコードを公開  
  - Qiitaで「モデルをクラウドで動かす方法」記事投稿  

---

### **補足：ポートフォリオの整備**  
- **GitHub:**  
  - 基礎学習、機械学習、物体検出、デプロイプロジェクト  
- **Qiita:**  
  - 実践解説、技術解説記事  
- **アピールポイント:**  
  - 実践プロジェクトが豊富  
  - デプロイまで含めたエンドツーエンドのスキル  

思ったよりきれいなカリキュラムになっていませんか？
ここから気になるところは随時指摘したり、参考書をもっと記載させたりすると、スクールより低コストでより実践的なスキルが学べるカリキュラムになったと感じました。

そのため、私はこれからこのカリキュラムをもとに勉強していきたいと思います。
定期的にQiitaで経過報告的な勉強内容を記載していきます。