程序员能力矩阵

简介:

注意:每个层次的知识都是渐增的,位于层次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,如需转载请自行联系原作者。



目录
相关文章
|
关系型数据库 MySQL 数据安全/隐私保护
MySQL8.0生产环境二进制标准安装
MySQL8.0生产环境二进制标准安装
|
10月前
|
SQL 数据管理 API
【产品升级】Dataphin V5.2 全新上线:四大能力升级,数据管理更统一、更智能!
Dataphin是阿里巴巴推出的数据建设与治理平台,提供全链路数据服务,助力企业构建标准化数据资产体系。V5.2版本新增“数据资产一站式运营平台”,引入X-数据管家、X-ETL等智能应用,提升数据运营效率。开发平台全面升级,支持多云复杂环境,强化API行级权限管控,保障数据安全。新版还适配国际化多时区场景,助力企业高效协同,释放数据价值。
638 9
|
11月前
|
存储 缓存 人工智能
好奇心之旅:Cursor代码库索引机制的学习笔记
本文介绍了Cursor等AI编程工具中codebase indexing的技术原理,包括Merkle Tree与向量数据库的应用,以及开源方案Continue的启发。作者通过探索这些工具背后的机制,提升了对AI编程和代码索引技术的理解,也为进一步学习提供了思路。
好奇心之旅:Cursor代码库索引机制的学习笔记
|
6月前
|
存储 人工智能 安全
AICoding实践:从Prd到代码生成
本文探讨了在AI技术推动软件工程范式变革的新阶段,如何通过构建增强型AI编程系统(codefuse)实现从需求到代码的端到端自动生成。
2231 21
AICoding实践:从Prd到代码生成
|
人工智能 IDE 程序员
一文梳理我们是如何打造出国内领先的 AI 编程助手「通义灵码」
大语言模型的革命性突破使智能编程成为了可能,通义灵码正是基于通义大模型打造的 AI 编程助手,通过 IDE 插件的形式提供代码补全、单元测试生成等功能,能达到毫秒级的响应速度。目前,通义灵码已在阿里云内部及多家企业中应用,阿里云也在探索多智能体产品,即 AI 程序员,助力数字世界的蓬勃发展,颠覆 IT 生产力。
16472 250
|
存储 监控 安全
带你读《Apache Doris 案例集》——07查询平均提速700% ,奇安信基于 Apache Doris 升级日志安全分析系统(1)
带你读《Apache Doris 案例集》——07查询平均提速700% ,奇安信基于 Apache Doris 升级日志安全分析系统(1)
806 1
|
安全 Java 编译器
深入理解Java中synchronized三种使用方式:助您写出线程安全的代码
`synchronized` 是 Java 中的关键字,用于实现线程同步,确保多个线程互斥访问共享资源。它通过内置的监视器锁机制,防止多个线程同时执行被 `synchronized` 修饰的方法或代码块。`synchronized` 可以修饰非静态方法、静态方法和代码块,分别锁定实例对象、类对象或指定的对象。其底层原理基于 JVM 的指令和对象的监视器,JDK 1.6 后引入了偏向锁、轻量级锁等优化措施,提高了性能。
830 3
|
安全 网络协议 应用服务中间件
内网ip申请SSL证书实现https访问
内网IP地址虽不能直接申请公网SSL证书,但可通过IP SSL证书保障数据安全。流程包括:确定固定内网IP,选择支持内网IP的CA,注册申请证书,生成CSR,验证IP所有权,下载部署证书至Web服务器,测试HTTPS访问,确保配置正确及证书有效。此方法适用于内网环境,提升数据传输安全性。
内网ip申请SSL证书实现https访问
|
自然语言处理 知识图谱
|
SQL 关系型数据库 数据库连接
ClickHouse(20)ClickHouse集成PostgreSQL表引擎详细解析
ClickHouse的PostgreSQL引擎允许直接查询和插入远程PostgreSQL服务器的数据。`CREATE TABLE`语句示例展示了如何定义这样的表,包括服务器信息和权限。查询在只读事务中执行,简单筛选在PostgreSQL端处理,复杂操作在ClickHouse端完成。`INSERT`通过`COPY`命令在PostgreSQL事务中进行。注意,数组类型的处理和Nullable列的行为。示例展示了如何从PostgreSQL到ClickHouse同步数据。一系列的文章详细解释了ClickHouse的各种特性和表引擎。
766 0