程序员的成长之路

从一个编程初学者,到一个程序开发菜鸟,再到技术高手、技术大牛、大师级人物, 必有一个成长路线。 根据自己的学习开发经历,我觉得一个程序员的成长之路可以按照如下循序渐进:

技术技能:

1.  初学编程: 找一两本优秀的编程语言书籍,按照例子敲代码。 推荐 K&R 《TCPL》 和 BE 《Thinking in java》 ,每一种主流开发语言都有一些非常优秀的入门书籍。如果国外书看得不大懂,可以先找国内编程书籍看看,一般国内书籍更注重技术和技巧,而国外书籍更注重思想和思路; 一般需要半年左右完成。

2.  内功修炼: 用所学语言,实现常用数据结构和算法, 可以习得编程的基本功底; 初步涉猎一些优秀的编程书籍,比如 BWK& BP 《程序设计实践》 ; 《Linux 程序设计》 , 《数据库开发》 等; 一般要涉及数据结构、算法、操作系统、数据库、网络等专业基础课程的学习和训练(详见《计算机专业推荐书籍》),这是成为专业程序员、编写更强大应用的必经之路; 一般需要一年左右完成。

3.  小试锋芒: 待编程功底修炼到一定阶段,就会参与项目开发。一般会从增删查改等基本功能开始练起,逐步实现更复杂的功能。 开始做时可能会有点吃力,但一定要勇于尝试。跨越每一道槛,你都会看到更广阔的世界,功力会更上一层; 一般需要三个月到半年左右能够适应项目开发,独立承担项目功能模块开发和维护任务。

4.  熟练开发: 这一阶段, 你将大量接触开发工作; 阅读已有项目的源代码,学习使用开发框架, 广泛涉猎各种编程书籍, 语言类、框架类、技术类以及思想类(详见《计算机专业推荐书籍》); 你将能基本胜任开发任务,实现功能, 对程序的质量需求有初步的了解和掌握; 一般需要一年左右来完成“原始技术积累”。

5.  突破瓶颈: 成为一名较熟练的开发人员后, 将遇到第一次真正意义上的瓶颈: 必须确定今后的技术方向。 在能够胜任日常开发工作的基础上,你希望能够提升自己的开发质量, 希望自己能够写出更加稳固可用的代码, 希望自己能够深入框架内部实现,而不是停留在使用的层面。因为使用框架会遇到比较棘手的调试问题,这也迫使你必须大量阅读优秀源代码,而不再着迷于编写那些初级的代码,更注重从系统整体角度来思考和解决问题,以实现真正的飞跃性进步。 我目前即处于这一层次。

突破瓶颈后, 才会从一名编程菜鸟真正晋级为一位技术高手。 从技术高手到大师级人物的成长路线,请参考那些大牛大师级人物的生平传记。

突破瓶颈之法(供参考, 因我也是即将的实践者):

1.  大量阅读和重用源代码, 建立一套行之有效的源代码阅读、利用和管理方法;

2.  更注重程序和应用的质量属性,从系统设计的角度去理解和实践开发活动;

3.  探索框架的内部实现、交互及使用,跨越框架;

 职业技能:

1. 初学编程: 沉浸于编程的乐趣中,主要是习得编程技能,与同学进行编程心得的交流; 一般不涉及很强的沟通; 此阶段主要注重编程技能的修炼;

2. 内功修炼: 主要也是习得基本的编程技能, 交流编程心得,需要参与程序文档的阅读和编写; 在此阶段, 最好能够同步提升英语阅读能力、技术交流、基础的文档编写能力; 有兴趣的话,可以邀请同伴一起来做一些小项目; 此阶段注重编程技能的提高、技术交流能力、英文阅读能力和文档编写能力;

3. 小试锋芒: 习得更高级的编程技能(使用开发框架),与项目组成员进行讨论和沟通,表达自己的意见,编写程序文档, 浏览知名的IT网站和官方文档, 学会用搜索来解决编程问题;此阶段注重编程技术的学习、项目组交流能力、表达能力以及网络资源利用能力;

4. 熟练开发: 学习特定领域的编程技术, 阅读和探索源代码,项目讨论与决策,开发与维护, 学习软件开发工具的使用; 编写程序文档, 可能的话,会涉及到与客户的谈话、沟通与系统演示工作; 此阶段注重软件开发活动的广泛学习和掌握;

5. 独立担当: 能够独立承担项目模块开发与维护, 与项目组成员顺利沟通, 形成自己的独特见解; 具备一定的开发管理能力; 此阶段注重独立承担能力、较强的问题解决能力、沟通能力、表达能力以及一定的领导能力。

我目前处于从熟练开发到独立担当之间的层级。 更高级别的成长路线,请参考那些大牛大师级人物的生平传记。

每个人的成长路线都不同,但一个优秀程序员的成长必定离不开良师益友。 有一些好伙伴可以一起编程、交流和成长, 有一到若干位好的导师、在人生路上给予很好的指引,遇到好的老板的指点和提携, 都是非常幸运的事情, 当然,也是可以去努力争取的事情。保持平静谦和,忌心高气傲, 上帝会给予你最好的礼物。

时间: 2024-08-10 11:53:37

程序员的成长之路的相关文章

菜鸟程序员的成长之路(三)——2014,逝去的半年,奋斗的半年

从3月份到现在,仅仅半年的时间让我扮演了两个完全不同的角色,从在校生一下变成了毕业生,作为毕业生不能再像在校生一样自由自在,无所顾忌,想怎样就怎样,肆无忌惮的生活,浪费时间.如果你想从容的面临未来的生活,就需要彻头彻尾的改变.多一份稳重,多一份责任,多一份担当. 鉴于LZ不太擅长写非技术博文,那就以碎碎念的形式,来回顾一下我的奋斗历程: 技术 3月份开始备战软考,软考准备了两个多月的时间,从看视频做笔记,再到大家一起讲课,复习,做试题巩固,整个过程至今历历在目.软考虽然不难,但是对于基础差的同学

菜鸟程序员的成长之路(四)——欢送2014,欢迎2015

最近半个月一直想写年终总结,却迟迟没有提笔,不是不知道写什么而是需要写的东西太多,不知从哪下笔.继菜鸟程序员的成长之路(三)--2014,逝去的半年,奋斗的半年,请大家跟我一起再重新将2014"活"一遍. 2014年对于我来说承载了满满的回忆,也是我人生中比较重要的一年,因为在这一年里发生很多重要的事:1.我毕业了:2.我考过了软件设计师了:3.我考上了在职研究生... 学习篇 对于学习,其实有很多想写的内容,由于上篇博文:2014,逝去的半年,奋斗的半年,我已经写了2014上半年的总

php程序员的成长之路

第一阶段:基础阶段(基础PHP程序员) 重点:把LNMP搞熟练(核心是安装配置基本操作) 目标:能够完成基本的LNMP系统安装,简单配置维护:能够做基本的简单系统的php开发:能够在PHP中型系统中支持某个PHP功能模块的开发. 时间:完成本阶段的时间因人而异,有的成长快半年一年就过了,成长慢的两三年也有. 1.Linux 基本命令.操作.启动.基本服务配置(包括rpm安装文件,各种服务配置等):会写简单的shell脚本和awk/sed 脚本命令等. 2.Nginx 做到能够安装配置nginx+

程序员的成长之路JQuery篇

很久没写JS了,或者说自从工作以来都没怎么写过JS,最近在开发要用到JS,瞬间懵逼了. 立即去菜鸟找入门教材来看,磕磕碰碰的总算搞定了.以下是学习过程中碰到的问题以及自己的理解. 一:jquery.js和jquery.min.js的区别 从字面意思来看,jquery.min.js 是 jquery.js的迷你版本,功能都一样,只是jquery.js里面是没有进行处理的源代码,方便人们阅读与研究,而jquery.min.js是处理过的代码,在浏览器的开发者模式可以看到(F12)可以看到代码都进行过

资深大牛分享:一个合格的Java程序员如何成长为优秀的架构师

踽踽独行上下求索总是痛苦,如果有良师益友陪伴点拨必能事半功倍.从新手码农到高级架构师,要经过几步?要多努力,才能成为为人倚重的技术专家?本文将为你带来一张程序员发展路径图,但你需要知道的是,天下没有普适的道理,具体问题还需具体分析,实践才能出真知.资深大牛分享:一个合格的Java程序员如何成长为优秀的架构师如果大家如果在自学遇到困难,想找一个java的学习环境,可以加入我们的java学习圈,点击我加入吧,会节约很多时间,减少很多在学习中遇到的难题. 我认为,架构师的内功主要包含三部分:判断力.执

zz 游戏程序员的学习之路(中文版)

游戏程序员的学习之路(中文版) Milo Yip · 1 天前 感谢 @楚天阔(tkchu)编写脚本及整理中文译本数据,自动从英文版生成中文版,SVG / PDF 版本中的书籍图片现在链接至豆瓣页面. Github miloyip/game-programmer 检视/下载中文版 SVG / PDF 「真诚赞赏,手留余香」 赞赏 15 人赞赏 程序员游戏开发书籍推荐 分享 举报 977 文章被以下专栏收录 Milo的编程 进入专栏 97 条评论 写下你的评论 trycatch 这是劝退吧...

我的第一篇博文--程序员的成长

如果你是一名程序员,那么我想恭喜你,你成为了为数不多的新型人类.程序员,在我看来,它是个很棒的代名词,但是想成为真正的程序员,很不容易,真的很累的. 每天挑代码到凌晨3,4点,这不是虚的,写了改,改了重写,查代码,测代码,找bug,反反复复,像是覆水难收. 现在,我得去上课去了,培训.回来继续 我的第一篇博文--程序员的成长

论程序员的成长

<论程序员的成长> Athson | 2015-04-04 ~ 2015-04-17 原文地址: http://blog.athson.wang/?p=45   知识共享许可协议文本:简体中文版本著作由Athson.Athson Wang.鹏澍原创,以 CC 署名-非商业使用-禁止演绎 (by-nc-nd) 授权条款 执行公开许可.此作品衍生自http://blog.athson.wang/. 论程序员的成长 Athson | 2015-04-04 ~ 2015-04-17 中国程序员的个人成

云栖专辑| 阿里毕玄:程序员的成长路线

[编者按]2018年12月20日,云栖社区3周岁生日.阿里巴巴常说"晴天修屋顶",所以我们特别策划了这个专辑--分享给开发者们20个阿里故事,50本书籍.第一位是林昊(毕玄). 在这篇<程序员的成长路线>里,阿里基础设施负责人毕玄结合自己的经历跟大家讲述了他在各个角色上成长的感受.在他的职业经历中,在成长方面经历了技术能力的成长.架构能力的成长,以及现在作为一个在修炼中的技术 Leader 的成长.其中技术能力和架构能力的成长是所有程序员都很需要的,值得所有正为职业发展而迷