月 | 目标 | 活动 | 资源 |
---|---|---|---|
1年 | 基础 | ||
1-2个月 | 编程基础知识(Python/C ++) | - 学习基本的编程概念:变量,数据类型,循环,条件。练习编写小型代码片段。 | - 编码器或udacity:“ python的介绍” - SoloLearn应用程序 |
- 每天在诸如hackerrank或Leetcode之类的平台上代码(易于级别)。 | -Hackerrank/Leetcode初学者级问题 | ||
第3个月 | 数据结构简介 | - 研究基本数据结构:阵列,链接列表,堆栈和队列。实践相关问题。 | - YouTube:William Fiset的“数据结构易于高级课程” |
- 构建迷你项目(例如,简单的计算器或测验游戏)以应用您所学的内容。 | - 基于项目的学习:freecodecamp,devprojects | ||
第4个月 | LinkedIn和GitHub设置 | - 设置LinkedIn和GitHub配置文件,包括简单的生物和图片。 | - YouTube上的LinkedIn和GitHub教程 |
- 将您的第一个项目发布在GitHub上,并与LinkedIn上的同学和编码对等相连。 | - Amigoscode(YouTube)的“ GitHub&LinkedIn配置文件优化” | ||
第5个月 | 继续DSA练习 | - 练习专注于二元树和递归基础知识的问题。旨在每周解决至少3个问题。 | -Geeksforgeeks:“数据结构基础知识” |
- 参与编码社区,例如Codechef或Leetcode的每周挑战。 | -Codechef比赛和Leetcode每周挑战 | ||
第6-7个月 | 学习HTML,CSS,JavaScript | - 了解Web开发的基础知识,创建简单的响应网页。 | - 约翰·霍普金斯大学(Johns Hopkins University)在Coursera上的“ HTML,CSS,JavaScript” |
- 开始建立个人投资组合网站。 | -FreecodeCamp的HTML/CSS课程 | ||
第8个月 | 简单的全栈项目 | - 了解Node.js或Django的基础知识,并创建一个简单的CRUD应用程序。 | - YouTube:Traversy Media的“完整堆栈Web开发课程” |
- 将项目部署在GitHub页面或Vercel上。 | - Vercel或GitHub页面部署教程 | ||
第9个月 | 年中评论和算法的基础知识 | - 审查DSA的进度,旨在在Leetcode上解决20-30个完成的问题。 | - Leetcode或Hackerrank个人资料审查和进度 |
- 研究分类算法,如QuickSort,Mergesort和插入排序。 | - 与Tim的Tech上的YouTube上的“为初学者分类算法”播放列表 | ||
第10个月 | 探索黑客马拉松 | - 参加黑客马拉松以获得曝光(从初学者友好的虚拟曝光开始)。 | - 即将到来的黑客马拉松的DevPost -MLH(大联盟黑客)网站 |
- 练习在团队中构建快速项目,专注于协作和集思广益。 | -MLH初学者黑客马拉松(以观察者或贡献者的身份加入) | ||
11-12月 | 加深DSA技能 | - 研究高级数据结构:堆,图,哈希地图。 | - 教育。io:“ ACE编码访谈” -Hackerrank数据结构 |
- 参加在线编码竞赛,以提高速度和解决问题的策略。 | - CodeForces竞赛和ATCODER初学者竞赛 | ||
第二年 | 中级技能和项目 | ||
1个月 | 开始竞争性编程(CP) | - 开始竞争性编程,解决CodeForces和CodeChef上的问题。 | - YouTube:Errichto的播放列表的“竞争性编程” |
- 练习动态编程基础知识(从简单的DP问题开始)。 | - Aditya Bhargava的“动态编程 - 初学者指南”(中文) | ||
第2个月 | 数据结构和系统设计 | - 研究可伸缩性,REST API基础知识并构建基本的REST API。 | - FreeCodeCamp(YouTube)的“学习REST API” |
- 探索与REST API相关的GITHUB上的开源项目。 | -Github搜索使用过滤器for初学者友好的存储库 -Gitlab的开源列表 | ||
第3个月 | 建立一个全栈项目 | - 使用React and Express.js(或Django)构建社交媒体克隆或博客平台。 | - 在YouTube上进行反应并表达教程(Traversy Media) |
- 部署在像Heroku这样的平台上。 | - “将React应用程序部署到Heroku”(Heroku官方指南) | ||
第4个月 | 增强LinkedIn和简历 | - 通过您的全栈项目更新LinkedIn和GitHub配置文件,详细介绍了所使用的技术堆栈。 | - LinkedIn学习:“建立令人印象深刻的LinkedIn个人资料” |
- 与所需领域的专业人员联系,并在个人资料中获得反馈。 | - YouTube:有影响力的U | ||
第5个月 | 黑客准备 | - 开始参加黑客马拉松并从事团队中的现实世界问题。 | - 黑客马拉松列表的DevPost -MLH(大联盟黑客)提前挑战 |
- 专注于快速原型制作,UI/UX基础知识和推销项目思想。 | - IDEO在Coursera上的“设计思维” | ||
第6-7个月 | 实习搜索 | - 在LinkedIn和InternShala等工作门户网站上申请实习。 | - 实习生,LinkedIn Jobs和Angellist实习 |
- 量身定制履历,用于特定角色,并使用github展示项目。 | - 技术简历手册的“如何为技术撰写简历” | ||
第8个月 | DSA高级和模拟面试 | - 研究高级算法:图形,动态编程和练习模拟访谈。 | - leetcode and pramp(模拟面试平台) |
- 与朋友或在线进行1-2个模拟访谈以建立信心。 | - 用于模拟技术访谈的PRAMP | ||
第9个月 | 建立和部署一个现实世界项目 | - 像任务管理器一样构建具有用户身份验证和数据库集成的应用程序。 | - YouTube:FreeCodeCamp的“构建完整的堆栈Mern应用程序” |
- 在Vercel或Digitalocean上部署以获得部署流程的经验。 | - Digitalocean部署指南 | ||
第10个月 | 探索开源 | - 为开源项目做出贡献,尤其是在Hacktoberfest期间。 | - hacktoberfest by Digitalocean -Github开源指南 |
- 使用git和github进行版本控制和协作。 | - YouTube上的Traversy Media通过Traversy Media的“ Git和Gitub速成课程” | ||
11-12月 | 竞争性编程和完善DSA | - 旨在在诸如LeetCode之类的平台上始终如一地解决中等问题。 | - leetcode中和硬问题集 |
- 专注于提高解决问题的速度和准确性。 | -Codechef和Codeforces高级比赛 | ||
第三年 | 高级技能和实习 | ||
1个月 | 系统设计与高级全栈开发 | - 研究高级系统设计概念,例如负载平衡,缓存和微服务。 | - Donne Martin在Github上的“系统设计底漆” |
- 建立一个展示这些技能的项目,专注于性能和可扩展性。 | - “可扩展的网络架构”课程 | ||
第2个月 | 实习和面试准备 | - 申请竞争性实习,并准备以系统设计和算法为重点的访谈。 | -Glassdoor和Internshala用于工作申请 |
- 练习模拟面试并为行为问题做准备。 | - 访谈。oio和Leetcode面试准备 | ||
第3个月 | 高级数据结构(尝试,细分树) | - 加深对复杂数据结构和算法的了解,重点是访谈。 | - MIT OpenCourseware在YouTube上的“高级数据结构” |
- 处理边缘案例并优化解决方案的问题。 | -Hackerrank高级问题集 | ||
第4个月 | 网络和品牌建设 | - 参加行业网络研讨会,编码聚会以及与专业人员的网络。 | -Metup.com进行技术活动,LinkedIn活动 |
5-12月 | 专业和项目 | - 基于兴趣的AI,数据科学或网络安全等领域的专业项目。 | - 高级主题的Coursera/EDX课程 - 数据科学项目的Kaggle |
- 专注于通过项目,实习和现实世界的经验完成全面的投资组合。 | -Github投资组合,LinkedIn个人资料改进 |