1. 程式人生 > >寫給即將進入IT行業的應屆生們——談談IT崗位

寫給即將進入IT行業的應屆生們——談談IT崗位

寫在前面的話,發現有的同學在糾結這個薪資(尤其是程式設計師的薪資)是否準確,是否具有代表性的問題,因此稍作編輯特別說明一下:
寫這篇文章的主要目的是為了讓新接觸行業的同學們能夠正確的認識到自己所的位置,同時為希望在行業中有所發展的同學們提供一個發展方向的參考。其薪資水平是以該職位的對應的能力水平所代表的能力價值來看的。某些突然炒的很熱的語言的那種新手薪資很高的情況,和研究生畢業生那種起薪相對較高的情況並不在其中。
另外,對於研究生同學,我想說的是,你們畢業的時候大多數的公司是把你們定位成一個開發(/測試)工程師的。如果你們拿自己來對比程式設計師的能力和薪資,不覺得有點汗顏,有點對不起你們的導師和學校以及你們四年的學習麼?
同樣的,有些同學抱怨畢業工作了好幾年了為什麼薪水不漲,為什麼沒有受到重用,希望這些同學可以對照著看看自己是虧了還是賺了,同時也仔細的回味一下,幾年下來自己究竟是進步了還是退步了,進步了多少,退步了多少。

同時也再次重申:希望大家不要被網上或者周圍人群的那種所謂的 IT行業的 從業人員多麼多麼好,多麼多麼風光所誤導而充滿這各種幻想——尤其是那種拿著高工資,坐在電腦前面悠閒的玩著遊戲 的那種幻想,又這種想法的人趁早去考公務員去——這個行業道路是一條充滿了挑戰和冒險,收穫和艱辛並存的挑戰之路,你的每一分收穫都是要實實在在的拿出你的努力去拼出來的

前面我們簡單的說了什麼是IT行業,這裡我們說說IT的各個崗位和相關所需要的技能:

現在IT的崗位很多大概分為了軟體工程,網路工程, 資訊管理, 多媒體設計幾個方向:

這裡我主要針對前三個方向來說說,尤其是前兩個方向。

首先我們來看看這幾個方向的崗位到底關注的是些什麼樣的工作:

軟體工程:包括開發和測試兩大部分,主要面向於軟體的開發和相應服務的提供,相對來說就業人數最多的方向,高階職位一般為系統架構師和分析師或其他同級職位。

網路工程:主要面向系統工程和網路工程行業的,立足於物理網路環境的規劃,建設,維護及優化等等,高階職位為網路規劃師,網路分析師或同級職位。

資訊管理:主要面向資料服務方向,通常關注大資料的儲存,檢索等方面,高階職位應是資訊系統分析師,或同級職位(我並不是該方向的,所以不太清楚)。

多媒體設計:平面設計,3D設計,音樂製作,CG動畫製作,畫漫畫,UI設計等等,高階職位不知,原則上你可以理解為一群和IT緊密相連的藝術家。

好吧,現在我們來談談相關的崗位和職業發展,我會重點以軟體工程的技術方向進行說明,之後會從網路工程的技術方向進行簡單一些的說明,目的是讓大家能夠理解大家的每個職業階段(當然,每個大階段裡還會有若干細小的劃分,那不是我所考慮的重點)在整個職業發展中的位置,以及大家如何才能更好的提升自己到下一個階段:

首先來說說軟體工程:

入門職位:程式設計師

對,就是在網上被批的體無完膚,被稱為碼農的程式設計師,作為IT行業的新入行者,待遇肯定是很低的,月薪從1000RMB~4000RMB不等,個別情況下會超過5000。其工作為編碼基本的程式碼實現相關模組需求,或者對其他人員已經完成的部分進行手動或自動測試(不要以為你是做測試的就不是程式設計師)。這個職位需求不高,會使用任意一門程式語言,甚至不會都可以,只要瞭解基本的計算機知識即可。簡單來說——只要你能搞清楚if-else和while是啥就行了。在其他行業裡,相當於搬磚頭的,或者操作工。

很多人以為,作為一個程式設計師,就已經進入IT行業了。對不起,我不想打擊你們,可惜,你們錯了,你們只是剛剛摸到了IT行業的門檻而已。

或許建築設計師不需要會砌磚頭,調水泥,產品設計師,不需要會操作機床;但是任何一個最基本的軟體設計師,一定會程式設計——這就是IT行業和其他行業的差別,如果你不能順溜的寫出程式,你根本就不算是IT行業的人。所以你也還沒有任何資格來評價IT行業如何。

而且這個為新手所設計的職業充滿了大量的加班,無聊,壓力,和你所不太喜歡的一切——除了那一行行美麗的CODE,如果你連CODE都不喜歡的話,那麼請你輕輕的關上IT這扇大門,因為他並不適合你。

進階職位:測試工程師 OR 開發工程師:

到了這一步,恭喜你第一次轉職成功,你現在算是真正的站到了IT的大門裡,這兩個職位的技能需求差不多——需要精通至少一門程式語言,熟練掌握基本演算法和資料結構,掌握網路相關知識,瞭解計算機原理和體系結構,瞭解編譯原理,熟悉開發和測試的模式和流程,關注點等等。唯一的差別在於,一個關注於測試,一個關注於開發。簡單來說:

開發工程師關心的是如何製造一個產品;而測試工程師關心的是開發工程師造出來的產品是優秀,優良,合格還是不合格。

從這裡開始,你的月薪通常會在6K~10K。你會發現突然之間,加班少了很多,CODE少了很多,你變得沉默了不少(你不會輕易的批評人家的程式碼,你經常在思考如何更好的寫程式碼)。

不用擔心,這是你必經道路,因為對於一個工程師來說,CODE已經不再是關鍵,關鍵在於如何去CODE,如何更好的CODE。同時你也開始思考生活,由於你的個人時間和可以支配的金錢變得充裕了不少,你會開始常常和朋友聚會,旅遊,打球等等,你會開始關注生活的品質(比如去電影院,偶爾購買一些奢侈品,買東西時不再選便宜的,而是選擇價格合適而價效比更高的)。

高階職位:系統分析師/架構師/需求分析師 等同級職位

到了這裡,你已經逐漸成為了一頭可愛的小牛,忽然回顧,自己,你會發現似乎已經很久沒有摸過程式碼了。偶爾寫寫專案上需要的小工具,會發現,效率似乎不減當年甚至更高了。你會發現你懂得了更多的東西——專案管理,軟體架構,需求分析,安全性,可靠性,可用性,擴充套件性,你發現你已經可以信手用兩到三門語言程式設計,即使是新的語言,你也能在很短時間內上手;你深深的理解著計算機工作的原理,體系的結構,網路工程的相關知識,所有的東西你好像是你本來就會的一樣。而在公司裡,你已經儼然是一顆小型太陽,你能夠輕鬆的解決大家解決不了的問題,你總是能夠出其不意的提出獨到而有效的見解。

你或許發現,CODE和怎麼寫CODE都不是太關鍵的問題,而如何去設計,從全域性進行考量才能行之有效。

而你的生活水平也在提高,你認識的人也都越來越大牛,你會忽然發現,有些人提出的問題很簡單,甚至有些人開始狂熱的追隨著你。

而再往後,你的發展已經無法用一個職稱,或者類似的東西能夠描述了的,你會逐漸體現你獨一無二的價值,你所說的和所作的或許會成為後人的經典案例分析,或者是大家模仿的物件。但是一切都建立在你自己為之不懈的努力和奮鬥的基礎之上。

而如果你走的是網路工程方向(薪資可以參考軟體工程方向):

入門職位:網路管理員OR同級職位

你的第一份職位甚至沒有什麼名字,你所做的事情無非是學著做做網線,在機房裡爬上爬下的看哪個端口出錯了。拿著儀器到處造哪裡可能出現了錯誤;更換線路,更換介面,更換裝置,等等諸如此類無聊的工作,你的薪水不會比一個程式設計師高出多少,你或許以為這就是你一個默默無聞的小兵的苦逼IT生活的開始。很不幸,你之所以如此苦逼,是因為你正在學習如果成為一個網路工程IT人,而不是因為你是一個網路工程的IT人。

進階職位:網路工程師

隨著你的的學習和工作,你或許已經理解什麼是計算機網路,你也能夠用程式語言輕鬆的寫出需要的網頁,小工具;你的個人主頁或許開始充滿人了人家無法複製的特點(個性的裝扮,個性的功能等等);你或許已經開始瞭解演算法和資料結構,你能夠輕鬆的理解網路協議的地位,當遇見網路故障的時候你不會立刻拿著儀器進行檢測,而是開始分析可能出現問題的地方和原因;你甚至能夠從一張拓撲圖中發現可能存在的問題和優化的方案。

而工作之外的時間,你也開始關注哪裡有好玩的,或許你會有一點點職業病,評價你看見的一切網路環境,思考他們的優缺點和改進空間。

因為,你已經到了你第一次轉職的時間,你即將成為一個真正的網路工程師,你的努力讓你足夠在網路工程的IT大軍中佔有一席之地。漫漫長路終於展現在你的面前。

高階職位:網路分析師或網路規劃師等同級職位

你終於已經不在對著拓撲圖抓耳撓腮了,你現在能夠根據客戶的需要相對輕鬆的勾畫出他們將會擁有的網路拓撲,你的心中會知道他們最中意的,價效比最高的網路方案以及這個方案大概會在什麼時候出現問題而需要重新設計,你甚至能夠根據他們的需要設計一套全新的私有協議供他們使用。

當網路出現問題時,你早已不會拿著儀器跑現場,你的首要工作是檢查並調整網路拓撲以及估算損失和減小故障帶來的損失。

你是團隊中的主心骨,你就是一本網路工程的活字典和工程指導書。同樣,開始有一群人會開始追隨著你的腳步,你開始和大牛們探討現有網路的問題,你開始關心如何更好的建設網路,你開始試圖對協議進行改進,而你的道路也越來越寬闊。

以上,是從技術方向,對一個IT人所面臨的,或者即將面臨的問題和困難進行的一些總結,其中主要來自於我自己的經歷和發展。希望對IT行業充滿著興趣的朋友不會因為眼前的困難而被嚇倒,迷失了方向。也希望那些對IT行業充滿了幻想的同學能夠及時的瞭解他們所講面臨的刀山火海。

和其他行業一樣,在最初的時候,這僅僅是一份工作,是你必須要去做的,是一份苦的不能再苦的技術活,是一杯沒有任何糖和牛奶的苦咖啡,不管你喜歡還是不喜歡,從你入行的第一天開始,這第一杯是你必須得喝的。

IT行業的道路固然是充滿了陽光了,一路上充滿了美景,但是也充滿了艱苦和崎嶇,在突破了之後一路的陰霾,雲霄之上,必然是一番廣闊的雲海。

如果你希望走管理路線,那麼你會在成為工程師之後轉而成為專案經理,走專案總監等工程管理方向的工作,那條道路同樣廣闊,但無論如何,你首先得過第一關。