程序员是一个十分特殊的群体,其中一点就表现在对他们工作能力的判断上。大部分程序员的工作能力都不是一眼就能看出来的,这涉及到一系列评判要素。
所以,对于不懂代码的人来说,判断一个程序员工作能力时不能单靠第一印象做评判。比如一个表面上满嘴跑火车的程序员,背地里可能连基本的debug能力都不过关。
那么,判断一个程序员水平高低与否的关键条件是什么呢?
答案自然是多方面的。不过经过多方调研,小七归纳出一下几点:
debug能力
把大象关进冰箱只需要三步,而完成debug也只需要三步:
1、找到bug
2、解决bug
3、确认bug已被解决
但是,与把大象关进冰箱一样,debug的难点不是弄清楚过程需要几步,而是怎么实现这个过程。有时候,你需要在几千甚至几万行代码中找出一个bug,但这可能还不是最糟糕的。因为可能你在历经千辛万苦后找到了bug,却并不知道怎么解决。
巧的是,对于几乎所有程序员来说,“我写的代码不可能出bug”这样的话基本可以体现出一个人的水平(吹牛的水平)。
既然bug是不可避免的,那么排除bug自然成为了程序员职业技能中不可忽视的组成部分。一个程序员对专门的debug任务的处理效率可以在很大程度上反映出自身的水平。如果需要一定量的提醒点拨才能解决问题或许只能说明业务或相关技能不够熟练,但如果在代码复杂且信息不全的情况下仍然能够给出可行的fix,这样的人必然有着过硬的实力。
产出质量
决定程序产出质量的关键条件有很多,包括代码的逻辑性(逻辑简单、线性)、可读性(合理的注释和文档)、可维护性、bug出现率(越低越好)、程序员的优化能力、调错能力等等。
对于大部分程序员来说,代码质量是衡量一个人专业水平的最直观的条件。甲方看重的是产品功能是否符合预期,领导看重的是产品能否即使上线,而程序员看重的是自己能否在预期时间内完成代码写作以及在工作交接后能否接手到简单易懂、逻辑清晰的代码。而决定这一切的就是代码的完成质量。如果代码产出质量出现了问题,很可能对后期工作产生巨大的影响,比如缺乏可维护性导致的祖传代码(legacy code)问题。因此,代码的产出质量是衡量一个程序员个人水平的重要条件。
当然,debug能力和代码产出质量都是隐形条件,需要与显性条件相配合才能充分表现出一个程序员的专业水平。
那么问题又来了:什么才是判断一个程序员工作能力的显性条件呢?
没错,就是外貌。
头发:程序员的发型一般分两种,一种是因为脱发而导致的全秃或半秃,另一种是没有脱发,但因为长期属于打理而形成的油性长发。如果你见到一个人头发齐整干净并自称程序员,那么不用怀疑,要么就是他工作还不够投入,要么就是他在说谎。
穿着:行业内有个说法:程序员这辈子只会穿一次西装,那就是他结婚的时候。如果是中式婚礼的话,他可能一辈子都不会穿。程序员确实很爱格子衫,不过大部分程序员也会在着装上选择格子衫以外的衣服,比如简单修身的毛衣或者纯色的T恤,但极少会有人在日常的工作中穿正装。如果一个人自称程序员且穿着西装,不要怀疑,要么他只是个刚入行不久的新人,要么就是他赶着去参加自己的婚礼。
体型:程序员的体型也是其专业能力的一个显性条件。国内的程序员大都离不开加班的命运,过硬的专业能力大多都是在长期的加班中磨练出来的。因此,工作能力较强的程序员要么体型消瘦、面色苍白,给人一种纵欲过度的感觉,要么因为过劳肥而身材肥胖、两眼无神。如果一个人自称程序员且身体健康、充满活力,不要怀疑,他在电脑前呆的时候明显还不够支撑他成为一名优秀的、经验丰富的程序员。
生活习惯:因为工作的原因,程序员的生活习惯于一般人有着很大的差异,比如经常熬夜导致习惯晚睡;早出晚归导致一日三餐的饮食不规律;久坐不动导致腰椎病和颈椎病高发,从而比同龄人更早地进入了养生期。如果一个人生活十分规律且自称程序员,不要怀疑,要么他才进入IT行业且业务水平不过关,要么他们公司已经处在破产倒闭的边缘了。
爱好:因为长期接触互联网,大部分程序员都对网络上的新型事物很敏感,又因为工作类型导致很多程序员都很宅,所以大部分程序员的爱好都集中在两个方面:一个是新型的数码产品,比如单反、HIFI、无人机等,一种则是二次元文化、比如动漫、游戏、漫画等。如果一个人自称程序员且对数码和二次元不敢兴趣,那么不用怀疑,他对互联网的浸淫明显还不够深沉,这样的人注定无法成为一个优秀的IT界人才。
以上就是小七总结的程序员工作能力的判定条件,虽说有一些玩笑的成分,但还是具备一定的参考价值。
责任编辑:wv
全部0条评论
快来发表一下你的评论吧 !