月 | 目標 | 活動 | リソース |
---|---|---|---|
1年目 | 基礎 | ||
月1-2 | プログラミングの基本(Python/C ++) | - 基本的なプログラミングの概念を学習します:変数、データ型、ループ、条件。小さなコードスニペットを書くことを練習します。 | - CodecademyまたはUdacity:「Pythonへのイントロ」 -SoloLearnアプリ |
- HackerrankやLeetCodeなどのプラットフォーム(イージーレベル)で毎日コードします。 | -Hackerrank/LeetCode初心者レベルの問題 | ||
3か月目 | データ構造の紹介 | - 基本的なデータ構造を調べる:配列、リンクされたリスト、スタック、キュー。関連する問題を実践します。 | -YouTube:WilliamFisetによる「高度なコースが簡単なデータ構造」 |
- 学んだことを適用するために、ミニプロジェクト(たとえば、単純な電卓またはクイズゲーム)を構築します。 | - プロジェクトベースの学習:FreeCodecamp、DevProjects | ||
4か月目 | LinkedIn&Githubセットアップ | - 単純なバイオと画像を含むLinkedInおよびGithubプロファイルをセットアップします。 | -YouTubeのLinkedInおよびGithubチュートリアル |
-Githubに最初のプロジェクトを投稿し、LinkedInでクラスメートやコーディングピアと接続します。 | - amigoscodeによる「github&linkedinプロファイルの最適化」(YouTube) | ||
5か月目 | DSAの練習を続けます | - バイナリツリーと再帰の基本に焦点を当てた練習問題。毎週少なくとも3つの問題を解決することを目指してください。 | -Geeksforgeeks:「データ構造の基本」 |
- CodechefやLeetCodeの毎週の課題などのコーディングコミュニティに参加します。 | -CodeChefコンテストとリートコードの毎週の課題 | ||
月6-7 | HTML、CSS、JavaScriptを学びます | - Web開発の基本を学び、シンプルなレスポンシブWebページを作成します。 | - 「HTML、CSS、JavaScript for Web Developers for Web開発者向け」Johns Hopkins UniversityのCourseraの |
- 個人のポートフォリオWebサイトの構築を開始します。 | -FreeCodeCampのHTML/CSSコース | ||
8か月目 | シンプルなフルスタックプロジェクト | -Node.jsまたはdjangoの基本を学び、シンプルなCRUDアプリケーションを作成します。 | -YouTube:Traversy Mediaによる「フルスタックWeb開発コース」 |
-GithubページまたはVercelにプロジェクトを展開します。 | -VercelまたはGithubページの展開チュートリアル | ||
9か月目 | アルゴリズムの中期レビューと基本 | -LeetCodeで20〜30の完了した問題を目指して、DSAの進捗状況を確認します。 | -LeetCodeまたはHackerrankプロファイルのレビューと進捗 |
- QuickSort、MergESORT、挿入ソートなどのソーティングアルゴリズムを調査します。 | - 「初心者向けのソートアルゴリズム」YouTubeのプレイリストがTIMとTIMとのプレイリスト | ||
10か月目 | ハッカソンを探索します | - ハッカソンに出席して露出を得る(初心者向けの仮想的なものから始めます)。 | - 今後のハッカソンのためのDevPost -MLH(メジャーリーグハッキング)ウェブサイト |
- チームで迅速なプロジェクトを練習し、コラボレーションとブレーンストーミングに焦点を当てています。 | -MLH初心者ハッカソン(オブザーバーまたは貢献者として参加) | ||
11〜12か月 | DSAスキルを深める | - 高度なデータ構造を調査:ヒープ、グラフ、ハッシュマップ。 | -Educative.io:「コーディングインタビューをエース」 -Hackerrankデータ構造 |
- オンラインコーディングコンテストに参加して、速度と問題解決戦略を改善します。 | -CodeForcesコンテストとAtcoder初心者コンテスト | ||
2年目 | 中級のスキルとプロジェクト | ||
1か月目 | 競争力のあるプログラミング(CP)を開始する | - 競争力のあるプログラミングを開始し、CodeforcesとCodechefの問題を解決します。 | -YouTube:「初心者向けの競争力のあるプログラミング」エリヒトのプレイリスト |
- 動的プログラミングの基本を練習します(単純なDPの問題から始めます)。 | - 「ダイナミックプログラミング - 初心者向けガイド」Aditya Bhargava(ミディアム記事) | ||
月2日 | データ構造とシステム設計 | - スケーラビリティ、REST APIの基本を研究し、基本的なREST APIを構築します。 | - FreeCodecamp(YouTube)による「REST APIを学ぶ」 |
-RestAPIに関連するGitHubでオープンソースプロジェクトを探索します。 | - 初心者向けのレポスのフィルターを使用したGitHub検索 -Gitlabのオープンソースリスト | ||
3か月目 | フルスタックプロジェクトを構築します | - ReactおよびExpress.js(またはDjango)を使用して、ソーシャルメディアクローンまたはブログプラットフォームを構築します。 | - YouTubeでの反応およびエクスプレスチュートリアル(Traversy Media) |
- Herokuのようなプラットフォームに展開します。 | - 「HerokuへのReactアプリの展開」(公式Herokuガイド) | ||
4か月目 | LinkedInと履歴書を強化します | -LinkedInおよびGitHubプロファイルをフルスタックプロジェクトで更新し、使用する技術スタックの詳細を説明します。 | - LinkedIn Learning:「印象的なLinkedInプロファイルの構築」 |
- 目的の分野の専門家とつながり、プロフィールに関するフィードバックを取得します。 | -YouTube:「LinkedInネットワークを成長させる方法」 | ||
5か月目 | ハッカソンの準備 | - ハッカソンへの参加を開始し、チームの実世界の問題に取り組みます。 | -Hackathonリスト用のDevPost -MLH(メジャーリーグハッキング)高度な課題 |
- 迅速なプロトタイピング、UI/UXの基本、およびプロジェクトのピッチングのアイデアに焦点を当てます。 | - CourseraのIDEOによる「デザイン思考」 | ||
月6-7 | インターンシップ検索 | -LinkedInおよびInternshalaのようなジョブポータルでインターンシップを申請します。 | - インターンシャラ、LinkedInジョブ、およびインターンシップのAngellist |
- 特定の役割を履行し、GitHubを使用してプロジェクトを紹介します。 | - Tech Resumeハンドブックによる「テクノロジーの履歴書の書き方」 | ||
8か月目 | DSA Advanced&Mockインタビュー | - 高度なアルゴリズムの研究:グラフ、動的プログラミング、および模擬インタビューを練習します。 | - リートコードとプランプ(模擬インタビュープラットフォーム) |
- 自信を築くために、友人やオンラインとの1-2の模擬インタビューを行います。 | - 模擬技術インタビューのためのプランプ | ||
9か月目 | 現実世界のプロジェクトを構築および展開します | - タスクマネージャーのように、ユーザー認証とデータベース統合を備えたアプリを構築します。 | -YouTube:FreeCodecampによる「フルスタックMernアプリを構築する」 |
- 展開プロセスの経験のために、VercelまたはDigitalOceanに展開します。 | -DigitalOcean展開ガイド | ||
10か月目 | オープンソースを探索します | - 特にハックトーバーフェスト中に、オープンソースプロジェクトに貢献します。 | -DigitalOceanによるHacktoberFest -Githubオープンソースガイド |
-GitとGithubを使用して、バージョン制御とコラボレーションを行います。 | - YouTubeのTraversy Mediaによる「Git and Github Crash Course」 | ||
11〜12か月 | 競争力のあるプログラミングとDSAの改良 | - LeetCodeなどのプラットフォームで一貫して中程度の質問を解決することを目指します。 | -LeetCode Medium&Hard Problem Sets |
- 問題解決速度と精度の向上に焦点を当てます。 | -CodechefおよびCodeForces Advanced Contess | ||
3年目 | 高度なスキルとインターンシップ | ||
1か月目 | システム設計と高度なフルスタック開発 | - ロードバランシング、キャッシュ、マイクロサービスなどの高度なシステム設計コンセプトを調査します。 | - GithubのDonne Martinによる「システム設計プライマー」 |
- パフォーマンスとスケーラビリティに焦点を当て、これらのスキルを紹介するプロジェクトを構築します。 | - Udemyの「スケーラブルなWebアーキテクチャ」コース | ||
月2日 | インターンシップとインタビューの準備 | - 競争力のあるインターンシップを申請し、システムの設計とアルゴリズムに焦点を当てたインタビューの準備をします。 | - 求人用のGlassdoorおよびInternshala |
- モックインタビューを練習し、行動の質問に備えます。 | -inteverting.ioおよびleetcodeインタビューの準備 | ||
3か月目 | 高度なデータ構造(試行、セグメントツリー) | - インタビューに焦点を当てた複雑なデータ構造とアルゴリズムの理解を深めます。 | - YouTubeのMIT OpenCoursewareによる「高度なデータ構造」 |
- エッジケースで質問を処理し、ソリューションを最適化します。 | -Hackerrank高度な問題セット | ||
4か月目 | ネットワーキングとブランドビルディング | - 業界のウェビナー、ミートアップのコーディング、および専門家とのネットワークに参加します。 | -Meetup.com技術イベント、LinkedInイベント |
5-12か月 | 専門化とプロジェクト | - 関心に基づいて、AI、データサイエンス、サイバーセキュリティなどの分野での専門プロジェクトに取り組みます。 | - 高度なトピックのためのCoursera/EDXのコース - データサイエンスプロジェクトのKaggle |
- プロジェクト、インターンシップ、現実世界の経験で、バランスのとれたポートフォリオを最終決定することに焦点を当てます。 | -Githubポートフォリオ、LinkedInプロファイルの改善 |