我的雇主最近为一位有3-5年工作经验的C#开发人员发布了一个职位空缺。对这一职位的要求和期望是公平的,直到确定薪金的标准。有人明确指出,补偿将只取决于使用C#的经验,而多年使用其他语言和框架的编程经验将被视为无关紧要,而不是被考虑在内。我向人力资源部提出了我的担忧,即好的候选人会把这看作是一个危险的信号,然后避开。我试图解释一下,软件开发不仅仅是一种特定的语言,而且用一种语言为他人付费是雇用优秀开发人员的一种非常短视的方法(我告诉软件公司的人力资源部)。
答案是:“我们厌倦了浪费时间去面试那些期望‘高薪’的开发人员,因为他们除了我们需要的语言之外,还有很多其他语言的编程经验。”这里的第一个问题是“高薪”=市场利率。经过一番认真的讨论后,他们基本上承认,公司里没有人因为自己的技能而获得接近市场的报酬,对此他们无能为力。首席执行官们的心态是,员工只应因多年来在他们的观察下证明的技能而获得报酬。入门级的开发人员以低于38000美元的价格被选中,3年后可能会达到50000,我想这正是他们为C#职位提供候选人的计划。另一个有趣的发现(与此无关)--被“提拔”到更高职责的人不会得到加薪。“晋升”被认为是对个人角色的一种调整,以更好地适应他们的“优势”,而这正是他们已经得到的报酬。
在从人力资源部直接听到这些艰难的事实后,我会认为,大多数为自己着想的人很快就会开始寻找一个对自己在这个行业做什么有更好认识的新雇主(这家公司在许多其他方面都失败了,但我不想写一本书)。然而,这是我的两难处境:
这是我担任的第一个官方软件开发职位,至今还不到一年。我过去3年的工作是在一家非常小的公司工作,在那里我履行了许多职责,其中包括软件开发(不是在我的正式职务描述中,而是我非常努力地做到这一点)。我已经确定了我目前有资格获得的本地职位空缺,大多数比我现在得到的工资至少高出50%。问题是,跳起来是不是太早了?在我目前的工作岗位上,我获得了宝贵的经验,不缺少令人兴奋的项目。工作环境非常舒适,很多人告诉我,我是C级的人的聚光灯下,因为我在短时间内能够完成的事情(这是值得的)。然而,留下有一个明显的机会成本,现在我肯定地知道,我将不得不等待3-5年才能被限制在我今年其他地方可能赚到的钱。我也意识到“跳槽者”是一个危险的标签,不管原因如何。
更新:我刚刚在另一家公司接受了一份工作,付出了更多的钱,甚至更酷的项目。感谢所有有洞察力的回应。
发布于 2011-03-16 07:10:28
不重视留用的公司不会提供有竞争力的薪酬。他们也倾向于得到他们应得的东西,因为他们倾向于用更少的选择来吸引开发人员。有时,这只是意味着谈判或人际交往技巧差的人,但这往往会导致技术上的僵局,因为没有人可以用更广泛的经验来作为设计和实现想法的宣传板。
我在同一家公司工作了7年,但在过去的几年里,我也搬来搬去,这在一定程度上要归功于我最初关注的是合同工,后来是由于我的雇主面临的经济挑战。当公司崩溃时,我选择离开以前的雇主。我得知,在我递交辞呈时,这实际上是一个庞氏骗局。在我之前的几份工作中,很短的时间在面试中引起了一些人的注意,但是当你在寻找其他的工作时,你不需要在面试中表现出消极。
如果有人问你为什么要离开,我希望这是因为另一家公司提供了一个更有趣的项目/技术/挑战,向更有经验/更有才华的人学习的机会,以及更有吸引力的薪酬方案;你可以说任何这些事情,而不会让你或你现在的雇主看上去很糟糕。如果你有相当的能力,你会有选择的。你应该一直对下一份工作的选择持开放态度,即使你对目前的工作相当满意,因为这会让你对职业发展的选择有更多的看法,并能让你对未来有更多的控制权,因为你会花更多的时间来选择你的雇主,而不是反过来。
不管怎样,你的雇主是错的。在“其他语言”方面的经验只是有经验的开发人员中的一小部分。战斗伤疤,以可持续方式构建和维护复杂系统的经验,以及处理业务需求和技术债务的经验,这些都使有经验的开发人员具有价值。我的初级同事可以在短时间内完成大量的代码,但他们经常会以一种无法维护的方式解决错误的问题。问我哪一个更有价值,我会告诉你,我们需要高级工程师,他们可以用微妙的方式思考,也需要乐观的初级开发人员,他们希望尽快完成新的工作,即使我们第一次搞错了。但是经验是有价值的,因为它使你不会花费太多的时间来产生技术债务。
我认识很多在C#方面有3年经验的人,他们仍然产生糟糕的、不可维护的、不完整的C#代码,而且我认识一位长期工作的Java开发人员,他花了大约6周的时间开始制作高质量的C#代码,这些代码利用了语言习语,并且由于经验、好奇心和代码评审的结合,这些代码之间的耦合也很松散。如果你的雇主不明白有什么不同,是的,在其他地方寻找一个增长的机会是个好主意。你应该总是想和一家比你看得更远的公司合作,雇佣比你聪明的人。
发布于 2011-03-16 05:55:42
发布于 2011-03-16 16:10:06
如果我是你我哪儿也不会去。你已经清楚地表明,你还处在职业生涯的早期阶段,而且很明显,你在工作中做得很好,最重要的是你学到了很多东西。
每一家公司都试图将成本降到最低,即尽可能少地支付所有的资源,所以尽量不要把它当成个人问题。如果你看过任何一家公司的工资,你会感到非常震惊,因为人们的工资与他们的能力有关,甚至对公司有用。人们得到的报酬是他们最不愿意接受的。人力资源人员毫无头绪?-难以置信;--事实上,我认识软件公司的高级管理人员,他们经常寻找具有非常特定属性的人(当然,这不包括许多符合“聪明和做事”特征的人)--因此,恐怕这种愚蠢的想法不仅仅局限于人力资源人员。
小心不要太过沉迷于“远山更绿”的综合症--实际上听起来你在哪里做得很好。我认为StackExchange站点的一个问题是,贡献者的标准太高了,通过阅读答案(有时甚至是问题),你会得到这样的印象:所有软件公司都必须充满这些超高效的超级极客,他们每天晚上和周末都在编写代码,手指在几个开源项目上,每天都在博客上谈论他们的最新黑客等等。这与现实正好相反。您的一般软件开发人员没有您可能意识到的那么令人印象深刻。事实上,您的平均StackExchange贡献者可能已经在他们自己的公司和行业中处于较高的级别。一方面,看到这样的卓越进入公共领域,让所有人看到、学习和受到启发,这是令人兴奋的。另一方面,如果像我一样,你只是一个“相当好的程序员,但没有大师”,有时会令人沮丧的是,不断提醒你的局限性:-)。另外要记住的是,这个网站上的很多人都很年轻,虽然他们可能是伟大的程序员,但他们并没有看到所有的东西,但当然,由于他们不知道,他们很乐意给出他们的看法,事情应该如何(我年轻的时候- LOL)。事情从来没有这么简单过,所以请小心你的忠告。
把钱拿出来,低下头,在工作中证明自己。从书中学到一些谈判技巧,与客户打交道,公开辩论,诸如此类。当时机成熟时,你会得到你应得的钱,更重要的是,人们会愿意给你应得的报酬。
就我个人而言,我可以说,软件开发为我提供了一个机会,让我过上美好的生活,拥有合理的经济收入和非常灵活的工作条件。我在业余时间不进行代码编写,除了与工作相关的项目之外,我不参与开源项目。我不写博客。我可能无法在一张纸上写出整数函数的六进制(就像我在另一个问题上看到的人说的那样,一个应聘者必须要有一个整数函数),但我可以告诉你,我会怎样做才能让我的客户非常高兴。多年来,我发现,我的软技能的发展,如果不是更多的因素,比我的技术能力,在我可能取得的任何成功。
祝好运。(我希望我不会在这里遇到说教-我是在10分钟的咖啡休息时间内写的,所以它可能需要一些编辑)。
https://softwareengineering.stackexchange.com/questions/58501
复制相似问题