互聯網八大技術崗位分析:前端+後端+移動+測試+大數據+管理等等

互聯網史上最全技術崗位詳解,包括:前端研發、後端研發、移動端研發、大數據、項目管理、測試、運維、技術管理等。

互聯網八大技術崗位分析:前端+後端+移動+測試+大數據+管理等等

架構師

每個產品線都有架構師,在技術平臺部門也需要技術平臺的架構師。

架構師負責設計系統整體架構,從需求到設計的每個細節都要考慮到,把握整個項目,使設計的項目儘量效率高,開發容易,維護方便,升級簡單。

  1. 架構分析:從功能性的需求中識別出需要增加的非功能性需求,好滿足性能、可擴展、集成、安全、可運維、高可用、易部署、易更新。並且識別非功能型需求後,還要做技術選型、技術架構風險識別、技術實現工作量評估。
  2. 架構設計與實現:完成非功能性模塊的架構設計、接口設計、代碼實現,所以,需要的是有代碼實現能力還要有架構思維的工程師,而不是畫PPT的工程師。
  3. 業務架構設計與實現:需要對跨系統的接口進行識別、實現、維護,需要對能寫成公共代碼類庫的進行分析、識別、接口設計、實現、變更維護。
  4. 重構:架構師需要經常做Bug分析、非模板性和公共類庫代碼檢查,以發現代碼腐爛程度,以發現還有哪些代碼沒有做出很好的架構與精心的代碼設計。所以,重構是經常性維護髮生的,不是攢到某一刻動大手術,甚至推翻重做,那就不叫重構了。

前端開發工程師


互聯網八大技術崗位分析:前端+後端+移動+測試+大數據+管理等等

前端工程師

  1. 使用Div+css並結合Javascript負責產品的前端開發和頁面製作;
  2. 熟悉W3C標準和各主流瀏覽器在前端開發中的差異,能熟練運用DIV+CSS,提供針對不同瀏覽器的前端頁面解決方案;
  3. 負責相關產品的需求以及前端程序的實現,提供合理的前端架構;
  4. 與產品、後臺開發人員保持良好溝通,能快速理解、消化各方需求,並落實為具體的開發工作;
  5. 瞭解服務器端的相關工作,在交互體驗、產品設計等方面有自己的見解。

後端開發工程師


互聯網八大技術崗位分析:前端+後端+移動+測試+大數據+管理等等

讓系統功能可用、易用、安全,支撐網站穩定運行,解決數據存儲及調用問題等等,這些都涉及後端工作內容。網站後端包括服務器、應用、數據庫等,後端開發者構建並維護這些組件,為網站提供多方面支持。

為了讓服務器、應用、數據庫能夠彼此交互,後端工程師需要具有如下技能:

  1. 用於應用構建的服務器端語言: PHP, Ruby, Python, Java, .Net 等;
  2. 數據相關工具: MySQL, Oracle, SQL Serve;
  3. PHP框架: Zend, Symfony, CakePHP;
  4. Java框架:SSH、SSM;
  5. 版本控制工具:SVN, CVS , Git 等;
  6. 還要熟練使用 Linux 作為開發和部署環境。

移動開發工程師


互聯網八大技術崗位分析:前端+後端+移動+測試+大數據+管理等等

IOS開發、Android開發

移動客戶端的開發類型主要是三種:

Native App(原生APP)

也就是完全使用移動設備系統語言寫的客戶端,iPhone iPad就是純Object-C,安卓就是純JAVA, 就是用戶看到的界面啦體驗到的交互啦都是原生的。這是性能最棒的開發方式,但靈活性就沒下面的好。

Web App,

這個就是在移動瀏覽器裡打開的,純HTML+CSS+JS,說白了就是個網頁,只不過非常的富應用,比如手機瀏覽器訪問的GMAIL啥啥的。但說白了就是在瀏覽器裡打開的頁面。

Hybrid App.[HTML5 in mobile devices]

實際上是使用原生寫了一個容器,然後使用HTML+CSS+JS來實現用戶界面和交互。

大數據崗位


互聯網八大技術崗位分析:前端+後端+移動+測試+大數據+管理等等

大數據主要有以下職位:

1.數據分析師Data analyst

指熟悉相關業務,熟練搭建數據分析框架,掌握和使用相關的分析常用工具和基本的分析方法,進行數據蒐集、整理、分析,針對數據分析結論給管理銷售運營提供指導意義的分析意見。

2.數據架構師Data architect

對Hadoop解決方案的整個生命週期進行引導,包括需求分析,平臺選擇,技術架構設計,應用設計和開發,測試和部署。深入掌握如何編寫MapReduce的作業及作業流的管理完成對數據的計算,並能夠使用Hadoop提供的通用算法, 熟練掌握Hadoop整個生態系統的組件如: Yarn,HBase、Hive、Pig等重要組件,能夠實現對平臺監控、輔助運維繫統的開發。

3.大數據工程師Big DataEngineer

收集和處理大規模的原始數據(包括腳本編寫,網頁獲取,調用APIs,編寫SQL查詢等);將非結構化數據處理成適合分析的一種形式,然後進行分析;根據所需要的和專案分析商業決策。

4.數據倉庫管理員Data warehousemanager:指定並實施信息管理策略;協調和管理的信息管理解決方案;多個項目的範圍,計劃和優先順序安排;管理倉庫的各個方面,比如數據外包,移動,質量,設計和實施。

5.數據庫管理員Database manager

提高數據庫工具和服務的有效性;確保所有的數據符合法律規定;確保信息得到保護和備份;做定期報告;監控數據庫性能;改善使用的技術;建立新的數據庫;檢測數據錄入程序;故障排除。

6.商業智能分析員Businessintelligence analyst

就工具,報告或者元數據增強來進行傳播信息;進行或協調測試,以確保情報的定義與需求相一致;使用商業智能工具來識別或監測現有和潛在的客戶;綜合目前的商業只能和趨勢數據,來支持採取行動的建議;維護或更新的商業智能工具,數據庫,儀表板,系統或方法;及時的管理用戶流量的商業情報。

7.數據庫開發員Databasedeveloper

設計,開發和實施基於客戶需求的數據庫系統;優化數據庫系統的性能效率;準備設計規範和功能單證的分配數據庫的項目;對數據庫系統進行空間管理和容量規劃;建立數據庫表和字典;參與數據庫設計和架構,以支持應用程序開發項目;執行數據備份和檔案上定期;測試數據庫,並進行錯誤修正;及時解決數據庫相關的問題;制定安全程序,以保護數據庫免受未經授權的使用;評估現有的數據庫,並提出改進建議的執行效率;開發用於數據庫設計和開發活動的最佳實踐。

項目管理


互聯網八大技術崗位分析:前端+後端+移動+測試+大數據+管理等等

協調技術、產品、運營等部門把產品更好的實現,大部分公司叫項目經理,一般屬於技術部門。由於現在的互聯網發展太快,還衍生出了敏捷教練這個崗位,幫助技術、產品、運營部門更好的協作,通過引入敏捷開發的方式優化產品研發流程,以及解決部門之間的協調問題等。

軟件項目經理

  1. 基本職責就是確保項目目標的實現,領導項目團隊準時、優質地完成全部工作。
  2. 與客戶溝通,瞭解項目的整體需求。並與客戶保持一定的聯繫,即時反饋階段性的成果,和即時更改客戶提出的合理需求。
  3. 制定項目開發計劃文檔,量化任務,併合理分配給相應的人員。
  4. 跟蹤項目的進度,協調項目組成員之間的合作。
  5. 監督產生項目進展各階段的文檔,並與QA即時溝通,保證文檔的完整和規範。
  6. 開發過程中的需求變更,項目經理需要跟客戶瞭解需求,在無法判斷新的需求對項目的整理影響程度的情況下,需同項目組成員商量,最後決定是否接收客戶的需求,然後再跟客戶協商。確定要變更需求的情況下,需產生需求變更文檔,更改開發計劃,通知QA。
  7. 項目提交測試後,項目經理需瞭解測試結果,根據測試的bug的嚴重程度來重新更改開發計劃。
  8. 向上級彙報項目的進展情況,需求變更等所有項目信息。
  9. 項目完成的時候需要項目總結,產生項目總結文檔。

敏捷教練

  1. 參與公司產品工程與項目管理體系的建立和完善;
  2. 在項目開發過程中,能夠提供必要的培訓,例如精益創業,用戶研究,產品規劃,面向對象設計、持續集成、需求拆分等;
  3. 對產品團隊進行日常操作輔導,幫助產品經理識別問題和風險,在軟件交付和質量保證方面,進行持續改進;
  4. 進入團隊進行產品管理相關的度量,定期完成分析報告,向上級領導彙報,支持事業部和公司的管理與決策;
  5. 協調各部門之間的工作,負責項目資源的協調和有效使用,以達到項目進度目標;
  6. 作為內部諮詢師進入產品團隊,引入敏捷開發實踐或產品工程實踐,結合產品與團隊特點,制定有針對性的效率提升方案;
  7. 對產品經理和團隊進行培訓,提高其能力和技巧。

運維工程師


互聯網八大技術崗位分析:前端+後端+移動+測試+大數據+管理等等

確保後臺不出問題,確保服務器、網絡出現了問題能夠及時的修復,等等。服務器、帶寬夠不夠,一個大活動需要備機,都要找他們。

  1. 參與設計、審核、優化公司IT系統,以及各應用系統的體系架構;
  2. 公司運維項目的系統升級、擴容需求與資源落實;
  3. IT運維相關流程的規劃、設計、推行、實施和持續改進;
  4. 網絡以及服務器的網絡設置、安全、管理、維護和優化;
  5. 設計並部署相關應用平臺,並提出平臺的實施、運行報告。
  6. 相關故障、疑難問題排查處理。
  7. 網絡監控和應急反應,以確保網絡系統有7*24小時的持續穩定的運作能力。

測試工程師

其實測試嚴格來說也分,功能測試、性能壓力測試、接口測試崗位。

  1. 參與各類軟件產品的需求評審工作;
  2. 編寫穩定可靠的測試方案、測試用例,以及測試軟件;
  3. 執行測試用例,並記錄測試問題,提交測試報告;
  4. 迴歸驗證研發團隊修復的問題;
  5. 從用戶體驗的角度,提出軟件產品的改善意見;
  6. 負責項目相關測試文檔的撰寫和測試報告的整理彙總,並推動問題解決。

技術管理崗位

涉及到的崗位有技術經理、技術總監、CTO,崗位要求大致如下(只是粗略整理,依據公司規模、崗位訴求可能略有差異):

  1. 制定公司技術戰略、技術發展路線規劃;
  2. 制定技術規範、完善開發流程、技術文檔管理等;
  3. 負責系統架構設計、技術選型,兼顧性價比以及業務特性,制定高可用性的實施方案;
  4. 關鍵技術攻關、核心代碼編寫,以及解決各類疑難雜症問題;
  5. 負責研發團隊的日常工作開展,包括工作規劃、人員管理、項目管理等;
  6. 主導策劃研發團隊的技術培訓活動。

技術管理崗位,大多都是從基層做起,都是點滴積累成就的。

技術管理崗位除了要具備紮實的技術基礎,豐富的項目經驗,能夠快速解決問題,對軟實力也有一定的要求,譬如橫向、縱向溝通能力,解決團隊協作以及資源匹配的能力等。

以上,依據各互聯網公司的規模、組織結構、業務模式、崗位訴求等,可能略有差異,供大家參考,歡迎留言進行補充。

如果覺得有用,請點贊支持下,送阿里P8架構師耗時兩年整理的【BAT架構專題100期合集】+【BAT面試題目及答案1000+道合集】等技術乾貨大禮包,私信回覆【學習】立即得到~


分享到:


相關文章: