- N +

系統架構師的技能要求,到底怎樣的程序員能稱為架構師

架構師和程序員有什么區別,各自都有什么要求

架構師和程序員畢竟是兩個工種,自然是有很大的不同。

(1)從工作內容上來講:架構師負責整個平臺的架構工作,需要從大處著眼,對技術選型、業務耦合、公司發展階段、技術前沿、平臺穩定性、易用性、擴展性等各個方面都要有很專業的考慮。并且架構工作對經驗要求非常高,因為架構工作只能階段性的推進,不能輕易變動,所以在一個架構期內,很難做大的升級和改造。

程序員工程師關注編程和代碼,在架構師完成的架構上開發業務代碼,對代碼的輸入輸出負責,用測試案例來保證質量。當然,小公司有時沒有對架構師和程序員分的太清,往往多方面的工作都會開展,相反,在大公司這兩部分的工作一定是分開的。

(2)從知識結構上來講:架構師要熟悉當前最新的構架發展,并且要有自己的見解,尤其要對行業內的架構模式有很深的理解。同時,結合公司當前的發展階段,根據不同的并發和業務場景有詳細的預案。程序員工程師關注的是業務的實現方法和方式,還有就是不同組件使用的調用方法,對比架構師,架構師關注的是不同的組件相互之間的搭配使用。

(3)從重要性上來講:架構師在公司的重要性更高,因為構架失敗或不合理對公司的影響是巨大的。所謂責任越大承擔的風險越大,其本身也越重要。并且大多數情況下,架構師會領導或指導程序員的工作。

(4)從薪資待遇上來講:架構師培養更困難,一線經驗也很難得。在一定位層面上講,因為架構師的需求更高、知識面更寬、行業內從業的人也少,從一開始就對架構師要求的人員資質水平就高,也就使架構師的工資水平很高,普遍高于程度員。也有很多這樣的情況,一些大公司的架構師副手在學習了先進經驗之后向小公司里跳槽,把經驗帶過去,這么一來,給架構師的工資當然要高。

(5)從職業發展上來講:架構師要對向行業、面向發展、面向長期、面向穩定、面向實戰,生命周期要比程序員長的多。程序員在新技術方面受到新人年輕人的沖擊,技術瓶頸期明顯。從另一方面講,有經驗的程序員向構架師方向發展也是不錯的選擇。

希望我的回答對你有幫助。

CTO、技術總監、首席架構師有什么區別

首席架構師

職責與定位:

系統架構,頂層設計,技術攻堅;技術選型,系統規劃等;

考慮多系統,多產品線,多業務線的相互支持,協調;

系統的重構及設計。

要求:

系統規劃與設計

頂級程序員

偏垂直

技術總監

職責與定位:

管理產品,設計,研發,測試,需求等;跨部門協調,溝通;全面管理多條產品線的細節落地;參與戰略的規劃與落地、實施與運維;對公司技術人員的梯度管理與控制;

要求:

偏管理的大伽技術全面CTO

職責與定位:

從公司戰略層面去考慮產品與技術;提前布局與規劃;是商業,產品,技術,設計,團隊,管理的集大成者;技術層面的老板,合伙人;

要求:

頂級技術總監擅長深層次思考與分析對形勢的預判;

(結束)

45歲,拿到華為20級架構師offer要去嗎

我41,6,7年前,華為給了18級,都走流程了,最后想想沒去。去年又一個機會,和華為人力聊了很久,因為以前一直在外企,顧慮很多,身邊外企去華為的,貌似都呆不長,華為也在改變,但不測底。我是做異構計算和gpu加速的,最近5年都在做面向特定領域的自主操作系統,封閉內核,基本只有20%時間會做代碼工作。HR說能給到20級,讓我考慮考慮,后來還是拒了。人不能走回頭路,過去要還從代碼做起,沒必要,如果過去直接,感覺不太現實,我現在的總監,不論我做什么都很,要人給人,要錢給錢,各個開發團隊也很。華為薪資很誘人,但得對得起它,如果老板是熟人,我就直接去了。華為文化還是很大顧慮,我現在一年21天假,上下班都很隨意,怕是很難適應。

硬件架構師是干嘛的

了解各類常見硬件、硬件型號、硬件參數、不同硬件對電腦性能的影響,可以根據現有硬件改進、創新出一個新硬件型號,可以在大腦中完成一個硬件基本模型,掌握基本硬件/邏輯開發流程和開發工具,較好的英語讀寫能力,良好的溝通能力及合作精神,具備計算機基礎理論知識,精通硬件開發流程管理,熟悉上游部件供應商運作模式最重要的當然還是技術過硬

做一名出色的高級電子工程師需要具備哪些知識和技能呢

高級電子工程師一般分為高級硬件工程師和高級軟件工程師。硬件與軟件是不可分離的,硬件需要軟件來執行其程序實現具體功能。軟件需要硬件做載體。

高級硬件工程師需要具備的知識和技能:

1.技能概要:

設計、開發、調試、維護、管理符合功能、性能要求的硬件產品。

2.高級硬件工程師需要具備的技能:

按照計劃完成符合功能性能要求和質量標準的硬件產品;

根據產品詳細設計報告,完成符合功能和性能要求的邏輯設計;

根據邏輯設計說明書,設計詳細的原理圖和PCB圖;

編寫調試程序,測試或協助測試開發的硬件設備,確保其按設計要求正常運行;

編寫項目文檔、質量記錄以及其他有關文檔;

維護管理或協助管理所開發的硬件。

3.高級硬件工程師具備知識

通信、電子工程、自動化、計算機及其相關專業,本科以上學歷。

4年以上相關工作經驗,

2年以上硬件技術開發工作經驗。

精通硬件開發技能,掌握所屬行業的相關專業知識和業務流程;

熟悉硬件開發常用工具軟件;

有良好編程風格、文檔習慣;

有良好的英語閱讀能力,能夠閱讀英文測試資料。

高級軟件工程師需要具備的知識和技能:

1.高級軟件工程師具備知識

三年以上的軟件開發經驗;

具備扎實的計算機軟件基礎,熟悉匯編語言和數據結構,并對軟件工程有較好的理解;

熟悉.NET/Java/C++/VB/Delphi等常用開發語言中任意一種;有Oracle、SQL-SERVER或DB2等數據庫上的開發經驗,熟悉SQL語言;

具備良好的溝通能力,較強的分析、解決問題、領悟、歸納和邏輯推理能力和撰寫開發文檔;

具有良好的計劃性,團隊精神,能承受工作壓力并充滿熱情。

2.高級軟件工程師具備的技能

在目前很多國內軟件企業中,如果你是“高級軟件工程師”,那么從需求分析,設計,開發,測試,甚至到客戶這一條龍都可能由一個人來負責。

(1)軟件開發與測試

首先,軟件開發是軟件工程師職責的基本組成部分,這點應該沒有問題。其次,此處的軟件測試可分為開發前的驅動測試,和開發過程中的白盒測試。驅動測試用于分析子系統/模塊內部邏輯,用于在開發之前暴露開發過程中可能遇到的大部分問題和對子系統/模塊進行更進一步的劃分;白盒測試是保證在項目交接到測試團隊手中時,能滿足基本的項目要求,即能夠進行α測試。

(2)子系統/模塊分析設計

在軟件架構師做完系統設計,項目經理進行項目分工后,項目就正式進入開發環節。這時候每個軟件工程師會拿到自己負責的子系統/模塊,首先要做的就是進行分析設計,其次才是開發。開發前進行分析設計,便于從整體上對子系統進行把握,提前隔子系統中的變化點和問題,同時也可以對子系統進行更詳細的劃分,用于制定個人的工作計劃,與項目經理和軟件架構師進行具體的溝通。

(3)撰寫文檔

在進行子系統和模塊設計的同時,要撰寫子系統設計說明書;在開發過程中,要記錄技術要點和發現的問題,同時如有需要,要修改子系統設計說明書;在白盒測試時,要記錄每個Bug。

(4)定期主動溝通

在項目開發過程中,項目經理需要和團隊中的每一個人溝通任務進度,其主要職責是從整體上把握和控制項目的進度。那么作為團隊一員的高級軟件工程師通常會負責項目中很重要的子系統/模塊,這些子系統/模塊往往能決定項目的成敗。因此定期主動與項目經理溝通解決遇到問題,與架構師和專家溝通解決技術難題就顯得非常重要了。另外,就對個人而言,定期主動溝通也往往表現為個人的主動積極性,對于個人長遠發展非常有益。

(5)持續學習

也許有人會覺得學習應該與職責無關,狹義看來確實如此。然而,不斷學習新知識,提高個人技能,于公司而言,能提升工作效率;于個人而言,益于職業發展。因此,工作之余,不管你職位如何,持續學習就顯得非常重要且必要。

(6)帶新人

這點也許不是硬性要求,但國外有高手帶領新手這樣一種師徒習慣,也應該學習并發揚。通常情況下新人會與高級軟件工程師協同工作,因此帶新人一方面,帶領新人可以有重新審視自己知識的機會;另一方面能夠讓新人更快入手,降低學習成本和提高工作效率;同時也能保持良好的人際關系。

到底怎樣的程序員能稱為架構師

作為一名從業多年的IT人,我來回答一下這個問題。

首先,架構師是程序員發展的一個重要方向,也是IT行業中的重要崗位。

一個軟件產品的開發需要一系列角色的配合才能夠完成,從一個產品的設計到最終的部署需要產品經理、策劃、交互工程師、視覺工程師、架構師、產品經理、程序員、測試、運維工程師等一系列角色的配合。

從研發的角度來說,程序員可以簡單劃分為兩類,一類是設計,另一類是實現。負責設計的程序員通常也就是所謂的研發級程序員,主要解決系統級問題,比如平臺的研發、接口(API)的設計等工作,通常針對的是行業級問題。而負責實現的程序員通常是所謂的應用級程序員,通過接口來完成平臺功能的調用從而實現具體的業務邏輯,工作的重點在于具體功能的實現,往往針對于具體的應用場景。

技術領域的架構師也通常分為兩個大類,一類是平臺架構師,另一類是應用架構師。平臺架構師制定的是平臺的研發策略和技術指標,通常要結合功能定位和行業定位來進行具體的設計。平臺架構師通常是研發級程序員成長起來的,同時具備一定的行業前瞻性。比如JamesGosling(Java創始人)和LinusBenedictTorvalds(Linux創始人)就是典型的平臺架構師。

通常所說的軟件架構師大部分指的是應用架構師,針對于具體的應用場景給出軟件產品的設計方案、技術選型和接口設計等,通常應用架構師需要對各種平臺產品有較為清晰的了解,并能夠緊跟技術發展趨勢來不斷優化設計方案。另外,應用架構師需要具備一定的行業背景,對于方案的技術瓶頸有豐富的解決方案。應用架構師通常是應用級程序員成長起來的,往往具有多年的行業開發經驗。

我從事互聯網行業多年,目前也在帶計算機專業的研究生,主要的研究方向集中在大數據和人工智能領域,我會陸續寫一些關于互聯網技術方面的文章,感興趣的朋友可以關注我,相信一定會有所收獲。

如果有互聯網方面的問題,或者考研方面的問題,都可以咨詢我,謝謝!

返回列表
上一篇:
下一篇: