1、架構(gòu)設(shè)計(jì)
架構(gòu)師,顧名思義,第一職責(zé)就是在軟件設(shè)計(jì)階段,做好軟件“骨架”的設(shè)計(jì)。架構(gòu)師需要把產(chǎn)品的需求翻譯成軟件工程的設(shè)計(jì)文檔,確定各個(gè)系統(tǒng)與模塊的邊界,評(píng)估系統(tǒng)的量級(jí)。
2、技術(shù)選型
從前端到后端,從緩存到數(shù)據(jù)庫(kù),面對(duì)為數(shù)眾多的第三方組件,架構(gòu)師需要作出合理的選擇。
前端頁(yè)面選擇模板引擎還是動(dòng)靜分離?
服務(wù)端選擇Java還是Node.js?
服務(wù)治理選擇DubboX還是Spring Cloud?
消息隊(duì)列選擇RocketMQ還是Kafka?
分布式緩存選擇Redis Cluster 還是 Codis?
數(shù)據(jù)庫(kù)選擇Mysql還是Oracle?
全文檢索選擇Solr還是ES?
技術(shù)沒(méi)有絕對(duì)的好壞之分,關(guān)鍵看是否適用于公司的業(yè)務(wù)場(chǎng)景。
3、管理非功能性需求
滿足需求是項(xiàng)目開發(fā)和架構(gòu)設(shè)計(jì)的根本,而管理非功能性需求則是項(xiàng)目的升華。
在公司從0到1的創(chuàng)業(yè)階段,開發(fā)者更關(guān)注的是功能性需求,往往一個(gè)簡(jiǎn)單粗暴的MVC項(xiàng)目就可以搞定一切。當(dāng)業(yè)務(wù)量級(jí)逐漸增大,用戶需求逐漸多樣化,非功能性需求的重要性就逐漸顯現(xiàn)。?
非功能性需求都包含哪些內(nèi)容呢?
性能(響應(yīng)時(shí)間)?
可擴(kuò)展性(適應(yīng)需求的快速變化)
可用性 (四個(gè)9,五個(gè)9,必要時(shí)的限流和降級(jí))
安全性(防范各種惡意攻擊,實(shí)現(xiàn)風(fēng)控)
可監(jiān)控(完善的監(jiān)控和報(bào)警機(jī)制)
靈活性(便于非開發(fā)人員進(jìn)行配置)?
可維護(hù)(持續(xù)集成,持續(xù)部署)?
國(guó)際化(沖出國(guó)門)
4、攻克技術(shù)難題
架構(gòu)師不只需要關(guān)注宏觀的設(shè)計(jì),也需要具有攻克技術(shù)細(xì)節(jié)的能力。在團(tuán)隊(duì)開發(fā)過(guò)程中遇到難以實(shí)現(xiàn)和優(yōu)化的技術(shù)問(wèn)題時(shí),架構(gòu)師需要發(fā)揮技術(shù)優(yōu)勢(shì),解決系統(tǒng)的疑難雜癥。
5、技術(shù)人員的管理和指導(dǎo)
架構(gòu)師不只是一個(gè)技術(shù)大牛,也應(yīng)該是一個(gè)好的管理者,在工作中需要把較大的項(xiàng)目和需求拆分一個(gè)個(gè)Story,依照每個(gè)人的情況分配給研發(fā)團(tuán)隊(duì)的成員,并且在必要的時(shí)候進(jìn)行技術(shù)上的培訓(xùn)指導(dǎo)。
主要任職要求:?
1、最少3年以上相關(guān)工作經(jīng)驗(yàn);?
2、精通Struts Hibernate Spring等主流開源框架,熟悉J2EE體系結(jié)構(gòu);
3、熟悉運(yùn)用Oracle,SQL Server,等數(shù)據(jù)庫(kù)開發(fā);
4、熟悉Weblogic/Tomcat/JBoss等主流應(yīng)用服務(wù)器及Oracle數(shù)據(jù)庫(kù)開發(fā)技術(shù);
5、掌握常用需求/架構(gòu)設(shè)計(jì)工具使用;
6、優(yōu)秀的溝通和談判技巧。能有效的激勵(lì)工作團(tuán)隊(duì);?
所需最低學(xué)歷:一般為本科以上學(xué)歷、計(jì)算機(jī)軟件相關(guān)專業(yè)畢業(yè)。 所需資格證書有:全國(guó)計(jì)算機(jī)技術(shù)與軟件專業(yè)技術(shù)(資格)高級(jí)資格。
以上就是小編的分享,希望可以幫助到大家。