系統架構師

系統架構師

系統架構師,又稱企業架構師或者系統設計師,是一個最終確認和評估系統需求、給出開發規範、搭建系統實現的核心構架,並澄清技術細節、掃清主要難點的技術人員。主要著眼於系統的“技術實現”。因此他/她應該是特定的開發平台、語言、工具的大師,對常見套用場景能馬上給出最恰當的解決方案,同時要對所屬的開發團隊有足夠的了解,能夠評估自己的團隊實現特定的功能需求需要的代價。系統架構師負責設計系統整體架構,從需求到設計的每個細節都要考慮到,把握整個項目,使設計的項目儘量效率高、開發容易、維護方便、升級簡單等。

知識結構

系統架構師系統架構師

軟體系統架構師綜合的知識能力包括9個方面,即:

1、戰略規劃能力。

2、業務流程建模能力。

3、信息數據結構能力。

4、技術架構選擇和實現能力。

5、套用系統架構的解決和實現能力。

6、基礎IT知識及基礎設施、資源調配能力。

7、信息安全技術支持與管理保障能力。

8、IT審計、治理與基本需求分析、獲取能力。

9、面向軟體系統可靠性與系統生命周期的質量保障服務能力。

作為系統架構師,必須成為所在開發團隊的技術路線指導者;具有很強的系統思維的能力;需要從大量互相衝突的系統方法和工具中區分出哪些是有效的,哪些是無效的。架構師應當是一個成熟的、豐富的、有經驗的、有良好教育的、學習快捷、善溝通和決策能力強的人。豐富是指他必須具有業務領域方面的工作知識,知識來源於經驗或者教育。他必須廣泛了解各種技術並精通一種特定技術,至少了解計算機通用技術以便確定那種技術最優,或組織團隊開展技術評估。優秀的架構師能考慮並評估所有可用來解決問題的總體技術方案。需要良好的書面和口頭溝通技巧,一般通過可視化模型和小組討論來溝通指導團隊確保開發人員按照架構建造系統。

職業名稱

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

職業定位

系統構架,是對已確定的需求的技術實現構架、作好規劃,運用成套、完整的工具,在規劃的步驟下去完成任務。

能力要求

一、系統架構相關的知識和經驗。

二、很強的自學能力、分析能力、解決問題的能力。

三、寫作、溝通表達、培訓。

職業概述

系統架構師系統架構師

系統構架師是近幾年來在國內外迅速成長並發展良好的一個職位,它的重要性及給 IT業所帶來的影響是不言而喻的。在我國雖然還存在一定的爭論性、不可預測性、不理解性,不確定性,但它確實是時代發展的需要。IT 業各公司為了讓他們現有的 IT 系統實現更大的價值,紛紛進行了重大的技術變革,

這樣一來,對高水平的架構師的需求激增。對負責架構的管理人員的需求不斷增大,其增長速度比對 CIO ​的需求還要快,這是因為,架構師會給一個組織帶來大量專門技術。公司需要一些在架構方面有真才實學,而且學得深且廣的人才。

在比爾· 蓋茨的眾多稱謂中,據說他更偏愛“首席軟體架構師”。同樣,在網易創始人丁磊名字前,也有“首席架構師”這樣的稱謂。由次可見,對於企業來說,架構師就是靈魂的創造者。

作用

系統架構師該怎么來實現其“架構”企業的職能呢?尤其在設計企業 IT 策略時,該怎樣體現架構師的價值?

這裡以實例說明:

摩托羅拉

系統架構系統架構

摩托羅拉的副總裁 Toby Redshaw 說,架構師是“IT 策略中的中樞”,

而且這一角色對公司的影響確實非常大。當 Toby Reshaw 在 2001 年進入摩托羅拉並擔任其策略暨架構副總裁時,他儼然一位購房者對一套搖搖欲墜的公寓進行估價一樣。他並不是僅僅只作些表面上的修改,而是擬定了一個重建摩托羅拉整個基礎結構的計畫,這個計畫可以徹底修整公司的基礎建設,就像一個建築師設計一幢房子一樣,Redshaw 擬出了一張技術構架藍圖,一座技術性的建築,以便使被他稱作“如意大利麵條般錯亂的應用程式,機器和管線”那些東西變得井然有序。他說,只要選擇了正確的架構策略並用對了人,摩托就可以用比以前更快的速度生產出大量套用軟體,而且可以減少維持重疊系統的費用。 Redshaw 說:“如果你連建築架構都搞不好,就算你的石匠技術再高明,又有什麼用?架構師是 IT 策略中的中樞。” 像 Redshaw 這樣的系統架構師們在企業內部的影響力非常大。很久以來,雖然他們一直在信息技術部門擔任重要職務,但是他們經常受委託提供全面概況分析,並提出一些關於如何遵照標準執行這些任務的建議,而這些對日常運作的影響極其有限。今天,隨著各公司都在尋找重建他們的 IT 系統,使其更能有效節省成本,更靈活的方法,架構師愈來愈被看作是至關重要的因素。

一個定義明確的架構的目標在於降低運行複雜的運算系統的費用。一個公司可以採用一種特定的資料庫配置,如微軟的資料庫,進而將系統標準化,而不需要讓公司的每個部門安裝它們自己所需要的資料庫伺服器。

Express

Express 的技術架構副總裁 Andy Miller 說:“如果你沒有一項強有力的架構策略,人人各行其是,最後以得到六種伺服器和軟體平台而告終,你的系統變成了大雜燴,而那將使你的費用激增。”把架構師獨立出來有很多好處,比如系統的整體把握,質量上的保障,技術上的先進性,架構的靈活性,高效性,還可有效地降低成本。試想,1 個月薪 1w 的架構師+10 個月薪5k 的工程師,肯定比 11 個月薪 6k 的高級工程師效果要好。一般來說,級別越高的架構師,經驗更豐富,爭相聘請的人也多,他們也是與公司全部的 IT 策略密切相關的專業人員。

系統構架師應具備的能力

作為軟體開發的設計架構師,那么必須擁有一定的編程技能,同時有高超的學習新的架構設計、程式設計技能。另外,我覺得作為軟體架構師,還必須了解一定的硬體、網路、伺服器的基本知識。要不然,你都不知道有些什麼材料可以用,你怎么去根據實際情況去規劃你的軟體架構呢?忽視程式設計能力的持續跟新,是永遠不能夠成為一個成功的系統架構師。

一般來講,系統架構師應該擁有以下幾方面的能力:

1:具備 8 年以上軟體行業工作經驗;

2:具備 4 年以上 C/S 或 B/S 體系結構軟體產品開發及架構和設計經驗;

3:具備 3 年以上的代碼編寫工作經驗;

4:具備豐富的大中型開發項目的總體規劃、方案設計及技術隊伍管理經驗;

5:對相關的技術標準有深刻的認識,對軟體工程標準規範有良好的把握;

6:對 .Net/JAVA 技 術 及 整 個 解 決 方 案 有 深 刻 的 理 解 及 熟 練 的 應 用 , 並 且 精 通WebService/J2EE 架構和設計模式,並在此基礎上設計產品框架;

7:具有面向對象分析、設計、開發能力(OOA、OOD、OOP),精通 UML 和 ROSE,熟練使用 Rational Rose、PowerDesigner 等工具進行設計開發;

8:精通大型資料庫如 Oracle、Sql Server 等的開發;

9:對計算機系統、網路和安全、套用系統架構等有全面的認識,熟悉項目管理理論,並有實踐基礎;

10:在套用系統開發平台和項目管理上有深厚的基礎,有大中型套用系統開發和實施的成功案例;

11:良好的團隊意識和協作精神,有較強的內外溝通能力。

角色區別

系統構架師與產品經理的關係及區別

產品經理通常是指負責產品設計的“專人”。一個優秀的理想的產品經理,應同時具備較高的商業素質和較強的技術背景。產品經理要有深厚的領域經驗,也就是說,對該軟體系統要套用到的業務領域非常之熟悉。比如,開發房地產銷售軟體的產品經理,應該對房地產公司的標準銷售流程了如指掌,甚至比大多數銷售人員還要清楚。如果開發的是通用產品,他/她還具備對市場、潛在客戶需求的深刻洞察力。 那么,系統架構師與產品經理有什麼不同呢?我們不應該把二者混為一談,這是不少論述和實踐常犯的錯誤。我看來,如果把開發軟體比作攝製電影,產品經理之於系統架構師,就正像編劇之於導演。產品經理雖然要有一定技術背景,但仍應屬於“商業人士(business people)”,而系統架構師則肯定是一個技術專家。二者看待問題的立場、角度和出發點完全不同。

系統構架師與項目經理的關係及區別

軟體項目經理是指對項目控制/管理,關注項目本身的進度、質量,分配、調動、協調、管理好人、財、物等資源的負責人。對於軟體項目經理來講,包括項目計畫、進度跟蹤/監控、質量保證、配置/發布/版本/變更管理、人員績效評估等方面。優秀的項目經理需要的素質,並不僅在於會使用幾種軟體或是了解若干抽象的方法論原則,更重要的在於從大量項目實踐中獲得的寶貴經驗,以及交流、協調、激勵的能力,甚至還應具備某種個性魅力或領袖氣質(Charisma)。由此可見,項目經理和系統架構師在職責上有很大差異。混同這兩個角色,往往也會導致低效、無序的開發。特別是,從性格因素上講,單純的技術人員傾向於忽視“人”的因素,而這正是管理活動的一個主要方面。另外,就像戰爭中的空軍掩護(Air Cover)一樣,專職的項目經理能夠應付開發過程中大量的偶發事件和雜務,對於一個規模稍大的項目,這些雜務本身就能占用一個全職工作者的幾乎全部時間。在一個項目中,推動項目發展的是系統構架師,而不是項目經理。項目經理的職責只是配合系統構架師,提供各個方面的支持。主要職責是與內外部溝通和管理資源(包括人)。系統構架師提出系統的總體構架,給出開發指導。一個項目中,項目經理的角色什麼?如果他即使管理人員又是設計人員,則必須比別人強,能夠有讓別人服的東西。如果他只是項目管理人員,系統構架師有專門人員,就可以不用精通或者說了解 it 各個方面的知識,如果了解更好。另外,如果在一個項目沒有人在技術構架上和開發指導上負全部責任,而是每個人都負責一快的架構、分析、設計、代碼和實施等,最後肯定會失去管理。

系統構架師與系統分析員的關係及區別

系統分析員(System analyst)是指對系統開發中進行分析、設計和領導實施的人。一般意思上講,系統分析員的水平將影響系統開發的質量,甚至成敗。但在一個完善的系統開發隊伍中,還需要有業務專家,技術專家和其他輔助人員。所以,系統分析員只是其中的角色之一。但我國許多的 IT 公司,一般只有系統分析員而沒有技術專家。系統分析員固然是對特定系統進行分析、設計。所以他的任務、目標是明確的。他只是去執行任務,完成系統的最終設計。

系統架構師應該和系統分析員分開,但架構師必須具備系統分析員的所有能力,同時還應該具備設計員所沒有的很多能力。 系統架構師是指導、檢督系統分析員的工作,要求系統分析員按什麼標準,什麼工具,什麼模式,什麼技術去設計系統的。同時,系統架構師應該對系統分析員所提出的問題,碰到的難題及時地提出解決的方法。並檢查、評審系統分析員的工作。

職業行情

系統架構師的一般月薪範圍在20000-100000美元左右。

系統架構師是軟體項目的總設計師,是軟體企業的新產品、新技術體系的構建者,是目前軟體開發中急需的高層次技術人才。其是由系統開發工程師發展而來,可以向項目經理、技術經理等高層次的方向發展。

相關詞條

相關搜尋

熱門詞條

聯絡我們