CodeGym 教程

6級

程序員之路

你升級了! - 1

我認識一個女孩,她經常問為什麼程序員總是看起來那麼開心。答案簡單而令人費解:他們有自己喜歡的工作,而且有很多錢。

歡迎來到編程世界!

程序員賺大錢

首先讓我告訴你程序員的薪水。程序員的薪水如何運作,以及他們工作的最佳和最差的地方。那裡所有相互矛盾的信息會使非程序員很難單獨解決所有這些問題。

影響程序員賺多少錢的主要因素不是他或她的技能。這是他或她工作的地方。一個程序員的薪水可能是另一個程序員的 2 到 10 倍,即使他們都具有相同的資格!

你的資格時時刻刻都保持相當穩定。例如,一名程序員不會在一個月內變得經驗豐富一倍,然後以某種方式期望賺到兩倍的錢。但你很可能在一個月內更換工作地點,最終得到的報酬是以前的兩倍。當然,我永遠不會忘記我的工資在短短兩個月內翻了三倍,但那是另一個故事了。

現在,讓我們討論程序員工作的最佳場所。

三個因素最能影響公司支付給程序員的金額:

1)用人單位是否為軟件公司,即主要產品為軟件的公司

2)公司是專注於國際市場還是國內市場

3) 公司的所有者是外國公司還是國內公司。

在考慮您希望從開發軟件中獲得多少報酬時,請務必注意潛在雇主的位置。例如,如果你住在德累斯頓,你開發軟件的報酬可能比你住在紐約的朋友低十倍。在這種情況下,上述因素在起作用。

實際數字

由於世界不同地區的薪水不同,我建議以具有 5 年經驗的高級 java 開發人員的薪水為起點,並將其稱為“5 年最高”。下面的所有數字將作為此金額的百分比給出。以下是世界不同城市“5 年最高”工資的一些示例:

城市 高級Java開發人員,5年經驗
舊金山(美國) $160 000
紐約(美國) 125 000 美元
倫敦(英國) 120 000 美元
柏林(德語) $110 000
基輔(烏克蘭) $40 000
班加羅爾(印度) $31 000

下面顯示了具有 5 年經驗的高級 Java 開發人員根據他工作的公司可以獲得多少:

等級 工資,“5 年最大值”的百分比 描述
1個 5%-10% 在薪酬水平最低的情況下,我們有些公司的主要產品或業務不是 IT。這些公司是國有企業,通常專注於國內市場。例如,稅務機構或其他國家組織的 IT 部門。
2個 30% 低於平均水平——各種非政府機構(例如銀行等)的 IT 部門。
3個 50% 平均 - 軟件開發公司。
4個 80% 高於平均水平——有外國客戶的軟件開發公司。
5個 100% 在最頂端——客戶和所有者是外國實體的軟件開發公司。這樣的公司很少。他們很少有職位空缺,而且通常很難找到這些工作。但是,它們確實會不時出現。
你升級了! - 2

這件事最奇怪的地方是什麼?

一半的程序員為 1 級和 2 級公司工作。

你想知道收穫嗎?

3 級和 4 級公司有數百個職位空缺。他們願意提供更高的工資和通常更好的工作條件。

我認識兩個初級 Java 開發人員:他們中的一個找到了一份工作,薪水是“5 年最高薪水”的 3%(在 1 級公司),另一個的工作薪水是“5 年最高薪水”的 30%(一級公司) 4). 為什麼賺的少?

對優秀程序員的需求超過了可用的供應量,因此在薪水不高的公司擔任程序員毫無意義!

結論 1: Java 開發人員(有任何經驗)的平均工資是“5 年最高”工資的 40%-50%。

結論 2:如果你去 3/4 級公司而不是 1/2 級公司工作,你 5 年的平均工資將是“5 年最高”工資的 90%-110%。

如果你不停下來,你能做什麼?

此外,如果您通過不斷投資於您的編程教育來繼續提高您的編程技能,那麼從今天開始,您賺到的錢將增長如下:

你升級了! - 3

計劃

0-3個月(學生)

你對編程知之甚少。也許您已經在高中和/或大學學習了一些編程知識,但您的知識還很膚淺。

您的任務– 通過學習 Java 編程語言來學習如何編程。

您的目標– 在不低於 3 級的公司找到一份初級 Java 開發人員的工作。

請記住,在計劃的前三個月內,您不會得到任何報酬。您將只專注於學習 Java。

還要記住,在未來,當你有了家庭並且可能背負了很多金融債務時,改變你的職業會變得更加困難。如果發生這種情況並且你最終想改正錯誤,你將不得不存一年的錢來資助你的職業轉換。要點是要避免愚蠢的職業錯誤。

3-15 個月(初級 Java 開發人員)

在您職業生涯的這個階段,您應該是一名 Java 程序員。您對語言和編程技能的理解應該每天都在進步。但現在不是放鬆的時候。在你吃老本之前,你還有更多的東西要學。

您的任務– 學習作為中級開發人員所需的技術。這些是什麼技術?世界在變化。讓我給你一些建議。找到一些在線發布的 Java 程序員職位空缺,並查看職位要求。我還建議您閱讀 Bruce Eckel 的書“Thinking in Java”。

在作為初級 Java 開發人員工作的第一年,您的目標是成長為中級 Java 開發人員的水平。沒有人說這很容易,但對於一個以目標為導向的人來說,這是可能的。它會立即將您的工資增加到“5 年最高工資”的 40%(舊金山和倫敦為 64,000 美元,班加羅爾為 12,000 美元)。

作為程序員工作的第二年(中級 Java 開發人員,1 級)

您在過去的一年里工作得很好,現在您是一名中級 Java 開發人員。賺取高級 Java 開發人員薪水的 50% 就可以過得很好。您在工作中被分配了一些嚴肅的任務,並且您的經驗正在顯著增長。你將在兩三年內成為高級 Java 開發人員。不用著急。無論如何,你的工資不會快速增長。

您的任務– 學習設計模式並閱讀 McConnell 的“代碼大全”。提高代碼質量並培養與團隊合作的能力。您可能會規定每月閱讀一本 IT 書籍。然後在四年後,你將比你的同事聰明 50 本書。請務必不要推遲學習,因為您以後很可能再也沒有更多的空閒時間,尤其是當您開始組建家庭時。

你的目標——選擇一些你想作為高級開發人員專攻的技術。無論如何,您將無法學習所有內容。在一個狹窄的領域成為大師是個好主意。

你升級了! - 4

作為程序員工作的第 3 年(中級 Java 開發人員,2 級)

您現在是一名經驗豐富的中級開發人員,並且正在考慮成為一名高級開發人員。它既令人愉快又享有盛譽。你的工資超過“5 年最高限額”的 60%(班加羅爾 1.8 萬美元,基輔 2.4 萬美元,柏林 6.6 萬美元,紐約 7.5 萬美元)。從這一刻起,對像您這樣的專業人士供不應求。你總能在幾天內找到工作,而且你的收入不可能比現在少。當然,前提是您不做任何愚蠢的事情。

你的任務——繼續研究你選擇的技術。繼續努力工作,不是為了你的雇主,而是為了你自己。要求參與具有先進技術的項目,例如大數據。不管怎麼說,你每天都會在辦公室工作八個小時,所以你可能會得到更多的錢,更重要的是,獲得你將來需要的寶貴經驗。

你的目標——找到一份新工作。好人無處不在。在一家新公司,您將從事新項目和新技術。不要太早依附於辦公桌。如果您仍在 3 級公司工作,請開始考慮轉到 4 級公司。第五層,雖然看起來很有吸引力,但此時仍然遙不可及。

作為程序員工作的第 4 年(高級 Java 開發人員,1 級)

您現在是一名高級開發人員。恭喜。也許,你不值得,你覺得。不過,我還是要祝賀你。你是否配得上你現在的位置並不重要。重要的是你將來配得上它。

我想你會同意最好是找到一份好工作然後成長到所需的水平,而不是相反。

我希望你沒有忘記我每月讀一本書的建議?現在任何學生都會羨慕你的知識和技能。更有可能的是,他會為他們祈禱。試想一下:您正在賺大錢,接近“5 年最高”工資的 90%。你可能還很年輕。世界就在你的腳下。

您的任務– 重新評估您選擇的技術。也許你需要改變你的專業。世界變了,技術變了,你在過去兩年裡學到了很多知識。你現在的選擇將在接下來的幾年裡一直伴隨著你。是時候選擇您最喜歡的技術了。

你的目標——選擇你進一步成長的領域。有許多。太多無法列出,但您現在必須選擇。今天的小變化會在未來產生大的變化。

程序員工作第 5 年(高級 Java 開發人員,Level2)

你已經確定了你的未來,並正在努力實現你的夢想。有了正確的專業化和你前進的願望,不久你就會看到結果。恭喜。我很高興世界上又有一個人現在對他或她的職業生涯感到更快樂。

這裡還有一個好建議:人們經常高估一年內可以取得的成就,而低估五年內可以取得的成就。回想一下你生命的最後五年。這是真的,不是嗎?

你的任務——不要做出愚蠢的決定。不要對你的目標變得懶散。

你的目標——選擇一個區域並繼續前進。你以為這就是結局了嗎?還記得你從學校畢業的時候嗎?這不是結束——這只是開始。

未來專業化

你升級了! - 5

您可以成長為技術專家(上層分支)、經理(下層分支)或專業/獨立顧問(中層分支)。這僅取決於您的喜好。

程序員的職業

編程不同於其他職業。通過編程,您不必成為經理就可以賺到很多錢。在很多情況下,高級程序員的收入比他的老闆還多。您獲得的經驗越多,您與管理層的關係就會越快地從“工人-經理”轉變為“超級明星-代理”。知道自己價值的程序員可以選擇最有趣的項目來從事或填補最有趣的職位空缺。讓我們為所有實現這個夢想的程序員鼓掌吧!

一個人需要做什麼才能成為世界範圍內高需求的頂級程序員?您需要在最新的熱門技術方面擁有豐富的經驗。你是怎樣做的?繼續閱讀。

你升級了! - 6

一旦你找到第一份程序員的工作,就會發生兩件事,甚至可能你都沒有意識到。

1.你將快速獲得真實項目的工作經驗。一年的程序員工作可能比五年的大學學習給你更多的相關知識和技能。這段經歷經常在 IT 職位空缺中被提及:“我們需要一名具有三年工作經驗的 Java 程序員”。

2. 你將每天八小時學習新技術,你會得到報酬。很難低估這一點的重要性。有時,這些新技能非常有價值,您可能會免費工作,甚至花錢來獲得它們。如果你深思熟慮地選擇你的項目,你將在職業階梯上攀升。

我應該選擇什麼?

如果你不知道未來哪些技術對你有用,你可能會開始根據“我喜歡這個”和“我不喜歡那個”,或者“這個很流行”和“這個很流行”來選擇技術不時尚”。這種方法完全取決於運氣。所以最好提前知道你想在哪裡結束。

程序員可以通過多種方式取得進步。我會提到其中的一些並給你我的意見。但不要把我的話當成唯一的真理。我只是提供一個簡化的外觀,讓你更清楚。

做一個永遠的程序員

如果你最喜歡做的事情是寫代碼,那麼你應該成為高級開發人員,然後是技術負責人,然後才是架構師。您也可以簡單地作為一名程序員工作 50 年。高級程序員和技術負責人的薪水往往高於他們經理的薪水。你不能輸。

成為一名經理。幸運的你,你很特別。

你已經投向了敵人。只是在開玩笑。如果你覺得自己有很好的組織能力,那麼這可能是你的道路:團隊領導,然後是項目經理。這使您有機會成為一名高管,如果您想開辦自己的企業,這將對您有所幫助。你想要那個,不是嗎?

搭順風車。

你升級了! - 7

如果你碰巧有家庭和孩子,你可能正試圖在一個經濟穩定的國家過上平靜而富裕的生活。您可能正在考慮移居/移民到加拿大、美國、瑞士,甚至澳大利亞。你有很好的技能和高需求的職業。您不必從頭開始,您可能會成為一名薪水豐厚的高級 Java 開發人員。那不會太糟糕。

看世界

假設您還沒有家庭並且想要旅行。加班適合你。尋找客戶,協商價格(每小時 20-50 美元),拿起筆記本電腦,然後隨時隨地工作!你將賺到足夠的錢在世界任何地方生活。為什麼不現在就開始實現你的夢想呢?

愚蠢的人浪費他們辛苦賺來的錢。聰明人會省。未來的程序員投資於他們自己和他們的專業教育。IT 專家的前途一片光明!