开发者技能修炼的 5 个等级,你冲关到哪儿了?

简介:

第一阶梯:Typer,打字员

每一位开发者在正式踏上开发道路之前,都需要经过毫无编程经验的“第一阶段”。

这时他们对于程序的理解仅限于照着书本或记忆进行有规律的字符录入,甚至不清楚自己所输入的字符代表什么指令,因此每当错误出现时常常显得手足无措,怀疑软件、怀疑系统,甚至开始怀疑人生,到头来却发现只是少输入了个分号。

该阶段虽然看起来简单,但确实也是最容易将门外汉拦在开发者殿堂之外的门槛。

对于位于该层的小白而言,切记不要迷恋《30天从入门到精通》等武林秘籍,对没有入门的人来说很容易变成《两周从入门到放弃》。其实也并非没有入门捷径,找个真人师傅带进门就好了。

第二阶梯:Developer,开发工程师

作为拥有0-3年编程经验的第二层,可以正式的称呼自己为“编码菜鸟”了。

这时的他们对编程概念已经有了初步的理解,知道了变量、逻辑与函数的意义。同时也可以熟练的使用CV大法(Control+C、Control+V)来模仿前辈的案例或网络实例进行功能实现了,但也仅仅只能实现需求逻辑而已。同时因为并不理解这段代码的真实含义,所以实现的这坨代码通常让人头痛不已,是BUG的高发地。

对于位于该层的菜鸟而言,切记不要迷恋《Thinking In XX》系列的书刊,最好的修炼方式还是多阅读开源工程代码,多参与项目实践,完成一个由量到质的蜕变,从而进入下一个等级。

第三阶梯:Research&Developer(R&D) ,研发工程师

作为拥有3-5年编程经验的中间层,进入该层的“攻城狮”们已经开始被委以重任,负责攻城拔寨,调研新型武器,属于团队里面的攻坚小能手、小白与菜鸟所仰望的大牛了。

与此同时,这一层级也是所有层级里面最危险、最容易迷失的一层,其危险在于因为沉迷于舒适区与盲目自信而停滞不前,最终因精力的衰退而被小鲜肉所替代;其迷失在于仅善于解决项目中曾负责或以前接触过的某一块的问题,对于系统架构欠缺整体的意识,不具备建立一个全新系统的能力。

对位于该层的“攻城狮”们而言,切记不要沉迷于代码的表面,也不要局限于API或源码库的收集,最好的修炼方式是不断地思考与锤炼自身对最佳实践方式的理解感悟,从而为进入下一阶段打下坚实的基础。

第四阶梯:Architect,架构师

作为拥有5-8年编程经验的开发者顶层,进入该层的大师们对于某一领域的系统研究已经“摸得门清”,通常他们是使系统“拔地而起”、“耸入云霄”的设计师。

他们更喜欢形容自己为“艺术家”而不是架构师,他们即使喝上一斤“关公坊+酸梅汤”都能准确的给你画出其设计过的系统架构图、功能结构图、数据库模型,并能基于系统实际使用情况进行基于架构的系统结构优化、性能优化等。

进入此阶段的工程师已经脱离了对招式的执念,步入了对于设计与编程之道的艺术修行道路。

第五阶梯:Consultant,咨询师

咨询师是一个特殊的存在,如果说架构师是追求于设计之道与艺术之道的苦行僧,那咨询师就是这条道路上的布道家。

他们一般有着广阔的见识与丰富的实战经验,也许他并未开发过多么经典的架构,但经过短暂的观察即可指出对于当前架构的优化意见;也许他并不能写出多么高深复杂的源码,但通常可以用最简单的办法解决技术上的难题;也许它并不了解你所遇问题的业务背景与专业技术,但可以通过跨领域知识启迪你解决问题。

上文的阶梯划分出自我过往八年的工作经验,对于第四、第五阶梯,我本无意划出高下之分,怎奈文笔功力有限,只好粗断为两个部分。回顾前文,我对于开发者的阶段划分又有了新的想法,开发者在历经以上五个层级之后又该如何发展,是科学家还是哲学家?我想听听你的见解。

本文来自开源中国社区 [http://www.oschina.net]

目录
相关文章
|
3月前
|
机器学习/深度学习 SQL 数据可视化
提升个人数据技能
【8月更文挑战第7天】提升个人数据技能
43 8
|
6月前
|
安全 测试技术 物联网
系统集成项目经理中级第三章 信息系统集成专业技术知识(选择10分)
系统集成项目经理中级第三章 信息系统集成专业技术知识(选择10分)
143 1
系统集成项目经理中级第三章 信息系统集成专业技术知识(选择10分)
|
6月前
|
前端开发 JavaScript Java
初级全栈开发人员必须具备哪些技能?✅👩‍💻
在 Curricular,我和我的团队花了很多时间研究、审查和推荐学习开发技能的最佳方法。您可以在course.dev上查看我们的学习指南 作为我们研究的一部分,我们决定编制一份作为全栈开发人员专业工作所需的技能领域列表,这些技能领域大多独立于框架或工具。这是我们上一篇关于前端开发人员所需技能的文章的续篇。 现在我想听听您的反馈。
SFIA-技能和能力框架
SFIA-技能和能力框架
|
设计模式 Rust 架构师
软件开发人员必须阅读的20本书(一)
软件开发人员必须阅读的20本书(一)
154 1
|
设计模式 机器学习/深度学习 算法
软件开发人员必须阅读的20本书(二)
软件开发人员必须阅读的20本书(二)
141 0
|
Python
保姆级别指导开发UI应用【实战指导建议收藏】
正式的Python专栏第7篇,同学站住,别错过这个从0开始的文章!
220 0
保姆级别指导开发UI应用【实战指导建议收藏】
|
JavaScript 前端开发 物联网
13个开发者技能必知必会!
本文翻译自dZone,英文原文链接:https://dzone.com/articles/the-13-developer-skills-that-will-get-you-hired 为了找到今年最受欢迎的开发者技能,原作者接触了一系列HR、CTO、CEO及其他管理人员,他们提供了面试中的一些必须技能,战略考虑和所需掌握的软技能。
1289 0
高级开发全面技能要求
“原创精选,转载注明出处,三克油” image.png
603 0
下一篇
无影云桌面