程序员能力矩阵

简介:

注意:每个层次的知识都是渐增的,位于层次n,也蕴涵了你需了解所有低于层次n的知识。

计算机科学 Computer Science

 

软件工程 Software Engineering

 

 

程序设计 Programming

 

 

 

 

经验 Experience

学识 Knowledge

 

 

 

 

软件界一个无可争议的事实是,不同程序员的效率有差别,而且差别很大。许多专家将优秀程序员和一般程序员区分地很清楚。

大多数研究得出结论认为,一般程序员跟优秀程序员之间在工作效率和质量上存在10:1的关系:优秀程序员和水平较差的程序员的编码时间比例为1:20;debugging时间比为1:25;代码数量比是5:1;程序执行速度比例是10:1。而且发现,程序员的代码质量和效率跟工作经验没有关系。

让我们看看一些软件大腕们是如何看待优秀程序员和一般程序员的:

Randall E. Stross:无论是从软件标准、创造性、开发速度、还是设计思路或者解决问题的能力上来说,优秀程序员比差的程序员都何止好一点。

Bill Gates:一个优秀的机床工值一个一般机床工的好几倍,而一个优秀程序员值一个一般程序员的10000倍。

Robert C. Martin:90%的代码是由10%的程序员写出来的。

就我个人从事编程行业25年、从事过六家软件公司的经历来看,10:1这个定律千真万确。基于这一定律以及程序员工作效率的差别,程序员因此被分为五大类:

1. 大师级程序员(Visionary/Artist Programmer)

大师级程序员是软件界绝对的稀有种族,他们可以创造出99.9%的程序员所创造不出来的东西。他们发明新的应用和软件模式来驱动软件产业的发展。Napster, Netscape以及World Wide Web都是大师级程序员创造的。对他们而言,软件更多的是艺术而非科学。在这个级别,速度和质量不是最重要的,他们创造出的财富才是最重要的。许多开发团队或者公司顶多也就一个大师级程序员,通常是这个公司的技术创始人或者CTO。

2. 开拓者程序员(Trailblazer Programmer)

开拓者程序员通常带来很好的主意和趋势。他们通常是最终产品的原型创作者,他们一天做出的事情大部分程序员需要几周甚至几个月。开拓者程序员总是在尝试新工具、新技术,不断地学习和搜寻方法来提高工作效率,并通常是其他程序员的导师和老师,而且你经常会发现当其他程序员早已离开的时候他们却依然工作到深夜。尽管这样级别的程序员工资很高,但是每个成功的公司或团队还是应该配备一两个开拓者程序员。

3.骨干程序员( Workhorse Programmer)

骨干程序员是一个公司或者开发团队的脊柱,这些人尽管不是很有创新性,但往往比较高效且值得信赖。给一位骨干程序员一套模板和合适的工具,他们总能以最短的时间交出错误最少的代码。

4.机械程序员( Drone Programmer)

许多程序员就是朝九晚五地为了填塞下自己钱包的机械程序员。他们不愿意接触新技术、避免学习新事物。许多公司或者开发团队都有许多这样的机械程序员,因为他们很便宜,但岂不知更贵的程序员才真正地更便宜。

5.白痴程序员( Idiot Programmer)

林子大了什么鸟都有,软件领域也不例外。编程需要抽象和逻辑思维,然而一些尚不具备此能力者由于向往着不错的薪水而加入了该领域。白痴程序员总是对最简单的算法也搞不清楚,他们总是错过软件截止日期,终日无所获。白痴程序员最好的出路就是换行。(

 

原文http://www.indiangeek.net/wp-content/uploads/Programmer%20competency%20matrix.htm

译文http://static.icybear.net/%5BCN%5DProgrammer%20competency%20matrix.htm

摘自http://news.csdn.net/a/20100322/217537.htmlhttp://news.csdn.net/a/20090610/211855.html


本文转自茄子_2008博客园博客,原文链接:http://www.cnblogs.com/xd502djj/archive/2010/07/22/1782657.html,如需转载请自行联系原作者。



目录
相关文章
|
6月前
计算思维学习总结(一)
计算思维学习总结(一)
56 0
|
3月前
|
机器学习/深度学习 存储 人工智能
矩阵乘法运算:在这看似枯燥的数字组合中,究竟蕴含着怎样令人称奇的奥秘?
【8月更文挑战第19天】矩阵乘法不仅是数学概念,还在工程、图像处理及AI等领域发挥核心作用。例如,通过矩阵乘法可精确实现图像变换;在神经网络中,它帮助模型学习和优化以识别图像和理解语言。两个矩阵A(m×n)与B(n×p)相乘得C(m×p),其中C[i,j]为A的第i行与B的第j列元素乘积之和。尽管面临维度匹配等挑战,矩阵乘法仍在持续推动技术创新。下次享受智能服务时,不妨想想背后的矩阵乘法吧。
71 3
|
3月前
|
机器学习/深度学习 数据挖掘 数据处理
"揭秘数据处理新境界:基于维度的算术操作,如何颠覆你的数据操作思维?"
【8月更文挑战第19天】基于维度的算术操作革新了数据处理方式,尤其在面对多维数据时更为直观高效。例如,Python的NumPy库支持对多维数组执行如加法、乘法等操作,自动处理维度匹配,简化复杂计算。此方法不仅通用性强,且在科学计算、机器学习等领域应用广泛,如图像处理中的像素级运算。理解和掌握基于维度的操作对于数据科学家至关重要。
36 2
|
6月前
|
存储 安全 关系型数据库
技术人必修课:利用金字塔原理高效思考与表达
作者写这篇文章的目的就是希望能够帮助更多同学了解金字塔原理并合理应用,不只是写作,更是要着眼于思考和表达。本文将围绕认识金字塔结构、表达的逻辑、思考的逻辑、解决问题的框架、演示的逻辑这几个方面带领大家深入学习金字塔原理。
|
程序员 开发工具
衡量程序员能力最好的方式
衡量程序员能力最好的方式
118 1
|
数据库 开发工具
向量学习过程思想总结概括
向量学习过程思想总结概括
|
存储 机器学习/深度学习 人工智能
徒手体验卷积运算的全过程
最近的失业潮引起很多打工人的恐慌,特别是ChatGPT之类的生成式AI的推出,其智能程度和自主学习能力远程人们想象.加剧了大家的恐慌情绪,在裁员潮这个当口,纷纷引发各行各业的猜测--人工智能替代大部分岗位,而且有些行业甚至已经使用上了ChatGPT类的生成式AI进行替代人类的部分工作,比如前阵子传的沸沸扬扬的AI制图替代人工设计,而且相比人类设计师它还有出图快的优势.但是在于个性化的定制方面,以及情感的理解和多学科的融合方面,AI制图跟人类设计师相比目前还是有一些差距的.作为IT打工人,感受到IT行业中目前同样弥漫着这些焦虑.但是个人觉得再厉害的技术都是基于基础理论,基础技术的支撑,而且再牛的
81 1
|
存储 缓存 并行计算
如何高效实现矩阵乘?万文长字带你从CUDA初学者的角度入门(2)
如何高效实现矩阵乘?万文长字带你从CUDA初学者的角度入门
285 0
|
机器学习/深度学习 缓存 自然语言处理
如何高效实现矩阵乘?万文长字带你从CUDA初学者的角度入门
如何高效实现矩阵乘?万文长字带你从CUDA初学者的角度入门
|
存储 并行计算 异构计算
如何高效实现矩阵乘?万文长字带你从CUDA初学者的角度入门(3)
如何高效实现矩阵乘?万文长字带你从CUDA初学者的角度入门
207 0