我招不到想要的程序员

jopen 8年前
 

“不要误会,我不是针对个人,我是说在座的都是垃圾”

每次打开HR邮箱看到应聘开发的简历时,脑子里浮现都是这句话。我不需要招大牛,我只是想招一名合格的程序员。

在很多人的眼里,程序员既然属于工科,那他就是靠掌握一门技术吃饭的人,就像学校门口修自行车的老师傅一样,只要学会基本的自行车构造,和常见问题的解决方案,就能靠这门手艺谋生,再加上嘴巴甜一点少点歪心思做人厚道点基本能垄断附近几条街的市场。

但实际上,程序员更像是设计行业从业者,不是每个能熟练使用PS的美工都能称之为设计师。同样的一个LOGO设计,有些人只能收500,有些人能收50万,更有些人免费做的别人也不要。

说说我选择程序员的标准

1.非极端情况,一本以下的不要

2.有编程素养,具备程序思维

3.了解这个行业文化和最近两年技术发展趋势

4.至少掌握一门编程语言

就这4点,不要求项目经验,不要求掌握特定语言,这4条刷掉了HR邮箱的所有简历,让我一度深刻意识到以我公司的水平想招到这样的程序员有点癞蛤蟆想吃天鹅肉

我相信每个过来人,应该是认同第一个条件的,不用怀疑,这就是偏见,赤裸裸的歧视。好的大学并不一定能教会你什么,但是在一个相对优秀的文化环 境下,这个人的综合能力和基础是高于平均水平的,在工作的表现突出在学习速度,工作态度,责任心,自知之明和主观能动性上。尤其是学习速度,技术学习的快 慢绝对不是勤奋影响的,而是文化基础。

第二条,编程素养和程序思维。编程素养是一个没办法被量化的指标,它需要通过非常多工作不需要的基础学科知识的熏陶,潜移默化建立的。

我和CTO打过一个比方,这个行业是一个江湖,每个程序员都是习武之人,编程语言就是门派,技术框架就是一套招式,编程工具就是各类兵器。现在 满大街的程序员培训机构都是带一个人拜一个门派(Java),学一套这个门派的武功(Android),给你一件兵器(Eclipse/Android Studio),第一周教你基本的外功招式(JAVA 基本语法),从第二周开始教你武功第一式(搭建项目),第二式(界面搭建)一直到你能有模有样打一套,然后让你到村口接两个杀山贼的新手任务(天气预报, 星座占卜,食品电商),你噼里啪啦交了任务感觉此刻自己也是江湖人了,可事实上,这类人小说里都是成批扑街连名字都不会有的下场。

这样说可能太刻薄了,但希望我这个刻薄的比方能打消你去培训机构学习编程成为程序员的念头,希望我的刻薄能提前扼杀你未来无尽的失望。

回到这个比方,既然是习武之人,不管你师从少林武当还是明教丐帮,每一个有名字的角色都是从扎马步练起来的,下盘不稳的打架根本站不住,所有能给你用特效的招式都是需要内功深厚才能练的,张无忌没练过九阳神功抄十遍乾坤大挪移也没用。

编程素养就是内功心法,裘千仞一掌打穿桌子碗里的水波澜不起,你一掌下去手肿了,就是这么直观的区别。

回到现实,编程素养在实际编程工作中如下区别:

1.效率敏感,资源敏感!!效率敏感,资源敏感!!效率敏感,资源敏感!!重要的事情我说三遍都嫌少。对于同样的一个数据查询,效率敏感的人可 以几何级提升执行效率。资源敏感的最直观体现就是图片瀑布流显示效果,不懂得动态释放资源写出来的界面滑起来卡,而且还很容易崩溃。最可怕的是写代码的人 认识不到自己的问题,"我代码没问题啊,把要显示的图片都显示到listview空间上了啊,机器性能不够怪我喽?"

2.代码结构,项目框架。不是学过一点OO的思想,按照直观判断划分出一坨class就叫代码结构。准确的模块切割需要考虑接口耦合性,继承关系,可维护性,尤其在多人协同开发的过程中,项目框架决定未来3个月后会不会听到此起彼伏的“这一块需要花几天重构”

3.设计模式,这一块很难讲好坏,很多人都只知道MVC设计模式,最多再加一个单例模式。这个东西属于学起来抽象无用,做起来没有相关知识做铺垫,写出来的就是一团毛线。

4.可阅读性。代码其实只是文本,用记事本写代码不只是传说。良好的编程素养能帮助程序员构建逻辑清晰的代码,一眼望去是一块一块而不是一坨一坨的。代码风格不只是编写习惯,更多体现一个程序员在编写代码过程中注重的细节程度。

第三条,了解这个行业文化和最近两年技术发展趋势。这也是掌握单一技术很难在这个行业立足的原因,互联网行业技术淘汰是非常快的,别看 php,jsp,asp这么多年还是占据半壁江山,其框架上的大调整每年都有。技术开源和敏捷开发,在这两个词的带动下,每年都有热门技术被推到台前,你 可以不用,不学,但你一定要了解。知道每个新鲜技术解决了什么历史问题,在哪个领域有突出表现。做不到这一点你会发现你能做的事情越来越少,身边谈论的技 术方案你越来越陌生。比如现在移动端很火的混合开发,不是简单的在原生webview下请求一个H5网页就一概而过的。

第四条,如果一个人满足前三条而不满足第四条。我都不知道怎么科学的理解这个人。

本来还想写很多,但写到这感觉已经偏离了自己打开文档时的初衷,言辞不当之处看官也别包涵了。

欢迎来喷。

这个月会再写一篇关于创业本身发展模型的文字。