系統架構師,又稱企業架構師或者系統設計師,是一個最終確認和評估系統需求、給出開發規範、搭建系統實現的核心構架,並澄清技術細節、掃清主要難點的技術人員。那麼系統架構師有哪些職責呢?必須具備哪些必備能力呢?一起來了解了解!
系統構架師的職責
系統架構師的職責就是設計一個公司的基礎架構,並提供關於怎樣建立和維護系統的指
導方針。具體來講,系統架構師的職責主要體現在以下幾方面:
1負責公司系統的架構設計、研發工作;
2承擔從業務向技術轉換的橋樑作用;
3協助專案經理制定專案計劃和控制專案進度;
4負責輔助並指導SA開展設計工作;
5負責組織技術研究和攻關工作;
6負責組織和管理公司內部的技術培訓工作;
7負責組織及帶領公司內部員工研究與專案相關的新技術。
8管理技術支撐團隊並給專案、產品開發實施團隊提供技術保障。
11理解系統的業務需求,制定系統的整體框架(包括:技術框架和業務框架)
12對系統框架相關技術和業務進行培訓,指導開發人員開發。並解決系統開發、執行中出現的各種問題。系統架構師的目的:
13對系統的重用、擴充套件、安全、效能、伸縮性、簡潔等做系統級的把握。
系統架構師的工作在於針對不同的情況篩選出最優的技術解決方案,不是沉在具體實現細節上。此外系統架構師是不可培養的,好的系統架構師也許不是一個優秀的程式設計師,但是不能不懂技術之間的差別,技術的發展趨勢,採用該技術的當前成本和後繼成本,該技術與具體應用的偶合程度,自己可以調配的資源狀況,研發中可能會遇到的風險,如何迴避風險。這些才是架構師需要考慮的主要內容。
架構的分類
第一種是基礎架構的設計規劃,例如:OS,硬體,網路,各種應用伺服器等等。
第二種是軟體開發設計的架構師,他們負責規劃程式的執行模式,層次結構,呼叫關係,規劃具體的實現技術型別,甚至配合整個團隊做好軟體開發中的專案管理。
系統架構師必須具備的能力
作為軟體開發的設計架構師,那麼必須擁有一定的程式設計技能,同時有高超的學習新的.架構設計、程式設計技能。另外,我覺得作為軟體架構師,還必須瞭解一定的硬體、網路、伺服器的基本知識。要不然,你都不知道有些什麼材料可以用,你怎麼去根據實際情況去規劃你的軟體架構呢?忽視程式設計能力的持續跟新,是永遠不能夠成為一個成功的系統架構師。
一般來講,系統架構師應該擁有以下幾方面的能力:
1:具備8年以上軟體行業工作經驗;
2:具備4年以上C/S或B/S體系結構軟體產品開發及架構和設計經驗;
3:具備3年以上的程式碼編寫工作經驗;
4:具備豐富的大中型開發專案的總體規劃、方案設計及技術隊伍管理經驗;
5:對相關的技術標準有深刻的認識,對軟體工程標準規範有良好的把握;
6:對技術及整個解決方案有深刻的理解及熟練的應用,並且精通WebService/J2EE架構和設計模式,並在此基礎上設計產品框架;
7:具有物件導向分析、設計、開發能力(OOA、OOD、OOP),精通UML和ROSE,熟練使用RationalRose、PowerDesigner等工具進行設計開發;
8:精通大型資料庫如Oracle、SqlServer等的開發;
9:對計算機系統、網路和安全、應用系統架構等有全面的認識,熟悉專案管理理論,並有實踐基礎;
10:在應用系統開發平臺和專案管理上有深厚的基礎,有大中型應用系統開發和實施的成功案例;
11:良好的團隊意識和協作精神,有較強的內外溝通能力。