學習什么技術好?
問題比較廣泛,那我就以我作為互聯網軟件工程師的角度回答。
目前,科技日新月異,對于大多數IT專業相關的學生畢業在就業的時候會有面臨兩種選擇(就技術崗而言),1是傳統IT技術開發崗位 2是算法大數據相關研究崗位。傳統IT開發崗位主要有web前端開發、后端開發、移動端開發、游戲端開發等等。在web前端開發,主要需要掌握HTML、CSS、JS等編程語言,可以說我們所有在瀏覽器看到的界面都是web前端開發工程師的工作成果;后端開發,從所用的語言分為PHP開發、Java開發、python開發、Go開發、C++開發等,根據筆者了解,目前世界上絕大多數網站用的后端語言都是PHP開發,因為方便容易上手,便于快速迭代,可以滿足大多數中小企業網站的業務需求,Java開發主要用于高并發的大型企業項目,比如國內阿里巴巴的后臺技術棧基本就是基于Java,因為要處理淘寶和支付寶在一秒內數十萬計的交易量,后端開發簡單理解就是處理數據和與我們瀏覽器看到的前端界面進行數據交互的中轉站,是非常重要的;移動端開發主要是基于兩大操作系統,IOS和Android 系統,用的語言分別是Object-C和Java,對應的背后支持的公司分別是蘋果公司和谷歌,當然目前谷歌為了擺脫對于Java的依賴,由于甲骨文要跟谷歌收取Java的使用專利費,谷歌推出了自己的語言,kotlin用于開發Android應用,最近谷歌又退出了跨平臺的框架flutter,也就是一次開發然后可以編譯出在IOS和Android都可以運行的應用,此外跨平臺的技術還包括React Native、Weex等,其中flutter是谷歌開發和支持的,React Native是Facebook開發和支持的、Weex是阿里巴巴開發和支持的;游戲端開發,所用的語言包括Unity 3D等,我們很多手游就是用它開發出來的。算法大數據相關研究崗位主要有算法崗和大數據崗,目前非常火的方向,人工智能、自動駕駛、大數據、人臉識別、包括現在被很多人誤解的區塊鏈技術等高新技術,其實本質上都是基于算法和算法的迭代優化。算法崗的相關研究工作其實不局限于某一種語言,對他們來說,編程語言的工具屬性更加明顯,很多時候他們是構建模型,然后調參,這對于數學的要求會比較高,比如概率論、微積分等。最后談一下傳統IT開發崗位和算法大數據相關研究崗位的相同點和不同點:
相同點:基本上都對英語要求比較高,最簡單來說,目前知名的開發語言C、Java、Python、C++、Go、Html5等等幾乎都是老外發明的,包括各種框架和開發的規則都是,這意味著學習IT技術最好的一手資料都是英文,所以英語最好要好,很多翻譯的文本由于翻譯人員水平參差不齊,可能造成錯誤的理解。此外,就是都對腦力有一定要求,不是說特別難,而是說學習IT技術和從事IT技術會比較燒腦,當然這也是因人而異,大體上理科思維比較好的人學習IT技術會比較得心應手,當然很多文科生也會轉行甚至做的還不錯。
不同點:門檻不一樣,基本上從事算法大數據相關研究崗位的應屆生大多數要求碩士以上學歷,當然在IT以實力論英雄的行業,這不是絕對,很多本科生參加ACM算法能力比研究生都強,畢業起薪就50萬都有很多。還有起薪不一樣,傳統IT開發崗位的白菜價碩士應屆生大概是16000-18000,比如筆者知道的阿里巴巴、騰訊、百度、網易基本都是這個畢業白菜價,換算過來大概就是25-28萬年薪的樣子,sp的我們不說,因為這個因人而異。算法大數據相關研究崗位的碩士應屆生基本上都是年薪30萬以上,上不封頂,很多可以拿40萬,甚至50萬以上都有,很多碩士應屆生畢業一年做算法工作一年就可以掙40多萬,這對于大多數寒門子弟不得不說是改變命運的機會。
好了,大概就說這么多,由于個人水平和知識面有限,如有紕漏,還請諒解和改正吐槽,謝謝!