background image

程序员

10 大境界

自西方文艺复兴以来,中国在自然科学方面落后西方很多,软件领域也不例外。
当然现在中国的许多程序员们对此可能有许多不同的意见,有些人认为中国的
程序员水平远落后于西方,有些则认为中国的程序员个人能力并不比西方的程
序员差,只是整个软件产业落后而已。

那么,到底中国的程序员水平比西方程序员水平差,还是中国有许多优秀的程
序员达到或超过了西方程序员同等水平呢?要解决这个问题,必须先知道程序
员有多少种技术层级,每个层级需要什么样的技术水平,然后再比较中国和西

 

方在各个技术层级的人数,就可以知道到底有没有差距,差距有多大。

当然,对于如何划分程序员的技术层级,不同公司或不同人会有不同的划分标

 

准,下面的划分仅代表个人的观点,如有不当之处,还请砸板砖予以纠正。

1

 

 

层 菜鸟

1 层楼属于地板层,迈进这层楼的门槛是很低的。基本上懂计算机的基本操

作,了解计算机专业的一些基础知识,掌握一门基本的编程语言如

C/C++,

或者

Java,或者 JavaScript,...

 

,均可入门迈进这层。

在这层上,中国有着绝对的优势,除了从计算机专业毕业的众多人数外,还有
大量的通信、自动化、数学等相关专业的人士进入这一行,此外还有众多的其
他专业转行的人士,人数绝对比西方多出甚多。并且还有一个优势就是我们这
层人员的平均智商比西方肯定高。
没有多少人愿意一辈子做菜鸟,因为做

"菜鸟"的滋味实在是不咋的,整天被老

大们吆喝着去装装机器,搭建一下测试环境,或者对照着别人写好的测试用例
做一些黑盒测试,好一点的可以被安排去写一点测试代码。当然如果运

"好"的话,碰到了国内的一些作坊式的公司,也有机会去写一些正式的代码。

 

所以,菜鸟们总是在努力学习,希望爬更高的一层楼去。

2

 

 

层 大虾

从第

1 层爬到第 2 层相对容易一些,以 C/C++程序员为例,只要熟练掌握

C/C++编程语言,掌握 C 标准库和常用的各种数据结构算法,掌握 STL 的基

 

本实 现和使用方法,掌握多线程编程基础知识,掌握一种开发环境,再对各种
操作系统的

API 都去使用一下,搞网络编程的当然对 socket 编程要好好掌握

 

一下, 然后再学习一些面向对象的设计知识和设计模式等,学习一些测试、软
件工程和质量控制的基本知识,大部分人经过

2~3 年的努力,都可以爬到第 2

层,晋升为

" 大虾"