我的朋友是一家软件公司的项目经理。对他来说,最令人沮丧的是他的工程师经常离职。该公司努力招募新工程师,转移项目并保持稳定的高质量产品。人们离开时,这使我的朋友发疯。
这些工程师还很年轻,有野心,他们想要更高的薪水和更好的职位。大老板只是从财务角度考虑问题,他的理论是“ 三个新手总是比一个老手好 ”(作为一名经验丰富的工程师,我知道这是错误的)。我的朋友讨厌那个理论。
对他有什么建议吗?
我的朋友是一家软件公司的项目经理。对他来说,最令人沮丧的是他的工程师经常离职。该公司努力招募新工程师,转移项目并保持稳定的高质量产品。人们离开时,这使我的朋友发疯。
这些工程师还很年轻,有野心,他们想要更高的薪水和更好的职位。大老板只是从财务角度考虑问题,他的理论是“ 三个新手总是比一个老手好 ”(作为一名经验丰富的工程师,我知道这是错误的)。我的朋友讨厌那个理论。
对他有什么建议吗?
Answers:
如果有很多人离职,那么这很明显地表明工作环境不适合他们。这可能是因为工作环境通常很差,例如管理不善,加班很多,工作满意度差。
但这也可能是因为公司没有为个人开发人员提供实现其个人目标的手段。在工作面试中弄清楚这一点很重要。开发人员会在哪里看到自己,比如说5年的时间。如果聘用的公司无法为该开发商提供该机会,则开发商很有可能在其他地方应对这些挑战。
因此,我认为您在求职面试时必须格外小心,以寻找长期个人目标在公司所能提供的范围内的应聘者。
是的,我完全同意您的观点,一位资深人士比三位新手要好。
当一个组织的营业额比平常高时,总有一个原因,那就是管理层。
告诉你的朋友在镜子里看。他寻找的答案将在此处找到。
我认为与离开公司的人员进行面试是一件好事。这样,他就可以知道人们离开的真正问题。否则很难找到补救办法。
每个人有时都可以退出。您需要适应戒烟文化。
但是,我们所有人都能做一件事。实际上,现在就在这一刻,让我们一起做。员工,继续对自己说:
I know that I will quit my job, and there’s nothing wrong with that.
轮到您了,老板/经理:
I know that my employees will quit, and there’s nothing wrong with that.
一旦我们都接受了这一点,事情就会开始更好地工作。最终,我们将加入法律行业,会计行业以及许多其他行业,我们也将拥有运转良好的机器。但是首先要考虑的是:我们需要拥抱戒烟,而不是害怕戒烟。
我不认为“年轻人”会因为薪水而离开-如果有的话,责任少,职业生涯长的年轻人可以承受冒险,工作或娱乐,这是我们恐龙无法做到的。
但是,如果老板认为三个新手比一个老手更好,我当然可以看到他们离开。谁愿意当老手?
员工希望获得更好的工作与生活平衡,有趣的工作,职业潜能(包括名字识别)等。他们甚至可能愿意为此付出某种报酬。
我想认为,与在一个无关领域的单调小公司中,更多的工程师想在一家财富500强科技公司或一家令人兴奋的创业公司中工作。
但是,我也想认为每个人或几乎每个人的价格都可能抵消上述价格。
因此,您的公司没有以非财务方式(例如管理)进行足够的更改,或者其提供的产品没有进行足够的更改。
对于喜欢他们的工作环境的软件工程师来说,这是不正常的。
使用Joel测试为开发人员创建最佳的工作环境。
正如您的朋友所证明的那样,尽管这些东西有成本,但营业额也有成本。创建更好的工作环境和更好的软件团队的成本(时间或金钱)很容易被减少营业额所节省的费用和持久团队创造的更好结果所抵消。
这家公司有多大?
我总是发现这种情况最常见于约20/30名员工的小地方。
问题是大老板,我猜是老板。
他经营一家小企业,拼命想赚钱,赢得客户等。钱可能很紧,因此他的薪水可能低于平均薪水,很少的收益,期望从您的钱中获得更多收益等。
这是一个可见的圈子,要留住最优秀的人才,您就得付出体面的钱,或者有其他一些原因让他们留下,例如。运行良好,开发出色的产品。
如果软件部门不断吸引新人,(1)这真的很容易工作,或者(2)辛苦了,那么公司正在浪费大量的金钱,要花数月的时间才能让程序员充分了解系统真正胜任它。
如果您朋友的工作在(2)附近,那么您朋友的老板就是个白痴。在困难的项目中,一个熟练,经验丰富的程序员值得拥有十多位绿色程序员。对于绿色程序员来说,这并不是真正的软件开发……它是研发。他们将花费2%的时间实际编写代码,而将98%的时间用于研究,重新设计,试图弄清为什么在进行一些更改和进行错误测试后程序无法正常工作。
我要告诉你的朋友离开公司。老板认为他已经弄明白了,但实际上他只是个白痴,使每个人都痛苦不堪。当老板的人意识到了自己的软件开发/维护部门年久失修,这将是为时已晚......整个公司将崩溃就像一副牌,他会留下来面对股东,他的老板,等该公司将拥有您可能会称之为“异型船”的软件-曾经令人印象深刻的烟熏壳,但没人知道如何修复它,因为没人知道它以前是如何工作的。
您也可以建议您的朋友尝试让他/她的老板同意进行思想实验。“您刚刚失去了担任老板的工作,现在您是一名开发人员。这是您的办公桌。现在开始编程。” 当老板抱怨他不知道怎么做时,您的朋友会说:“哦?您是新来的吧?不知道它是如何工作的,是吗?嗯,您可以阅读这10本书-确保顺便说一句,您会做笔记-完成后,您可以阅读项目的设计,然后阅读代码,然后可以观看开发人员在制作软件时进行的所有会议,然后您可以阅读他们的电子邮件,然后再次输入代码。当您完成所有这些操作后,我们 ll让您修补自己的程序副本-看看您是否可以使用该软件而不用拧紧它。完成所有这些操作后,就可以编写第一行代码了。六个月后见。”
与大老板打交道的方式纯粹是财务上的-招聘有成本,在大多数情况下是相当大的成本-因此,要做的第一件事是确定这是什么成本,其次是证明可以节省多少钱如果减少客户流失,(这与流失项目的成本问题无关,该问题可能很难评估,并且在任何情况下都可能会打折。)
在应对流失方面,第一个要问的问题是“他们为什么要留下来”,这家公司作为雇主提供的服务是员工在其他地方工作会遭受损失。其中一些将很明显,即给其他人带来较少的报酬和收益(项目的性质,工作的性质,工具,办公空间,椅子(!),培训,工作环境和整体文化)。
另一个问题是,目前流失的概念在企业中是固有的-新员工将进入他们的“高级”同事希望离开以发展的环境,这种情况将继续下去。
我没有在开发人员流失率很高的地方工作。我在一个工作流失率很高的地方工作,但是需要很多专业知识。那个地方想出了一个很好的处理方法。而且它甚至没有意识,这个地方只是适应了。这种处理方式的主要部分是结对编程。
好吧,因为它不是编程,严格来说,它只是配对。:-)
我在Extreme Programming变得非常酷之前就在这个地方工作,所以当时我没有听说过,但是公司会仔细记录所有事情,并且他们会通过让经验丰富的人在他们工作时坐在一起来教新来的东西。在实践中,每当有人做任何复杂的事情时,他们都会配对,大多数是新手和老手。基本上,您唯一没有配对的就是两个人无论如何都会做完全一样的事情。
我完全同意这样一种说法,即程序员之间的高流失率始终是管理层的错。而且在这样的情况下,中层管理人员最终陷入了现实与高层管理人员之间的挤压之中,这并不是一件好事。但是,请确保您的朋友阅读了大量敏捷书籍,尤其是肯特·贝克(Kent Beck)撰写的有关极限编程和测试驱动开发的书籍。通过实施测试驱动的开发和结对编程,您可以在保持高质量代码的同时,将知识快速地传递给新人们。
这不如解决问题那样好(您的朋友需要确保他确切地知道有人退出的原因,因此他也可以尝试解决此问题),但是它可以使问题不那么突出。
(还要确保总是有免费的水果,咖啡,软饮料和糖果。还有很多方法可以使人们不涉及薪水的增加,但如果没有高层的预算,您的朋友不太可能实施这些方法)。
您的朋友可能想为老板概述这项政策的成本,而我并不是在谈论产品质量,因为尽管这很重要,但这并不是老板真正能动脑筋的事情。我说的是代理费和产品延误。
雄心勃勃的年轻程序员通常会与您合作,直到他们觉得自己的职业生涯无法在您的公司继续前进。一个刚从uni跳出来的孩子可能会占据这个初级开发人员的位置,但是一年后,他不再觉得自己是“初级”,也不希望自己被困在执行琐碎的任务上-毕竟,他在自己的领导下有一年的经验带!
他想要更好的薪水,更好的头衔和更好的项目。如果您的朋友不能提供这些东西,那就是他失去人的原因。
所有的年轻人(包括我在内;-)都会非常有野心,并想争取尽可能高的薪水,但并不是所有这些有野心的家伙都非常出色,或者我应该说值得一提。您的朋友和他的老板应该有选择性,他们应该真正地使有钱人选在货币和垂直方向都处于高增长曲线上,应该/可以替换离开的普通人。
简单:不要雇用经常换工作的人。
首先执行此操作,然后您需要遵循此处所有其他答案的建议。