同为程序员 为什么我的工资最低

我看着工资单上每一个开发团队成员的薪水,慢慢地我不能保持淡定了。

而当我看到我的工资排名是倒数的时候——靠近最后一名——我不由得倒抽一口冷气。就像圣诞故事中的那个可爱的小男孩Ralphie ,想买气枪却被忽悠会有危险一样,我也不断忽悠自己安慰自己。

然后当我想到这可能是公司给我的考验时,心情一下子就明媚多了。甚至,我在想,有可能这是一个陷阱,一旦掉进去就会引发严重的问题。

可能你会问我,我是怎么搞到这么重要的员工工资表的?需要郑重声明一下,我可没有去偷,拿到它完全是一个意外。

真的!

大概30分钟之前,经理在我们公司的客户网站上约见了我,他有一间专门用于年度考核的会议室。在我的考核见面会上,他先是递给我一系列文件夹,里面是我的考核结果和增加薪水的说明。

整个过程非常正式,氛围也非常好。他告诉我,有很多客户都非常喜欢我,并且表扬了我在过去一年里所完成的那些有创造性的开发项目。同时,他给我的工作提出了一些改进建议,我也深表赞同。最后,在他灿烂的笑容中,他用一种欣喜的语气谈及了我来年的工资。

“现在有个好消息要告诉你,因为你的出色表现,我们决定给你增加6%的薪水。恭喜你。”

这对于我来说,真的是个相当棒的激励。但是因为这是我在这个公司第一次考核,有些还不明白,就提出了我的疑问。

“谢谢。但是不知道公司是如何确定这个百分比的?”

我确定我看到他微微皱了下眉,但又很快舒展开来了,然后他说,“要说的话还有点复杂。我们有一个公式,由公司的业绩,当前的经济形势,当然还有你的表现来确定。我们一直在与时俱进,而且普遍反映这种提高薪资的形式还是不错的。”

说完他就看了看他的手表,站了起来,说他还要去参加一个会议,然后起步离开。在走出门口的瞬间,他说了句“继续努力!”就没影了。

而我坐在那里,想起要涨薪,不由得心潮澎湃。但是当我翻开文件夹看到里面的那张员工薪水表的时候,我简直不敢相信自己的眼睛。我意识到自己被忽悠了。我不断的想这到底是什么意思。然后,我几乎骂出声来,“你妹的,我该怎么办”。

团队中的最底层

在六个人的开发团队里,我不光是工资接近倒数第一,而且我的涨幅也是最低的。我真心无法理解。

在经理那些滔滔不绝的话语里,我了解一个事实,那就是客户不光喜欢我,还特别信任我。在团队中,没有人能比我和他们相处的更融洽了。如果在我的代码中发现bug,我不介意大家开开玩笑,并且我会立马去修复它。

和大多数年轻的开发员一样,我觉得我至少和我的团队成员一样是个不错的程序员。甚至,他们中有两个老是来请求我的帮助——而我现在知道,他们拿的工资比我多。而其中一个只比我早6个月就职,他的涨幅竟然比我高得多。我真的是越看这个单子就越气愤。

我想立刻打电话给公司经理,把这个单子扔到他面前,看看他怎么解释。但是在我几个深呼吸,理智回归大脑之后,我意识到,他肯定可以自圆其说,而且最后搞不好会发生譬如争执之类的不好的结果。深思熟虑之后,我决定先把整件事说给我的朋友Justin听,他也是一个开发人员。

那天晚上,我说完之后,他不由得咧嘴笑了,“这种奇葩事都让你遇上了。”

“是啊,别开玩笑了,说说我该怎么办吧?”

他接着给了个不错的建议,“你必须换位思考一下,如果是你,犯了这样一个错误,你是什么感受。”

然后,我开始进入天马行空模式,“也许他并不知道我有这张工资表格。然后我可以假装我并不知道这件事,和他去谈谈。”

Justin把我从幻想中拉出来,“如果他咆哮,你怎么说?”Justin把拳头重重的打在桌子上,模仿我那个公司的经理。

“你难道想糊弄我吗?我知道你看到那张工资表了!”

Justin是对的,我不得不承认。在谢过我的好朋友之后,那个夜晚我几乎想了个通宵,终于决定了我下一步的行动。

程序员之间的竞争

在我被安排去开一个在公司办公室举行的小组会议的第二天,我正开着车去上班。这时,我突发奇想,我是不是可以在经理不在的时候,偷偷地把工资单放到他的办公桌上。

不行,这也不成。想来想去,都没什么好办法,我的心情烦躁极了。TMD,要是他没有犯这个错误,我即便无知却不会有这么个麻烦,也没有必要来处理这个烂摊子。

小组会议在继续,但是我的注意力完全集中不了。我怀疑他可能自己也不知道那个工资单夹在了给我的文件夹里的。很快这个问题有了答案。因为在会议后,我看到他一脸惊慌失措的向我走来,我知道他知道一切了。

“嘿,伙计,现在有时间吗?到我的办公室来一下。”

伙计?好吧,不管我喜不喜欢已经安在了我的头上。

在他坐下来之前,我先把那个装有工资单的文件夹递给他。他轻轻舒了口气,整个人放松下来。

“我猜你已经看过了。”他一边说一边目不转睛的盯着我。

我不由的有点紧张,然后开始结巴,“嗯,呃,是的,我,呃,原先不知道这是什么,但是,好吧,我的确看过了。”

他向后靠在椅子上,这会儿的语气有点儿恼火了。“听着,我可以回答你任何问题,但是如果你把表格内容泄露出去,那么后果自负。”

这很公平。而且我也不可能告诉我的同事。难道要我问他们,“嘿,恭喜你,你拿的薪水比我多?”

所以,我觉得趁这个机会问那些,让我如芒刺在背,坐立不安,如鲠在喉,寝食难安的问题。“我的确有问题要问。为什么我的工资排在倒数第二?为什么你对我的评价那么好,但是其他人的薪资涨幅都要比我大?”

他调整了一下他的坐姿,然后开始解释。

“不可否认,你是一个合格的开发人员。而且毫无疑问你拥有良好的客户沟通技巧。然而,相较于团队的其他成员,你的技能并不如他们先进,公司给他们的薪酬实际上反映了他们在市场上的竞争力。”

我并不赞同这个观点。在互联网出来之前,网上根本搜不到开发人员的薪资,依靠发行的出版物不是也可以参照的,例如Programmer I和Programmer II上面的薪资报告看得人就非常多。不过尽管如此,我还是耐下性子,听他说下去。

“我听说你花了大量的时间和客户交流,而所说的话题和工作并不相关。你没发现你最近浪费了很多工作时间在电话上?”

听到这个我顿时傻了眼。难道就因为业务而和客户多聊了几句就影响了我的年终考核?

“当然,我承认和客户建立良好的关系也是非常重要的,所以我们目前正在筹建一个新的工作室,这样大家在这里可以在恰当的时间里和客户聊聊天什么的。”

我开始全身戒备,我知道接下来要讲的不会是什么好事了。

他的身子前倾,把他的手肘抵在膝盖上,微笑着道。

“你的工作是写代码。如果客户是喜欢你的代码,那你的工作才算做得好。”我觉得在这个观点上和他争论也没用,所以我把话题回到我的编程能力上。

“你不是说我的代码写的非常独到吗?再则,我总是能早早的完成分配给我的任务,而不像团队里的其他成员喜欢拖拖拉拉。况且据我所知,我的技能就比Joey(也是新员工)先进,那为什么他的薪资涨幅比我大?”

听到这个,他的嘴角露出了淡淡笑容,“你说的不错。但你有没有想过,你是写得快,但你比其他人的任务容易。而且其他人的工作经验比你丰富。至于Joey,他的涨幅在刚进公司的时候就协商好了的。”

该死的,我决定做最后一次垂死挣扎。

“我理解你的观点,也很感谢你能告诉我这一切。可是我觉得这是因为公司不够信任我,为什么不给我更难的任务,以便于我能证明自己比其他人要优秀。”

其实我内心真正想说的是,“诚实会对我的年终考评结果有任何帮助吗?”但是话到嘴边,我还是咽了回去,我临阵退缩了。

公司经理说,对于这个问题,他会考虑之后再回复我。最后,他再次感谢我送回了工资单,并且提醒我要保守秘密。

如何处理

生活总不会一直一帆风顺的,总会有风有雨,人生也是,总会有挫折,有失败。

从这件事情上,我总结了一些经验教训,或许能对你在管理团队和个人职业发展上有所帮助。

1)应该把同事之间的评价也计入年度考核中,这样我那个经理就能全面了解我了,他会知道我乐于助人,和同事之间相处融洽。

2)如果分配给一个开发人员的任务总是提前完成,不要等着他们自己来要求更多的工作,要及时提高工作难度,把他们的潜力开发出来,使得他们能脱颖而出。

3)在考核中不要吝啬提供建设性的批评,这是作为一个管理者的责任。

4)有的时候我们在工作时间需要处理一点私人事情。我知道如何灵活处理这种情况,但是我觉得这种情况并没什么大不了,我们重点要关注的是员工的产出。

5)开发人员想要最大幅度提高自己薪资的最好办法,是在招聘的时候就已经协商好。一旦进入了公司,那么你就只能任凭他们摆布,除非你辞职。

想知道故事的结局吗?经理回头竟然给我额外增加了百分之二的薪水,而我的工作也更具挑战性了。但是,有的时候,我在想,他这样做的原因是因为我的据理力争呢还是希望我能对那个工资单保持缄默。

最后一个教训。好好检查年度考核报告,确保没有多放在里面的重要文件,哈哈。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/447334.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker安装Redis以及配置Redis环境

1,下载Redis镜像 首先拉取 Redis 镜像, 这里我选择的是 redis:alpine 轻量级镜像版本 docker pull redis:alpine 下载完成后,通过 docker images 查看我们已经下载的镜像,看看是否已经下载到本地 2,运行 Redis 容器 docker run …

.NET程序性能的基本要领

摘要:本文分享了性能优化的一些建议和思考,比如不要过早优化、好工具很重要、性能的关键,在于内存分配等。开发者不要盲目的没有根据的优化,首先定位和查找到造成产生性能问题的原因点最重要。 【编者按】Bill Chiles&#xff08…

redis.conf配置文件详解

基本配置 daemonize no #是否以后台进程启动databases 16 #创建database的数量(默认选中的是database 0)save 900 1 #刷新快照到硬盘中,必须满足两者要求才会触发,即900秒之后至少1个关键字发生变化save 300 10 #必须是300秒之后至少10个关键字发生变…

什么原因成就了一位优秀的程序员?

这些年我曾和很多程序员一起工作,他们之中的一些人非常厉害,而另一些人显得平庸。不久前因为和一些技术非常熟练的程序员工作感觉很愉快,我花了一些时间在考虑我佩服他们什么呢?什么原因让优秀的程序员那么优秀,糟糕的…

Redis的哨兵模式Sentinel

sentinel功能 redis的sentinel系统用于管理多个redis服务器,该系统主要执行三个任务:监控、提醒、自动故障转移。 1、监控(Monitoring): Redis Sentinel实时监控主服务器和从服务器运行状态,并且实现自动…

csdn 到底怎么了?不准转载?

我转载了20多文章,很多人阅读过,但是今天看到阅读量是0, csdn 到底怎么了? 对用户这样?请大家看看是不是这样?

python3之后版本读取网页的内容

import urllib.request url "http://helloworldbook2.com/data/message.txt" #直接通过url来获取网页数据 print(第一种) response urllib.request.urlopen(url) code response.getcode() html response.read() mystr html.decode("utf8") response.c…

三十功名尘与土——资深程序员生涯自白

摘要:作者Codist(网名)在程序员岗位上工作了三十多年,在这期间他悟出了一些真理,比如,成功来自对失败的总结学习;条条大路通罗马,罗马并不在乎你用什么方式到达。你在生活中积累了哪…

linux/unix核心设计思想

1) 程序应该小而专一,程序应该尽量的小,且只专注于一件事上,不要开发那些看起来有用但是90%的情况都用不到的特性; 2) 程序不只要考虑性能, 程序的可移植性更重要,shell和perl&…

操作系统环境变量

在 Java中,许多类都是 Iterable ,主要包括所有的 Collection 类(但不包括各种 Maps )。 例如,下面的代码可以显示所有的操作系统环境变量: // collections/EnvironmentVariables.java // {VisuallyInspect…

用Unix的设计思想来应对多变的需求

摘要:无论是Unix设计,还是面向对象设计,还是别的什么如SOA,ECB,消息,事件,MVC,网络七层模型,数据库设计,等等,他们都在干三件事——解耦&#xff…

学习较底层编程:动手写一个C语言编译器

动手编写一个编译器,学习一下较为底层的编程方式,是一种学习计算机到底是如何工作的非常有效方法。 编译器通常被看作是十分复杂的工程。事实上,编写一个产品级的编译器也确实是一个庞大的任务。但是写一个小巧可用的编译器却不是这么困难。…

Arrays.deepToString() 方法同时适用于基元数组和对象数组

Arrays.deepToString() 方法同时适用于基元数组和对象数组: import java.util.*;public class MultiDimWrapperArray {public static void main(String[] args) {Integer[][] a1 { // Autoboxing{ 1, 2, 3, },{ 4, 5, 6, },};Double[][][] a2 { // Autoboxing{ {…

高效程序员的7个共同特征

要想成为高效的程序员,你需要具备一定的综合素质才能够让你用你所掌握的技能、经验和知识编写出有效的代码。有一些开发人员在技术方面具备一定的技巧,但他们永远无法成为高效的程序员,就是因为他们缺乏所需的其它几项特质。本文将给出成为一…

java.util.Array中的方法

概述 asList(): 获取任何序列或数组,并将其转换为一个 列表集合 (集合章节介绍了此方法)。 copyOf():以新的长度创建现有数组的新副本。 copyOfRange():创建现有数组的一部分的新副本。 equals():比较两…

有关编程的12个猜想

摘要:编程世界的将来如何目前仍难预料,但可以肯定的一点是技术一直在加速发展。本文搜罗出12个独特的编程视角猜想,一起来看看有哪些猜想在不久的将来就能变为现实。 编程世界的将来如何目前仍难预料,但可以肯定的一点是技术一直…

面试中如何剔除“鱼目混珠”程序员?

公司招聘面试事宜是一个耗时耗钱的项目,从挑选简历开始,还要花更多的时间面试候选人。有的时候这些人才机构会向你保证这些人都是Java天才、SQL专家、堆栈开发者等等,但实际上真实情况远不及你想想的。对于一个公司来说,执行招聘面…

InputStream 类型

输入流类型 I/O-1 类功能构造器参数如何使用ByteArrayInputStream允许将内存的缓冲区当做 InputStream 使用缓冲区,字节将从中取出作为一种数据源:将其与 FilterInputStream 对象相连以提供有用接口StringBufferInputStream将 String 转换成 InputStr…

java容器相关问题

同步类容器 1,这些复合操作在多线程并发地修改容器时,可能会表现出意外的行为,最经典的便是ConcurrentModificationException,原因是当容器迭代的过程中,被并发的修改了内容,这是由于早期迭代器设计的时候…

趣文:如果编程语言是车

C语言是全能手,小巧,强大,所向披靡,可靠,任何事情都能对付。 C是新的C,双倍的能力,双倍的尺寸,适应险恶的环境,但是你如果没练好就去驾驶,很可能会撞车。 C#是…