互聯(lián)網(wǎng)史上最全技術(shù)崗位詳解,包括:前端研發(fā)、后端研發(fā)、移動端研發(fā)、大數(shù)據(jù)、項(xiàng)目管理、測試、運(yùn)維、技術(shù)管理等。
每個(gè)產(chǎn)品線都有架構(gòu)師,在技術(shù)平臺部門也需要技術(shù)平臺的架構(gòu)師。
架構(gòu)師負(fù)責(zé)設(shè)計(jì)系統(tǒng)整體架構(gòu),從需求到設(shè)計(jì)的每個(gè)細(xì)節(jié)都要考慮到,把握整個(gè)項(xiàng)目,使設(shè)計(jì)的項(xiàng)目盡量效率高,開發(fā)容易,維護(hù)方便,升級簡單。
架構(gòu)分析:從功能性的需求中識別出需要增加的非功能性需求,好滿足性能、可擴(kuò)展、集成、安全、可運(yùn)維、高可用、易部署、易更新。并且識別非功能型需求后,還要做技術(shù)選型、技術(shù)架構(gòu)風(fēng)險(xiǎn)識別、技術(shù)實(shí)現(xiàn)工作量評估。
架構(gòu)設(shè)計(jì)與實(shí)現(xiàn):完成非功能性模塊的架構(gòu)設(shè)計(jì)、接口設(shè)計(jì)、代碼實(shí)現(xiàn),所以,需要的是有代碼實(shí)現(xiàn)能力還要有架構(gòu)思維的工程師,而不是畫PPT的工程師。
業(yè)務(wù)架構(gòu)設(shè)計(jì)與實(shí)現(xiàn):需要對跨系統(tǒng)的接口進(jìn)行識別、實(shí)現(xiàn)、維護(hù),需要對能寫成公共代碼類庫的進(jìn)行分析、識別、接口設(shè)計(jì)、實(shí)現(xiàn)、變更維護(hù)。
重構(gòu):架構(gòu)師需要經(jīng)常做Bug分析、非模板性和公共類庫代碼檢查,以發(fā)現(xiàn)代碼腐爛程度,以發(fā)現(xiàn)還有哪些代碼沒有做出很好的架構(gòu)與精心的代碼設(shè)計(jì)。所以,重構(gòu)是經(jīng)常性維護(hù)發(fā)生的,不是攢到某一刻動大手術(shù),甚至推翻重做,那就不叫重構(gòu)了。
前端工程師
使用Div+css并結(jié)合Javascript負(fù)責(zé)產(chǎn)品的前端開發(fā)和頁面制作;
熟悉W3C標(biāo)準(zhǔn)和各主流瀏覽器在前端開發(fā)中的差異,能熟練運(yùn)用DIV+CSS,提供針對不同瀏覽器的前端頁面解決方案;
負(fù)責(zé)相關(guān)產(chǎn)品的需求以及前端程序的實(shí)現(xiàn),提供合理的前端架構(gòu);
與產(chǎn)品、后臺開發(fā)人員保持良好溝通,能快速理解、消化各方需求,并落實(shí)為具體的開發(fā)工作;
了解服務(wù)器端的相關(guān)工作,在交互體驗(yàn)、產(chǎn)品設(shè)計(jì)等方面有自己的見解。
讓系統(tǒng)功能可用、易用、安全,支撐網(wǎng)站穩(wěn)定運(yùn)行,解決數(shù)據(jù)存儲及調(diào)用問題等等,這些都涉及后端工作內(nèi)容。網(wǎng)站后端包括服務(wù)器、應(yīng)用、數(shù)據(jù)庫等,后端開發(fā)者構(gòu)建并維護(hù)這些組件,為網(wǎng)站提供多方面支持。
為了讓服務(wù)器、應(yīng)用、數(shù)據(jù)庫能夠彼此交互,后端工程師需要具有如下技能:
用于應(yīng)用構(gòu)建的服務(wù)器端語言: PHP, Ruby, Python, Java, .Net 等;
數(shù)據(jù)相關(guān)工具: MySQL, Oracle, SQL Serve;
PHP框架: Zend, Symfony, CakePHP;
Java框架:SSH、SSM;
版本控制工具:SVN, CVS , Git 等;
還要熟練使用 Linux 作為開發(fā)和部署環(huán)境。
IOS開發(fā)、Android開發(fā)
移動客戶端的開發(fā)類型主要是三種:
Native App(原生APP)
也就是完全使用移動設(shè)備系統(tǒng)語言寫的客戶端,iPhone iPad就是純Object-C,安卓就是純JAVA, 就是用戶看到的界面啦體驗(yàn)到的交互啦都是原生的。這是性能最棒的開發(fā)方式,但靈活性就沒下面的好。
Web App,
這個(gè)就是在移動瀏覽器里打開的,純HTML+CSS+JS,說白了就是個(gè)網(wǎng)頁,只不過非常的富應(yīng)用,比如手機(jī)瀏覽器訪問的GMAIL啥啥的。但說白了就是在瀏覽器里打開的頁面。
Hybrid App.[HTML5 in mobile devices]
實(shí)際上是使用原生寫了一個(gè)容器,然后使用HTML+CSS+JS來實(shí)現(xiàn)用戶界面和交互。
大數(shù)據(jù)主要有以下職位:
1.數(shù)據(jù)分析師Data analyst
指熟悉相關(guān)業(yè)務(wù),熟練搭建數(shù)據(jù)分析框架,掌握和使用相關(guān)的分析常用工具和基本的分析方法,進(jìn)行數(shù)據(jù)搜集、整理、分析,針對數(shù)據(jù)分析結(jié)論給管理銷售運(yùn)營提供指導(dǎo)意義的分析意見。
2.數(shù)據(jù)架構(gòu)師Data architect
對Hadoop解決方案的整個(gè)生命周期進(jìn)行引導(dǎo),包括需求分析,平臺選擇,技術(shù)架構(gòu)設(shè)計(jì),應(yīng)用設(shè)計(jì)和開發(fā),測試和部署。深入掌握如何編寫MapReduce的作業(yè)及作業(yè)流的管理完成對數(shù)據(jù)的計(jì)算,并能夠使用Hadoop提供的通用算法, 熟練掌握Hadoop整個(gè)生態(tài)系統(tǒng)的組件如: Yarn,HBase、Hive、Pig等重要組件,能夠?qū)崿F(xiàn)對平臺監(jiān)控、輔助運(yùn)維系統(tǒng)的開發(fā)。
3.大數(shù)據(jù)工程師Big DataEngineer
收集和處理大規(guī)模的原始數(shù)據(jù)(包括腳本編寫,網(wǎng)頁獲取,調(diào)用APIs,編寫SQL查詢等);將非結(jié)構(gòu)化數(shù)據(jù)處理成適合分析的一種形式,然后進(jìn)行分析;根據(jù)所需要的和專案分析商業(yè)決策。
4.數(shù)據(jù)倉庫管理員Data warehousemanager:指定并實(shí)施信息管理策略;協(xié)調(diào)和管理的信息管理解決方案;多個(gè)項(xiàng)目的范圍,計(jì)劃和優(yōu)先順序安排;管理倉庫的各個(gè)方面,比如數(shù)據(jù)外包,移動,質(zhì)量,設(shè)計(jì)和實(shí)施。
5.數(shù)據(jù)庫管理員Database manager
提高數(shù)據(jù)庫工具和服務(wù)的有效性;確保所有的數(shù)據(jù)符合法律規(guī)定;確保信息得到保護(hù)和備份;做定期報(bào)告;監(jiān)控?cái)?shù)據(jù)庫性能;改善使用的技術(shù);建立新的數(shù)據(jù)庫;檢測數(shù)據(jù)錄入程序;故障排除。
6.商業(yè)智能分析員Businessintelligence analyst
就工具,報(bào)告或者元數(shù)據(jù)增強(qiáng)來進(jìn)行傳播信息;進(jìn)行或協(xié)調(diào)測試,以確保情報(bào)的定義與需求相一致;使用商業(yè)智能工具來識別或監(jiān)測現(xiàn)有和潛在的客戶;綜合目前的商業(yè)只能和趨勢數(shù)據(jù),來支持采取行動的建議;維護(hù)或更新的商業(yè)智能工具,數(shù)據(jù)庫,儀表板,系統(tǒng)或方法;及時(shí)的管理用戶流量的商業(yè)情報(bào)。
7.數(shù)據(jù)庫開發(fā)員Databasedeveloper
設(shè)計(jì),開發(fā)和實(shí)施基于客戶需求的數(shù)據(jù)庫系統(tǒng);優(yōu)化數(shù)據(jù)庫系統(tǒng)的性能效率;準(zhǔn)備設(shè)計(jì)規(guī)范和功能單證的分配數(shù)據(jù)庫的項(xiàng)目;對數(shù)據(jù)庫系統(tǒng)進(jìn)行空間管理和容量規(guī)劃;建立數(shù)據(jù)庫表和字典;參與數(shù)據(jù)庫設(shè)計(jì)和架構(gòu),以支持應(yīng)用程序開發(fā)項(xiàng)目;執(zhí)行數(shù)據(jù)備份和檔案上定期;測試數(shù)據(jù)庫,并進(jìn)行錯誤修正;及時(shí)解決數(shù)據(jù)庫相關(guān)的問題;制定安全程序,以保護(hù)數(shù)據(jù)庫免受未經(jīng)授權(quán)的使用;評估現(xiàn)有的數(shù)據(jù)庫,并提出改進(jìn)建議的執(zhí)行效率;開發(fā)用于數(shù)據(jù)庫設(shè)計(jì)和開發(fā)活動的最佳實(shí)踐。
協(xié)調(diào)技術(shù)、產(chǎn)品、運(yùn)營等部門把產(chǎn)品更好的實(shí)現(xiàn),大部分公司叫項(xiàng)目經(jīng)理,一般屬于技術(shù)部門。由于現(xiàn)在的互聯(lián)網(wǎng)發(fā)展太快,還衍生出了敏捷教練這個(gè)崗位,幫助技術(shù)、產(chǎn)品、運(yùn)營部門更好的協(xié)作,通過引入敏捷開發(fā)的方式優(yōu)化產(chǎn)品研發(fā)流程,以及解決部門之間的協(xié)調(diào)問題等。
基本職責(zé)就是確保項(xiàng)目目標(biāo)的實(shí)現(xiàn),領(lǐng)導(dǎo)項(xiàng)目團(tuán)隊(duì)準(zhǔn)時(shí)、優(yōu)質(zhì)地完成全部工作。
與客戶溝通,了解項(xiàng)目的整體需求。并與客戶保持一定的聯(lián)系,即時(shí)反饋階段性的成果,和即時(shí)更改客戶提出的合理需求。
制定項(xiàng)目開發(fā)計(jì)劃文檔,量化任務(wù),并合理分配給相應(yīng)的人員。
跟蹤項(xiàng)目的進(jìn)度,協(xié)調(diào)項(xiàng)目組成員之間的合作。
監(jiān)督產(chǎn)生項(xiàng)目進(jìn)展各階段的文檔,并與QA即時(shí)溝通,保證文檔的完整和規(guī)范。
開發(fā)過程中的需求變更,項(xiàng)目經(jīng)理需要跟客戶了解需求,在無法判斷新的需求對項(xiàng)目的整理影響程度的情況下,需同項(xiàng)目組成員商量,最后決定是否接收客戶的需求,然后再跟客戶協(xié)商。確定要變更需求的情況下,需產(chǎn)生需求變更文檔,更改開發(fā)計(jì)劃,通知QA。
項(xiàng)目提交測試后,項(xiàng)目經(jīng)理需了解測試結(jié)果,根據(jù)測試的bug的嚴(yán)重程度來重新更改開發(fā)計(jì)劃。
向上級匯報(bào)項(xiàng)目的進(jìn)展情況,需求變更等所有項(xiàng)目信息。
項(xiàng)目完成的時(shí)候需要項(xiàng)目總結(jié),產(chǎn)生項(xiàng)目總結(jié)文檔。
參與公司產(chǎn)品工程與項(xiàng)目管理體系的建立和完善;
在項(xiàng)目開發(fā)過程中,能夠提供必要的培訓(xùn),例如精益創(chuàng)業(yè),用戶研究,產(chǎn)品規(guī)劃,面向?qū)ο笤O(shè)計(jì)、持續(xù)集成、需求拆分等;
對產(chǎn)品團(tuán)隊(duì)進(jìn)行日常操作輔導(dǎo),幫助產(chǎn)品經(jīng)理識別問題和風(fēng)險(xiǎn),在軟件交付和質(zhì)量保證方面,進(jìn)行持續(xù)改進(jìn);
進(jìn)入團(tuán)隊(duì)進(jìn)行產(chǎn)品管理相關(guān)的度量,定期完成分析報(bào)告,向上級領(lǐng)導(dǎo)匯報(bào),支持事業(yè)部和公司的管理與決策;
協(xié)調(diào)各部門之間的工作,負(fù)責(zé)項(xiàng)目資源的協(xié)調(diào)和有效使用,以達(dá)到項(xiàng)目進(jìn)度目標(biāo);
作為內(nèi)部咨詢師進(jìn)入產(chǎn)品團(tuán)隊(duì),引入敏捷開發(fā)實(shí)踐或產(chǎn)品工程實(shí)踐,結(jié)合產(chǎn)品與團(tuán)隊(duì)特點(diǎn),制定有針對性的效率提升方案;
對產(chǎn)品經(jīng)理和團(tuán)隊(duì)進(jìn)行培訓(xùn),提高其能力和技巧。
確保后臺不出問題,確保服務(wù)器、網(wǎng)絡(luò)出現(xiàn)了問題能夠及時(shí)的修復(fù),等等。服務(wù)器、帶寬夠不夠,一個(gè)大活動需要備機(jī),都要找他們。
其實(shí)測試嚴(yán)格來說也分,功能測試、性能壓力測試、接口測試崗位。
涉及到的崗位有技術(shù)經(jīng)理、技術(shù)總監(jiān)、CTO,崗位要求大致如下(只是粗略整理,依據(jù)公司規(guī)模、崗位訴求可能略有差異):
制定公司技術(shù)戰(zhàn)略、技術(shù)發(fā)展路線規(guī)劃;
制定技術(shù)規(guī)范、完善開發(fā)流程、技術(shù)文檔管理等;
負(fù)責(zé)系統(tǒng)架構(gòu)設(shè)計(jì)、技術(shù)選型,兼顧性價(jià)比以及業(yè)務(wù)特性,制定高可用性的實(shí)施方案;
關(guān)鍵技術(shù)攻關(guān)、核心代碼編寫,以及解決各類疑難雜癥問題;
負(fù)責(zé)研發(fā)團(tuán)隊(duì)的日常工作開展,包括工作規(guī)劃、人員管理、項(xiàng)目管理等;
主導(dǎo)策劃研發(fā)團(tuán)隊(duì)的技術(shù)培訓(xùn)活動。
技術(shù)管理崗位,大多都是從基層做起,都是點(diǎn)滴積累成就的。
技術(shù)管理崗位除了要具備扎實(shí)的技術(shù)基礎(chǔ),豐富的項(xiàng)目經(jīng)驗(yàn),能夠快速解決問題,對軟實(shí)力也有一定的要求,譬如橫向、縱向溝通能力,解決團(tuán)隊(duì)協(xié)作以及資源匹配的能力等。
以上,是對互聯(lián)網(wǎng)八大技術(shù)崗位的梳理總結(jié)。
如果覺得有用,請點(diǎn)贊支持下,送阿里P8架構(gòu)師耗時(shí)兩年整理的【BAT架構(gòu)專題100期合集】+【BAT面試題目及答案1000+道合集】等技術(shù)干貨大禮包,私信回復(fù)【666】立即得到~
------end------
聯(lián)系客服