发布于 2015-01-18 23:46:59 | 131 次阅读 | 评论: 0 | 来源: 网友投递
程序员 软件开发人员
程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、中级程序员、高级程序员、系统分析员,系统架构师,测试工程师六大类
世界上最苦逼的职业是什么?——程序员。谁没有女朋友注定孤老一生?——程序员。夜间出没的生物有哪几种?——吸血鬼、僵尸、程序员。这些调侃也就算了,现在居然还说程序员当不了管理者!是可忍孰不可忍!程序员愤怒了:我们不仅要当管理者还要当 CEO!
许多初创公司在挖掘和培养一个出色的计算机工程经理的问题上,存在普遍的误解。人们总觉得天才工程师都是异常执着的代码狂人,对成为一个领导者完全 不感冒。这是对工程师们的一个极大的误解!在其他的团队中,你慧眼识英雄,那为什么到了计算机工程团队你就满脑糊涂了?这无疑会对你的人才资源库造成深远 的破坏。
不服,是吧?因为你认为计算机工程师都很内向,他们更喜欢思考复杂的问题而 HR 问题置之不理,而且他们对商业问题的关注远不及技术问题。
那么真的是这样吗?一棒子打死所有的计算机工程师是有失偏颇的。更何况所有这些都是人们一贯以来对计算机工程师的偏见,以及先入为主的概念。工程师 也是人,有的非常健谈,有的安静腼腆。我承认有些开发人员的确无比抗拒技术以外的工作,比如制作绩效报告等。但我也必须得承认有的非常乐意且享受指导管理 类的工作。凡事不可一概而论。
我们的工程师,和我们整个团队的其他成员都一样,也关心整体的利益,也希望成为管理者中的一员。只是,有时候你需要给他们一些推动力和指引。他们需要你为他们设定一个具有挑战的目标,这样他们才会有努力的方向。
所以我在我的工程师团队是这么讲的:不想当程序员的管理者不是好管理者。成为一个团队的领导者,你需要掌握激励和指导每个成员的艺术,从某种程度上来说,这个程序员的工作没什么本质区别,只是对象从电脑换成了人。
我知道这么说有点难以接受,但是仔细想想,也确实有道理:程序员的工作是让电脑按照你的指令去做事——运行你设计的程序。你没日没夜的坐在电脑前, 努力让电脑听从你的所有命令,但有时候你的电脑就是那么顽固不化。只是一个微小的错误指令,你的电脑就撒娇闹脾气罢工什么也不干了。大概曾经遇到过类似下 属的管理者会更容易理解我这个比喻。
当然对电脑发号施令和对人发号施令这两者之间存在很大的差异,最显著的就是人类的随意性和对命令反应的不稳定性,你完全无法掌控。
而我把对人的管理比作运行一个电脑程序更多的是因为,这样能给我们的工程师一个清晰的问题解决思路。这种模式的管理角色更容易被程序员接受,哪怕是从来不认为自己有能力胜任管理者角色的程序员也逐渐充满了自信——这些结果正是我们喜闻乐见的发展。
英文原文:Everyone In Management Is A Programmer
中文翻译:www.lieyunwang.com