你手下有一群优秀的程序员,他们都很想在事业上有所进步。您的团队已经完成了很多工作,这是他们的双手,您知道这一点,并且您想奖励他们——因为他们的辛勤工作。最直观的做法就是提拔他们,让他们成为管理者/管理者,其实他们一直都是这个团队真正的领导者。但这是他们真正想要的吗?或者你应该认为他们这么认为?众所周知,管理工作是完全不同的技能。在程序员的职业生涯中,他的技术水平会积累到相当高的水平,但现在要求他用全部时间去研究一个全新的东西——人际沟通、软技能等管理工作,他们完全具备在过去的几年里被忽略了。学习编程技术占用了他们所有的时间,而这些都是反复试验的过程。现在,他们的时间需要花在非编码的事情上,这与他获得奖励的工作完全不同。于是,他们突然从自己擅长的工作转到了自己不擅长的工作上。自信心、工作满意度都会受到打击。问题的根源在于,技术负责人/技术负责人与团队管理/经理是完全不同的技术工作。你通过欣赏他们是优秀的领导者和执行者来奖励他们,你必须把他作为其他人学习和效仿的榜样。不是让每个人都想当经理——所有的经理都会来上班?除此之外,你不能向人们表明编程作为一种职业不如其他工作。了解TechLead的职责和工作有很多方面。参考一个典型的技术负责人的工作——每天有很多技术问题需要决定,优先解决需要解决的问题,并找到问题的解决方案。程序员工作中最有趣的部分是他们每个人都将在项目的某些方面扮演重要角色——某种领导职位。程序员工作的另一部分是回答为什么出了问题,为什么软件不能这样使用。查找错误并修复错误。写文档。代码审查。项目评估。总之,程序员在一家公司待的时间越长,他就越难找到更长的不受打扰的时间段。这些是他们工作中最讨厌的部分。程序员最快乐的工作发生在不被打扰的时间里,但是这些不被打扰的时间不能说影响到别人的工作,因为大家都找不到你。程序员在思考一个问题时,通常需要将整个问题加载到大脑中,这就需要他们的注意力承载相当大的负荷来分析和研究问题。对于内向的程序员,这需要安静,而对于外向的程序员,则需要与志同道合的人在一个房间里讨论。但是为什么有些程序员不高兴呢?为什么优秀的程序员不能从他们的工作中获得更多乐趣?主要障碍是权力——程序员说“不”的权利。这与勇气无关。这是一个真正的权力问题——技术负责人必须解决客户提出的问题。如果他对手中的软件有责任感,他们就会觉得这个软件会和他的余生息息相关。这是个人的责任,但也是一种拖累。如何让技术负责人有更多的地位和权力随着项目的发展,团队中的人会越来越多,最终会出现团队成员管理的问题。技术负责人不可避免地要处理团队中出现的一些人事问题。不做好这方面的工作,很可能会导致严重的问题。应该鼓励技术leader早点定目标,让他们多思考最终目标是什么,是搞技术还是搞管理,不要断然给他们发出错误的信号,不当leader就不行不被尊重。如果一个优秀的程序员立志成为最伟大的程序员,开发一个经得起10亿人访问的系统,或者深入探索一个操作系统,那么你应该帮助他实现他们的理想。有好处。技术目标和愿望很容易实现——公司应该用“有趣”的项目奖励程序员。给他们成长和学习的机会。还要在公司之外寻找一些与职业相关的机会,比如鼓励程序员参加技术会议,参加技术讲座,成为某个领域的知名人物。大多数程序员并没有为自己的职业发展采取积极主动的措施,鼓励他们参与这些社会活动可以让他们在自己感兴趣的领域内获得社会成就感。这不仅对程序员有好处,对公司也有好处。会给公司带来声誉,吸引其他有能力、有抱负的程序员加入公司。形成一种机制,让工作好的程序员感觉到自己在公司的权重在增加,地位在提高。这会让他们感到更有“力量”。能够说“不”并不是程序员的内在愿望。奖励程序员应该让他们在最能发挥自己作用的岗位上,更自由、更愉快地发挥更大的作用。而不是去一个陌生的管理岗位。
