观点:初级、中级和高级开发人员之间的差异
极客时间编辑部
讲述:子阳大小:2.08M时长:04:32
区分初级、中级或高级开发人员,并不仅仅跟多少年的编程经验相关。初级开发人员甚至比高级开发人员年龄更大,一切都取决于技能。不过,这并不意味着高级开发人员必须是所有方面的专家,但可以肯定地说,高级开发人员要比初级、中级开发人员熟练得多。
日前,后端开发者 Daan 讲述了初级、中级和高级开发人员之间的区别,以下为他的观点。
首先在知识层面,高级开发人员比初级、中级开发人员掌握更多的知识,更了解设计模式、架构、自动化测试、性能、安全性等,这是初级开发人员缩小与中级、高级开发人员之间的知识差距的好方法。
其次在编程层面,不管怎样,代码最终都被编译并转为一连串的 0 和 1。代码必须对将来使用它的其他开发人员有意义。一个以前从未见过该代码的新团队应该能够阅读该代码并开始研究新功能或进行 bug 修复。所以,代码的易懂程度也是初级和高级开发人员之间的巨大差异所在。
在这一比较中,我将把中级开发人员排除在外,因为,在编程技能方面,中级开发人员介于初级和高级开发人员之间,处于一个灰色地带,取决于他的经验。
如何识别初级开发人员呢?
初级开发人员缺乏经验,他们的心态通常是能让代码工作就万事大吉了。编写简单的代码其实是一件很困难的事情,这恰恰就是初级开发人员不擅长的。初级开发人员倾向编写花哨的代码。你可以通过古怪的、复杂的、抽象的代码来识别出初级开发人员。另外,初级开发人员只专注于代码的计算机方面,而忽视了人性方面。
那么,高级开发人员呢?
高级开发人员在编程时拥有的最大品质之一是遵循 KISS(Keep it Simple and Stupid) 原则:保持简洁,愚蠢。他们编写的代码会考虑到可维护性和可扩展性。高级开发人员考虑的是必须与代码打交道的人,而初级开发人员只是考虑如何让代码在计算机上工作。
除了编程技能外,还有一些其他因素可以告诉你谁是哪种类型的开发人员。一般来说,初级开发人员执行最简单的任务或影响较小的任务。他们不参与任何架构设计。中级开发人员也不负责设计解决方案,他们只是执行任务。与初级开发人员的不同之处在于,只要分配给他们相对常规的任务,他们就会执行这些任务,无需过多的监督。而高级开发人员则完全可以自己开发应用程序。
此外,高级开发人员知道如何提出正确的问题,以及如何处理这些问题。当涉及到相对常规的任务时,中级开发人员可以提出正确的问题,但在更复杂的任务上就力有未逮,需要高级开发人员的帮助了。
开发人员都想提高自己,变得更好。那么有哪些方法可以晋升到下一个层次呢?
首先来看从初级开发人员到中级开发人员。由于初级开发人员缺乏经验,所以至少要经历几次整个开发周期,在陷阱中找到避免问题的方法。还有学习如何编写简单的代码,想想下一个将要处理这段代码的人。还应该学习如何调试,以便更好地理解这一过程中发生的事情。
此外,还应该熟悉最佳实践,并了解架构、性能、安全性等。缩小到达中级水平所需的知识差距。
再来看从中级开发人员到高级开发人员的晋升。这可能会相当困难。有些开发人员在整个职业生涯中,始终处于中级水平。
高级开发人员知道什么可以走捷径,什么永远不可以走捷径。这些都是从过去所犯的错误中汲取的教训。高级开发人员的工作还包括帮助经验较少的开发人员,相当于后备力量。
另外,成为高级开发人员可不仅仅是编程技能,还要了解你所在公司中使用的所有工具和应用程序。
以上就是今天的内容。“任何傻瓜都可以写出计算机能理解的代码,而优秀程序员可以写出人能读懂的代码(Any fool can write code that a computer can understand. Good programmers write code that humans can understand.)”。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(2)
- 最新
- 精选
- 悟初级:让计算机读懂 中级:让计算机读懂 高级:让人和计算机都能读懂3
- 长期规划我认为是问题的复杂度,效率,质量,考虑问题的全面性,勇于担当,追求一流1
收起评论