學什麼語言,比穿什麼衣服的問題更難,因為職業的背後,更多是抉擇而不是選擇,選錯一件衣服可以重來,而選錯一個職業所面對的結果,是非常讓人痛苦的。
本文是我對你想轉行IT行業前最真摯的建議。
任何事情,身處在外面,都有很多困惑和疑問。身處在內,都有很多無奈和憋屈。換個角度看世界,或許我們所面對的每一段經歷都是選擇與博弈的糾結與快樂,人生本來是不容易的。只不過多數時,你是感受不到不容易的。
對於任何一個人,你要清晰的認識到:任何人給你的建議或者方向,只是他站在自己體驗的角度給你的經驗性的建議,而最後你的選擇,除了深思熟慮還有孤注一擲。
既然是職業培訓,那一定是跟公司的需求相關,我們按照公司的邏輯來看分為四個大類:
上文中我們說到,《中國統計年鑑2015》數據顯示中國有200萬程式設計師,佔人口0.14%,結論是其實程式設計師並不多,相當少。另外,印度270萬程式設計師(最多的),也只佔人口0.2%的樣子。
在核心的實現層上,很多人說一個產品經理就可以折騰7個程式設計師,在產品經理沒有非常深刻的基礎底蘊的情況下,沒有考慮後端結構與實現的情況下,發出的或許很小的需求,就是一次程式設計師的大奔命。
就目前來看,我們把想法層、實現層、維護層、推廣層都定義為IT職業培訓的話,實現層和維護層是最穩定,但是是最辛苦的,因為大家都為了一個目標儘快的上線。
而對於想法層和推廣層來講,推廣費用是有限的情況下,如何做到推廣結果的最大化,這是一個非常難的問題。
所以這也就是很多人為什麼想做程式設計師的原因,雖然辛苦,但是高薪和暫時穩定。
RedMonk發布2017年程式語言排行榜:JavaScript/Java/Python進前三,PHP 滑到了第四名的位置,C# 和 C++ 並列第五,而 CSS 和 Ruby 又並列第七。
在非功利的層面來看,程式語言是一通百通的,一種學精之後其他語言都不是問題了。
業內人士稱,如果你將來想從事網際網路,你最好看看Python、Ruby、PHP、Javascript。如果你想從事商業應用,你最好去看Java和C#。如果你想從事移動開發,你可能需要去看Object-C。如果你想進微軟,就去看.Net。如果你想做嵌入式,可能需要學習C。
任何的選擇,其實都有一個固定的決策路徑。學什麼語言決定了就業去什麼公司,去什麼公司也就意味著什麼樣的待遇,什麼樣的待遇也就意味著什麼樣可能的未來。
趨勢這個事情,有時候像穿衣打扮流行方向,更多的機會屬於嘗鮮者,但是要考慮快速立足和商業結果,成熟的或許更靠譜。
語言本身,不是一種方向。程式語言是程式設計師擺弄計算機的工具。任何一種語言,亦或是一門技術,只要是運行在馮諾依曼體系的計算機上,要想鑽得深,逃不開的還是那些原理性的東西——數據結構、內存管理、多線程、作業系統、網絡協議等等。這些原理知識與語言本身無關,卻是用好每一門語言的基石。
有人說:「大多數人學習這一行,貌似都是覺得技術工作有趣又不單調,錢不少而有發展。實際上,哪有這麼簡單的事情。若是你沒有一顆寫代碼的心,就別學技術了,輕鬆又多金的工作其實挺多的..程式設計師這可是一條不歸路啊……」
你發現沒有,最終的答案是跟前文的判斷是一致的,那就是當局者迷旁觀者清。
最不靠譜但是又最真誠的建議是,如果你要為了就業而學習,那麼從招聘網站上統計5000個招聘廣告,得出需求最高的三種語言,選一門去學。
IT教育培訓機構課程設置考慮的是學生就業、企業的需求和教學成本。培訓機構課程第一門程式語言從十多年前的C語言開始(跟大學是一脈相承),轉而直接從所需要掌握的技術方向程式語言,如Java、PHP、Python等。
他們在技術更新及和企業銜接上都有非常成熟的經驗,對於零基礎或者想找到高薪工作的人是比較好的選擇。
入行的程式設計師月薪是真實的,BAT和二線網際網路公司的校園招聘的offer都是月薪過萬的。
中小微型公司、某些創業公司的福利不是很高,如果你在一二線城市從事IT,恭喜你,只需要你努力積累經驗,1-2年就可以達到月薪過萬的目標。
如果你在三四線城市,只是在公司裡幹點死活,做個小兵,基本上不太可能月入過萬了,可以考慮在網上接點外包什麼的,月入過萬也不是很難。
一二線城市的待遇的確比三四線城市的待遇高很多。再者就是有些程式設計師只會簡單初級的編碼,幹的活可能真的不值那麼多錢。
這個問題有一個關鍵點,就是行業。程式設計師是職位,去不同的行業待遇有很大差別。
你發現沒有,在這個簡單而複雜的世界裡,其實選擇也許並不多:
以上是我對你轉行到IT行業的一些建議,歡迎留言討論。