同為程序員 為什么我的工資最低

我看著工資單上每一個開發團隊成員的薪水,慢慢地我不能保持淡定了。

而當我看到我的工資排名是倒數的時候——靠近最后一名——我不由得倒抽一口冷氣。就像圣誕故事中的那個可愛的小男孩Ralphie?,想買氣槍卻被忽悠會有危險一樣,我也不斷忽悠自己安慰自己。

然后當我想到這可能是公司給我的考驗時,心情一下子就明媚多了。甚至,我在想,有可能這是一個陷阱,一旦掉進去就會引發嚴重的問題。

可能你會問我,我是怎么搞到這么重要的員工工資表的?需要鄭重聲明一下,我可沒有去偷,拿到它完全是一個意外。

真的!

大概30分鐘之前,經理在我們公司的客戶網站上約見了我,他有一間專門用于年度考核的會議室。在我的考核見面會上,他先是遞給我一系列文件夾,里面是我的考核結果和增加薪水的說明。

整個過程非常正式,氛圍也非常好。他告訴我,有很多客戶都非常喜歡我,并且表揚了我在過去一年里所完成的那些有創造性的開發項目。同時,他給我的工作提出了一些改進建議,我也深表贊同。最后,在他燦爛的笑容中,他用一種欣喜的語氣談及了我來年的工資。

“現在有個好消息要告訴你,因為你的出色表現,我們決定給你增加6%的薪水。恭喜你。”

這對于我來說,真的是個相當棒的激勵。但是因為這是我在這個公司第一次考核,有些還不明白,就提出了我的疑問。

“謝謝。但是不知道公司是如何確定這個百分比的?”

我確定我看到他微微皺了下眉,但又很快舒展開來了,然后他說,“要說的話還有點復雜。我們有一個公式,由公司的業績,當前的經濟形勢,當然還有你的表現來確定。我們一直在與時俱進,而且普遍反映這種提高薪資的形式還是不錯的。”

說完他就看了看他的手表,站了起來,說他還要去參加一個會議,然后起步離開。在走出門口的瞬間,他說了句“繼續努力!”就沒影了。

而我坐在那里,想起要漲薪,不由得心潮澎湃。但是當我翻開文件夾看到里面的那張員工薪水表的時候,我簡直不敢相信自己的眼睛。我意識到自己被忽悠了。我不斷的想這到底是什么意思。然后,我幾乎罵出聲來,“你妹的,我該怎么辦”。

團隊中的最底層

在六個人的開發團隊里,我不光是工資接近倒數第一,而且我的漲幅也是最低的。我真心無法理解。

在經理那些滔滔不絕的話語里,我了解一個事實,那就是客戶不光喜歡我,還特別信任我。在團隊中,沒有人能比我和他們相處的更融洽了。如果在我的代碼中發現bug,我不介意大家開開玩笑,并且我會立馬去修復它。

和大多數年輕的開發員一樣,我覺得我至少和我的團隊成員一樣是個不錯的程序員。甚至,他們中有兩個老是來請求我的幫助——而我現在知道,他們拿的工資比我多。而其中一個只比我早6個月就職,他的漲幅竟然比我高得多。我真的是越看這個單子就越氣憤。

我想立刻打電話給公司經理,把這個單子扔到他面前,看看他怎么解釋。但是在我幾個深呼吸,理智回歸大腦之后,我意識到,他肯定可以自圓其說,而且最后搞不好會發生譬如爭執之類的不好的結果。深思熟慮之后,我決定先把整件事說給我的朋友Justin聽,他也是一個開發人員。

那天晚上,我說完之后,他不由得咧嘴笑了,“這種奇葩事都讓你遇上了。”

“是啊,別開玩笑了,說說我該怎么辦吧?”

他接著給了個不錯的建議,“你必須換位思考一下,如果是你,犯了這樣一個錯誤,你是什么感受。”

然后,我開始進入天馬行空模式,“也許他并不知道我有這張工資表格。然后我可以假裝我并不知道這件事,和他去談談。”

Justin把我從幻想中拉出來,“如果他咆哮,你怎么說?”Justin把拳頭重重的打在桌子上,模仿我那個公司的經理。

“你難道想糊弄我嗎?我知道你看到那張工資表了!”

Justin是對的,我不得不承認。在謝過我的好朋友之后,那個夜晚我幾乎想了個通宵,終于決定了我下一步的行動。

程序員之間的競爭

在我被安排去開一個在公司辦公室舉行的小組會議的第二天,我正開著車去上班。這時,我突發奇想,我是不是可以在經理不在的時候,偷偷地把工資單放到他的辦公桌上。

不行,這也不成。想來想去,都沒什么好辦法,我的心情煩躁極了。TMD,要是他沒有犯這個錯誤,我即便無知卻不會有這么個麻煩,也沒有必要來處理這個爛攤子。

小組會議在繼續,但是我的注意力完全集中不了。我懷疑他可能自己也不知道那個工資單夾在了給我的文件夾里的。很快這個問題有了答案。因為在會議后,我看到他一臉驚慌失措的向我走來,我知道他知道一切了。

“嘿,伙計,現在有時間嗎?到我的辦公室來一下。”

伙計?好吧,不管我喜不喜歡已經安在了我的頭上。

在他坐下來之前,我先把那個裝有工資單的文件夾遞給他。他輕輕舒了口氣,整個人放松下來。

“我猜你已經看過了。”他一邊說一邊目不轉睛的盯著我。

我不由的有點緊張,然后開始結巴,“嗯,呃,是的,我,呃,原先不知道這是什么,但是,好吧,我的確看過了。”

他向后靠在椅子上,這會兒的語氣有點兒惱火了。“聽著,我可以回答你任何問題,但是如果你把表格內容泄露出去,那么后果自負。”

這很公平。而且我也不可能告訴我的同事。難道要我問他們,“嘿,恭喜你,你拿的薪水比我多?”

所以,我覺得趁這個機會問那些,讓我如芒刺在背,坐立不安,如鯁在喉,寢食難安的問題。“我的確有問題要問。為什么我的工資排在倒數第二?為什么你對我的評價那么好,但是其他人的薪資漲幅都要比我大?”

他調整了一下他的坐姿,然后開始解釋。

“不可否認,你是一個合格的開發人員。而且毫無疑問你擁有良好的客戶溝通技巧。然而,相較于團隊的其他成員,你的技能并不如他們先進,公司給他們的薪酬實際上反映了他們在市場上的競爭力。”

我并不贊同這個觀點。在互聯網出來之前,網上根本搜不到開發人員的薪資,依靠發行的出版物不是也可以參照的,例如Programmer I和Programmer II上面的薪資報告看得人就非常多。不過盡管如此,我還是耐下性子,聽他說下去。

“我聽說你花了大量的時間和客戶交流,而所說的話題和工作并不相關。你沒發現你最近浪費了很多工作時間在電話上?”

聽到這個我頓時傻了眼。難道就因為業務而和客戶多聊了幾句就影響了我的年終考核?

“當然,我承認和客戶建立良好的關系也是非常重要的,所以我們目前正在籌建一個新的工作室,這樣大家在這里可以在恰當的時間里和客戶聊聊天什么的。”

我開始全身戒備,我知道接下來要講的不會是什么好事了。

他的身子前傾,把他的手肘抵在膝蓋上,微笑著道。

“你的工作是寫代碼。如果客戶是喜歡你的代碼,那你的工作才算做得好。”我覺得在這個觀點上和他爭論也沒用,所以我把話題回到我的編程能力上。

“你不是說我的代碼寫的非常獨到嗎?再則,我總是能早早的完成分配給我的任務,而不像團隊里的其他成員喜歡拖拖拉拉。況且據我所知,我的技能就比Joey(也是新員工)先進,那為什么他的薪資漲幅比我大?”

聽到這個,他的嘴角露出了淡淡笑容,“你說的不錯。但你有沒有想過,你是寫得快,但你比其他人的任務容易。而且其他人的工作經驗比你豐富。至于Joey,他的漲幅在剛進公司的時候就協商好了的。”

該死的,我決定做最后一次垂死掙扎。

“我理解你的觀點,也很感謝你能告訴我這一切。可是我覺得這是因為公司不夠信任我,為什么不給我更難的任務,以便于我能證明自己比其他人要優秀。”

其實我內心真正想說的是,“誠實會對我的年終考評結果有任何幫助嗎?”但是話到嘴邊,我還是咽了回去,我臨陣退縮了。

公司經理說,對于這個問題,他會考慮之后再回復我。最后,他再次感謝我送回了工資單,并且提醒我要保守秘密。

如何處理

生活總不會一直一帆風順的,總會有風有雨,人生也是,總會有挫折,有失敗。

從這件事情上,我總結了一些經驗教訓,或許能對你在管理團隊和個人職業發展上有所幫助。

1)應該把同事之間的評價也計入年度考核中,這樣我那個經理就能全面了解我了,他會知道我樂于助人,和同事之間相處融洽。

2)如果分配給一個開發人員的任務總是提前完成,不要等著他們自己來要求更多的工作,要及時提高工作難度,把他們的潛力開發出來,使得他們能脫穎而出。

3)在考核中不要吝嗇提供建設性的批評,這是作為一個管理者的責任。

4)有的時候我們在工作時間需要處理一點私人事情。我知道如何靈活處理這種情況,但是我覺得這種情況并沒什么大不了,我們重點要關注的是員工的產出。

5)開發人員想要最大幅度提高自己薪資的最好辦法,是在招聘的時候就已經協商好。一旦進入了公司,那么你就只能任憑他們擺布,除非你辭職。

想知道故事的結局嗎?經理回頭竟然給我額外增加了百分之二的薪水,而我的工作也更具挑戰性了。但是,有的時候,我在想,他這樣做的原因是因為我的據理力爭呢還是希望我能對那個工資單保持緘默。

最后一個教訓。好好檢查年度考核報告,確保沒有多放在里面的重要文件,哈哈。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/447334.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/447334.shtml
英文地址,請注明出處:http://en.pswp.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#是…