IT行業都有哪些職位,初學者該如何選擇,才能夠快速進入這個行業?

薄君夫


IT行業的公司組織架構和大多數公司一樣,有管理、行政、運營、技術、市場、銷售等許多崗位,今天我們主要討論一下IT行業的技術崗位。就大方向而言,技術崗位有研發、數據庫和測試三個方向;從一個網站的整體來看,則分為服務器端與瀏覽器/APP端,如圖所示。

典型的互聯網行業的技術組成圖

很多新人在準備入行時,會有按照大公司的招聘職位描述確定學習目標的想法,事實上,這是一個誤區。因為一般在大公司內部,按組幹活的情況是常態,每個組負責整體項目中的一個或幾個模塊,再到個人專屬負責更小的部分;並且,由於不同公司之間的業務與使用的技術棧不同,即使是相同的崗位對技術人員的具體技能要求也可能大相徑庭。

所以說,除非是認準了某家公司的某個崗位非去不可,否則不建議對著職位描述上的技能去學習,很多行業老手也不一定能滿足招聘頁面上的所有技能需求。

接下來從三個大方向來說一下IT行業技術相關的職位有哪些。

一、對編程能力要求最高的研發類崗位

研發工程師主要負責公司產品的開發,對編程能力要求最高,如果確定要做研發崗,入行前最好明確將來是要向web前端、web後端還是全棧等方向發展,以便做好長久的職業規劃。

我們以觀看視頻網站為例,來簡單闡述一下客戶是如何看到一個視頻的:

客戶通過瀏覽器/APP告訴你,他要看一個視頻,你在收到客戶的請求後,把視頻從你的機器(服務器)中找到然後發給客戶。整個流程完成後,也就是完成了一次互聯網服務。

在上面的流程中,客戶所能看到的——可以向你發起請求以及最終收到你發回給客戶信息的界面,叫做“前端”。在前端領域,有兩件事情要做:界面的設計與實現。設計界面的人,並不需要直接面對技術,而前端開發人員,則是需要用技術手段將界面設計實現。相對於前端,服務器部分我們習慣稱其為”後端”。後端指:接受前端發來的請求、處理請求並把相關的內容發回。這就像是完成了一次對話。

1、前端工程師

前端領域有兩類,一類基於瀏覽器,另一類基於移動端的APP。對於瀏覽器,前端開發人員掌握HTML、CSS、JS(在前後端分離的構架開始流行的今天,PHP已經不再是必須了)就足以應對前端工作;對於APP,前端開發人員則需要熟練掌握安卓與IOS的開發語言。

2、後端工程師

後端服務可以使用的語言有很多,如Java、Python、Go等,對於初學者,優先推薦學習Java。Java已經發展了多年,有許多現成的網站框架可以使用,相關技術足夠成熟完備,學會Java之後,Python與Go這類新興語言的學習就更加會得心應手,融會貫通。

數據庫部分,目前主流的數據庫所使用的語言叫SQL語言,所以志在後端的新手入行,Java+SQL的學習方案相對來說實用性更高一些。

後端工作,只會編程實現後端服務是不夠的,還需要學會管理和維護後端,也就是說,至少要學會基本的Unix-like系統(主要是Linux)命令與腳本語言,如Bash。如果這些都掌握了,那麼,恭喜你,你基本上可以成為一名合格的後端開發人員了。

當然,如果有更高的追求,可以考慮學習項目架構的相關技能,目前業內在這方面常用的是Docker。把以上技能運用熟練之後,便可以嘗試挑戰如產品經理、技術總監等更高的職位,成為管理或者技術難點攻關的角色。

3、全棧工程師

全棧工程師可以通俗地理解為前後端都可以做的技術人員。全棧工程師熟練掌握多種技能,具有全局性思維,能夠獨立完成產品,是許多創業公司優先選擇的熱門人才。

以上研發工程師裡要求最高的是架構師和算法工程師,架構師需要豐富的大型項目經驗,一般不提供初級崗位;算法工程師標準比較高,要麼精通數據結構和算法,能夠迅速破解面試官給出的算法題,要麼是你在某些方面的算法進行過深入的研究並且取得了一定成就。由此說來,初學者想成為算法工程師,對天賦還是有一定要求的。

二、數據庫領域

如果想攻數據科學方向的話,主要使用的是統計學知識和機器學習算法。如果數學基礎比較薄弱,又不太喜歡數學的話不建議選擇這個方向。並且,數據科學家也比較看重經驗,新人可以在kaggle上找一些工業級的數據和項目進行練手。

三、測試工程師

公司在招聘的時候,對於新人測試工程師一般來講不會有什麼具體的技能要求,很多時候並不會要求你有測試經驗或者會用測試工具。面試的時候會考察數據庫、計算機網絡等基礎知識,並且會要求寫一些算法題,測試工程師的算法題相對不難,熟練掌握數據結構和基礎算法就能應對。

綜上,0基礎入行,首先,學一門主流編程語言,目標是研發工程師或者測試工程師的話建議是Java、 JavaScript 、C++(非科班出身可以不考慮)、Python(強烈建議會Python,但不建議只會Python);其次,瞭解計算機組成原理,這是一個IT從業者必備的基礎素質。

磨刀不誤砍柴工

最後再給新手提一些忠告:如果基礎不紮實就去追趕新技術,會越追越累,對初學者而言,重要的並不是新技術,而是一顆耐心,只有腳踏實地地把基礎打好,才是王道,打好基礎後,也許你會發現新技術“不過如此”。

感謝閱讀,祝大家學有所成!步步高昇!


慕課網


既然是新人,關於這個問題,你需要首先了解一下一款互聯網產品的生命週期。

互聯網產品的生命週期

我們不妨把開發一個網站或者一個App的過程來進行簡單的分解和梳理。和傳統的軟件開發,從需求分析到軟件設計與實現不同,這裡我們講究快速迭代。

1、首先你得有個改變世界的想法吧

2、想法是在腦袋裡的,首先要變成大家都能看得見理解得了的東西,那就是原型設計了,這一個步驟可以進一步細分為:

信息架構設計:如何組織整個系統的信息。

用戶交互設計:用戶如何與系統進行交互,大到整個操作流程,小到一個觸控手勢設計。

視覺設計:Logo的設計,顏色的設計,總之怎麼讓用戶看起來更爽。

3、原型設計就可以作為開發團隊的輸入了。我們需要把原型變為實際可用的產品。我們可能要去做服務器端的開發和做客戶端的開發。

你的應用最終體現為一個App或者網站,那比如說我們在淘寶上購物,我們可以通過PC去訪問淘寶的網站,也可以使用淘寶提供我們的App,通過安卓手機或者蘋果手機來完成網購。所以你需要根據實際情況來選擇一個或者幾個平臺,來開發Web應用、iOS App或者Android App。值得一提的是公眾號開發,是一種好的驗證想法的方式,居家旅行、MVP(Minimum Viable Product)開發、殺人滅口的必備良品。公眾號的開發在技術範疇上說術語Web開發。

服務器端的開發是可選的,比如說我們做一個鬧鐘的應用,可能不需要去連接服務器端,完整的功能不需要網絡就能完成。但是現在的應用一般是有服務器端的,這樣你才有更多的可能性和發揮空間。如果只是本地的話,意味著這個應用完全跟外界是沒有關係,你一定要去建立聯繫才能讓你的應用去發揮最大的價值。即使是鬧鐘應用,也可以看到做得非常好的產品,它們基於時間提醒將你的行為習慣存儲到雲端,幫你做規劃和分析,這樣是不是就給一個小小的App帶來的無限的想象空間了。別忘了,互聯網的最大意義在於連接。而上面提到的Web開發,類似於一個App有手機端開發和服務器端開發,包含了Web前端開發和Web後端開發。

4、做完開發之後,對於服務器端我們要進行部署。在本地計算機上上完成了開發,別人也是訪問不到我們的應用的。那別人要怎麼樣才能訪問到我的應用呢?需要把它放到全世界都能訪問的服務器上去,而現在我們通過像Amazon EC和像阿里雲這樣的雲計算基礎設施,我們能夠很方便的擁有一臺能夠讓別人訪問的計算機。我們可以按需購買雲端的服務器,這也是雲計算時代給我們帶來的一個便利性。把後端代碼去部署到雲端之後,你的客戶端你要進行應用的分發,你要去提交App Store,或者提交到各種Android的應用市場,你提交上去的時候,用戶就能下載了,用戶下載之後應用就最終就送達了用戶。Web應用不需要經歷客戶端分發的過程,用戶有一個瀏覽器就能從服務器上獲取所有內容和功能,所以說HTML5跨平臺嘛。當用戶將App下載安裝之後,它在產生交互的時候,應用就會跟我們部署在遠程機器上的程序進行通訊,最終形成應用的完整體驗。

這就是開發的整個過程,而這個過程也是不斷迭代的。上面這張圖更多關注產品層面,繼續延展這個過程,我們改變世界的道路也長著呢。

5、產品開發完了不是扔一旁不管了,你怎麼樣讓別人知道你的App和網站呢?所以接下來你需要推廣和營銷了,你得通過軟文、郵件營銷EDM、新媒體(微博微信)、地推、補貼、廣告、SEO等等各種大招去讓用戶感知到你。

6、用戶來了,你得經常搞點活動活躍下用戶氣氛吧,忠實的用戶見個微信群聽聽用戶聲音,或者舉辦個線下活動,沙龍什麼的,甚至給他們拍個微電影啥的,把他們感動得稀里嘩啦的,產生強烈的歸屬感,打死也不離開你的產品,天天用,還幫你傳播。這叫運營。

7、以上所說的整個大過程也是不斷迭代的,那麼要有人來總體上把握朝什麼方向發展,如何擴展產品進入開闢新的戰場,通過什麼方式賺錢,判斷大方向上做什麼不做什麼,怎麼找到你這樣希望進入IT行業的一流人才完成以上工作,怎麼找到錢來支撐這整個過程。

8、產品做得更大了,IT公司也跟任何公司一樣,自然也有銷售、財務、行政、法律各方面的問題吧,也得有人做。

IT的職位

說完了這個過程就可以說說有哪些職業了。

搞1和7的通常是CEO或者創始人。

第2部分的工作一般稱為設計師,細分一下有信息架構師、交互設計師、視覺設計師這些職位,你應該基本清楚他們幹嘛的了

對第1部分、第2部分中的某些部分比較有Sense的人,可以做產品經理。(自己身為一個水貨產品經理,第一次回答竟然漏掉了“產品經理”這個關鍵詞,感謝

@王子

提醒 )

第3部分的工作一般稱為碼農,根據工作描述可以有:iOS程序員、Android程序員、Web前端程序員、Web後端程序員。

第4部分的工作也屬於碼農範疇,叫運維工程師。

第5、6部分一般就是營銷與運營工作,叫法上頗多,互聯網招聘網站上的title甚多,營銷專員,營銷經理,營銷總監,運營類似。這部分工作也還能細分,活動運營、內容運營、數據運營、新媒體運營。碼農也偶爾回來搶飯碗,而且搶的很有逼格,叫做Growth Hacker。營銷和運營過程中基於數據來分析產品與用戶是一個重要的手段,而蒐集數據分析數據是碼農們很擅長做的事情。

那麼一個問題來了,一個小團隊要搞一個產品去哪找那麼多人啊? 這就是傳說中的全棧工程師閃亮登場了,這種人傳說以一頂十,拳打iOS與Android,腳踢Web與運維,前後端信手拈來。最近還有升級版本2.0:全棧增長工程師。這種大神除此之外還精通數據分析、產品、營銷,新生渠道和業界趨勢瞭如指掌,同類產品與上下游生態洞若觀火,不得了。不過咱們不妨單點突破,找好其中一個角色進入IT行業,咱也還是專注單點之後再去想顛覆世界吧。

市場、銷售、行政、HR、法務對於IT行業也有不同於其他行業的特點,這應該不是你關注的職業了。

其實職位的羅列你去互聯網招聘網站上更加全面,一共可能也就幾十個類目吧,希望你看到這裡,對這些職位跟一個互聯網應用的生命週期結合起來,這樣有助於你判斷,也是我碼字的真正意圖所在。

如何選擇

如何選擇這個事情,今天不細說啦。總體來說跟你個人定位和個人特質有關係了。你是左腦型還是右腦型的人,還是左右腦都發達?你是喜歡面對電腦,還是喜歡跟人打交道?你是希望一份穩定的工作,還是期待一個折騰的人生? 回頭看看上面的內容,跟找妹子一樣,總有適合你的一款吧。just follow your hart。


我只想創業


it行業是一個比較寬泛的行業。一般從前端開始區分的話,有最基本的UI設計師,web前端工程師,後端開發工程師(java PHP .NET等等)。數據工程師,運維工程師、安卓工程師 unity3D遊戲工程師等等。

認識自己,精準選擇。


想要從事it行業之前,你要去認識自己有沒有面向對象語言的基礎。對於選擇去做it行業,或者說去做有關軟件編程開發的行業很多人,對面向對象這個理解,都是很困難的。因為對於編程語言而言,生活中的實例物品都需要去用代碼在軟件中實現。這就是常說的軟件開發中有一句話,叫萬物皆對象。你有一個良好的編程基礎的話,從事IT行業是比較容易的。如果0基礎自學編程難度很大。需要努力和堅持。首先你要理解編程語言,網上有很多視頻自學。可以搜一下。比如慕課網 或者百度雲盤也有資源 傳智播客、黑馬視頻等等。

關於IT行業的認識

互聯網發展到今天it行業算是一個高薪的行業。但是針對所有行業,你首先要去認知這個行業是否合適與你。你可以在網上去搜索一些基本的編程自學的教學視頻。然後針對自學視頻進行練習和實踐,編程語言是一門非常枯燥,而且空洞的語言,因為it行業與互聯網行業的發展。 催生了很多it培訓機構。我所知的是,全國這些培訓機構大多數培訓的時間為四個月。費用為19800到兩萬不等。培訓結束後會引導就業。但不是真正的安排就業。這個意思就是培訓機構會根據你的本階段的學習能力和你的學歷來去安排和你對等一些項目公司面試。拿了西安來說的話,七月份開始上課,11月份正式畢業。11月份月初的時候就會有項目公司在培訓機構裡面進行內部招聘。在這裡,我要強調了一點是你大學所學的專業以及你的學校,學歷是非常重要的。這個牽扯到能不能有資格去面試中國500強或者世界500強的所有軟件開發的項目公司。

最後,我希望所有想從事it行業的朋友,首先你要確定你能否適合這個行業。而不是盲目的去選擇一個行業。編程這個工作不是所有人都適合去做的。謝謝。


分享到:


相關文章: