一 、架構(gòu)師與技術管理者
架構(gòu)師是一個綜合性的角色,需要熟練掌握架構(gòu)設計方法和開發(fā)技術,同時具備良好的組織管理能力。
在《深入剖析架構(gòu)師角色》中我們分析了架構(gòu)師的主要職責和所開展的活動,無論這些活動是偏向技術還是偏向管理,架構(gòu)師都處于一個特定的環(huán)境中。
活動的開展也不是架構(gòu)師一個人的戰(zhàn)斗,需要與他人進行協(xié)作和交互。因此,除了各種專業(yè)的業(yè)務技能之外,架構(gòu)師還需要掌握一些額外的技能。
在很多時候,我們也把架構(gòu)師歸為一種技術管理者角色。技術管理者的工作包括設計行業(yè)與解決方案、推進業(yè)務結(jié)構(gòu)與產(chǎn)品化、架構(gòu)設計和技術創(chuàng)新、開展軟件項目管理和研發(fā)過程體系建設等。
視環(huán)境的不同,架構(gòu)師也會在這些工作中發(fā)揮一定的推動作用。我們把這些推動能力統(tǒng)稱為軟能力,并從向上管理、向外管理和自我管理的角度出發(fā)簡要討論架構(gòu)師所應具備的軟能力。
二 、向下管理
向下管理是組織管理最重要的一個方面,作為技術團隊的負責人,通常技術管理者會花費大部分時間在向下管理。
這里“向下”的含義不僅僅是指你的直接下屬,在大中型團隊中,還可能包含你的間接下屬,也就是說技術管理者不僅僅需要管理下面的人,也需要指導下面的人去做向下管理,從而提高整個團隊的工作效率。
管理應該有好的思路和方法論,但期望這些思路和方法論能按照自己想的那樣發(fā)揮效果,通常只是一種理想。
在職權(quán)的范圍內(nèi)充分利用人力和客觀條件,并以最小的成本辦成所需的事情還需要團隊負責人的領導力(Leadership)。
同時,領導力和激勵(Motivation)是兩個相輔相成的因素,對于軟件開發(fā)這一特定領域而言,領導力最主要的表現(xiàn)或者說最能發(fā)揮其作用的切入點是激勵。
1. 領導力
業(yè)界關于領導力的定義有很多,我們這里引用大師 Gerald M. Weinberg 的說法,即所謂領導力,就是創(chuàng)造這樣一個環(huán)境,每個人都能在其中發(fā)揮出更多的能力。從這個定義上講,領導力就是催生其他人身上的創(chuàng)造力和生產(chǎn)力。
領導力針對的對象一般也可以分為人和過程,其目的是創(chuàng)造一種特定的環(huán)境,對環(huán)境中的人做出反應,向他們提供選擇,并給他們一定的自由度。
我們對領導力進行梳理,會發(fā)現(xiàn)其首先體現(xiàn)在用人上,找合適的人并進行管理是領導的第一步。
其次,我們會形成團隊的價值觀,并希望團隊中的所有成員共同遵守,團隊負責人在形成這種價值觀時會起到主導作用。
同時,提出優(yōu)化流程的建議并付諸于實施能顯著提升領導力,團隊成員會在優(yōu)化的流程中發(fā)揮越大的作用,領導力也就會產(chǎn)生越大的影響力。
最后,要注意個人在演講、聚會、會議上的表現(xiàn),努力提升個人魅力。
對于提升領導力過程中應該遵循的原則,我們有我們的思路。我認為信息透明和授權(quán)是領導力相關的兩條核心原則。
信息透明在這里可以理解為包含自我透明化、項目透明化和關系透明化三層含義。
自我透明化指的是表現(xiàn)自身的優(yōu)點和缺點、承認自身的實力和興趣并積極參與上下級溝通,讓別人了解你是讓產(chǎn)生信任的基礎。
很多技術人員由于工作環(huán)境以及自身性格原因,在自我透明化上存在明顯缺陷,難以成為一個技術負責人,或者即使成為團隊的負責人之后,因為缺少與團隊成員的相互了解導致領導力大打折扣。
項目透明化主要體現(xiàn)在讓領導看到你的困難,對時間和進度上的透明度做把控,不能太透明也不能不透明。
同時,對項目中技術體系進行合理的的透明化有助于各種外部干系人對技術團隊的了解,提高協(xié)商過程中的籌碼。
創(chuàng)建自身的風格并保持不變,在做事情之前進行有效傾聽,同時提供讓別人透明化的場景和機會是關系透明化相關的實踐方法。
授權(quán)往往是技術人員所不擅長的一個領域,很多技術負責人在緊急情況下都傾向于自己出手,而忘了整個團隊。
身體力行,讓別人看到你在做事情是提升領導力的一種方法,但在有些場景下,通過授權(quán)讓團隊成員去完成有難度的任務恰恰更能提升領導力。
建立信任關系是授權(quán)的第一步,需要在平時進行不斷經(jīng)營。而對某個具體場景,在授權(quán)之前確保團隊成員與團隊負責人達成共識。
信息透明化的具體實現(xiàn)可以借助于一些工具來展現(xiàn)可視化信息,而授權(quán)的切入點在于使問題簡單化。無論采用何種原則,嘗試在團隊中推銷自身的想法,并對核心問題和痛點保持關注。
追求平衡性(Balance)可能是提升和發(fā)揮領導力過程中最重要的策略,也可以理解為一種思維模式。
對于軟件開發(fā)而言,圍繞平衡性有兩個概念需要展開,一個是成功,一個是完美。對技術人員,很多時候我們會追求一種完美,對一個設計進行反復提煉、重構(gòu)并試圖找到所謂的最優(yōu)解是很多技術人員的做事風格。
而對于管理人員而言,從思維模式上更傾向于確保項目和產(chǎn)品取得成功。成功和完美有時候可能會成為一對矛盾體,因為成功的事物不一定完美,完美的事物也不一定成功。
技術人員為了追求完美導致項目延期,或者管理人員為了追求成功使用各種非技術手段的現(xiàn)象并不少見。
而對于團隊負責人而言,我們認為很多時候需要做到結(jié)果導向,也就是需要在成功和完美之間追求一種平衡性。
領導力的表現(xiàn)形式有很多種,如帶隊育人的教導力、合理分配資源的組織力、綜合思考的決策力、人心所向的感召力等,技術管理者自身能夠快速成長的能力也是領導力的一種表現(xiàn)。
2. 激勵
業(yè)界關于如何進行激勵存在一些主流的認知體系,盡管這些體系偏于理論,但作為技術管理者而言,仍有必要充分理解并進行針對軟件開發(fā)領域的思考。
激勵的主流理論包括馬斯洛需求層次理論、麥格雷戈的 X-Y 理論、赫茨伯格的雙因素理論等。掌握激勵理論的目的是為了實施激勵措施。
因為基本的激勵理論面向所有人,所以我們需要針對軟件開發(fā)人員做進一步分析才能獲取相應的激勵措施。針對軟件開發(fā)人員,我們認為典型的激勵因素包括以下幾個方面:
學習成長
在軟件行業(yè),技術變更如此迅速,沒有專業(yè)上的持續(xù)學習和成長,就可能很快被淘汰。這一點技術人員心知肚明,所以追求學習并不斷成長就成為首要激勵因素。
對技術人員進行學習成長上的激勵,最基本的手段就是營造良好的學習環(huán)境。
提供進修機會、提供培訓和自學的途徑、購買專業(yè)書籍、為每個新手開發(fā)人員指定導師、分配開發(fā)人員從事可以擴展其技能的工作都可以是行之有效的工作設計方式。尤其是人員培訓,需要有人員培訓計劃。
從入職開發(fā),提供全生命周期培訓,不應該只包括技術類培訓。確保定期組織,形成一定模式并鼓勵全民參與。如果有條件形成專業(yè)培訓講師團隊,對培訓講師進行考核,并提供一定獎勵和報酬。
技術工具
技術提升當然也屬于學習成長的一方面,這里單獨抽離出來是想強調(diào)為技術人員提供先進的工具、框架、技術體系上對他們的激勵作用。這可能是最容易做到的一項激勵措施。
確保為技術人員提供專業(yè)的開發(fā)工具,并在技術框架的選型和技術體系的建立上采用目前最流行的相關框架和架構(gòu)有助于激發(fā)技術人員的開發(fā)熱情。
發(fā)展方向
對于那些已經(jīng)或者即將處于瓶頸期的開發(fā)人員而言,為其指明發(fā)展方向并提供相應的發(fā)展機會將是一項非常有效的激勵措施。
以開發(fā)人員向技術管理者發(fā)展為例,開發(fā)人員比管理人員更重視技術管理的機會,針對成為技術管理者這一目標,指派每個人分別作為業(yè)務模塊、數(shù)據(jù)庫、報表等某個特定領域的技術負責人,或者指派每個人分別作為持續(xù)集成、代碼重構(gòu)、系統(tǒng)集成等某個任務的技術負責人都是工作設計上的考慮點。
認可程度
技術管理工作的一個重要組成部分,是確保技術人員的工作得到認可。技術開發(fā)不像營銷,很少有直接的物質(zhì)獎勵,要做更多精神層面的激勵。
技術人員內(nèi)心渴望被認可,認可的場合可以是公開場合也可以是私下場合,認可的方式可以是簡單的口頭稱贊,也可以是具體某件事情的詳細展開。
對技術人員工作的認可,將對其工作態(tài)度、職業(yè)道德以及其他開發(fā)人員產(chǎn)生激勵效果。
工作環(huán)境
工作環(huán)境對技術人員的激勵在互聯(lián)網(wǎng)行業(yè)表現(xiàn)非常明顯。無論是靈活打卡或不打卡制度、加班補助制度,還是上文所提到的學習環(huán)境等,都對技術人員有良好的激勵作用。
這些激勵因素往往是一種相對的附加效果,沒有屬于正常,但有的話就能讓技術人員高度認可并更加容易融入到工作環(huán)境中。
直接利益
直接利益一直是個人績效的重要因素,傳統(tǒng)意義上的利益就是指工資、獎金、股票、期權(quán)等。高工資和可能拿到的高獎金是最基本的激勵因素,但這需要建立在個人以及團隊績效的基礎之上。
管理風格
團隊管理者的管理風格可以說對開發(fā)人員的工作表現(xiàn)有至關重要的影響。管理風格的一大表現(xiàn)形式就是對技術的重視程度,技術人員通常希望得到技術上的尊重并希望有一定的自主權(quán)。
當開發(fā)人員為實現(xiàn)自己設定的目標工作時,會比為別人更加努力的工作,這就是從成就感的角度來設定激勵目標。
體現(xiàn)在工作設計上,項目中的開發(fā)進度計劃首先應盡可能讓開發(fā)人員自己把握,這也是一項可以實施的激勵措施。
3. 績效管理
作為向下管理的重要一環(huán),績效管理是對團隊成員進行工作評估和激勵的過程。
國內(nèi)中小型研發(fā)團隊往往是從作坊式開發(fā)模式中發(fā)展而來,通常對績效管理的意識比較淡薄,或者干脆沒有績效管理的理念和流程,管理層憑自身主觀判斷確定員工的績效結(jié)果。
當團隊發(fā)展到一定規(guī)模時,管理層發(fā)現(xiàn)靠自己的判斷已經(jīng)不行了,所以就要搞一下績效管理。
這時候的績效管理可以理解為,團隊需要進行過程改進的一種預示。我們都知道過程改進領域有一個 PDCA 環(huán),而績效管理本身實際上也是一個 PDCA 環(huán)(見下圖)。

過程改進如同項目計劃需要進行階段性規(guī)劃和控制,績效管理也是一樣。通常績效管理具有周期性,即以一段時間為限形成上面的 PDCA 環(huán)。
實際操作過程中以一個月或一個季度作為基準的情況較多,最好不要超過一個季度,否則 PDCA 環(huán)的時效性將大打折扣,下文統(tǒng)稱這一周期為績效周期。
結(jié)合績效管理的 PDCA 環(huán)及其周期性,績效管理的規(guī)程如下:
制定績效計劃
目的是根據(jù)團隊的項目和研發(fā)任務,在績效周期開始時確定績效周期內(nèi)的個人工作計劃,確保為績效分析和溝通提供輸入。
主要角色是團隊中的每一個人。主要步驟上,團隊成員根據(jù)績效周期內(nèi)團隊整體工作目標進行分解和細化,確定個人的績效計劃,并形成《個人績效表》。
收集績效數(shù)據(jù)
目的是在績效周期結(jié)束時根據(jù)個人在績效周期內(nèi)的工作情況,收集績效數(shù)據(jù)并形成績效結(jié)果,為績效溝通提供個人的自評。主要角色同樣是個人。
主要步驟上,團隊成員基于在績效周期初確定的《個人績效表》中的績效計劃,結(jié)合績效周期中的具體工作完成情況進行自評,并填充《個人績效表》中的自評績效數(shù)據(jù)。
評估績效
目的在于根據(jù)績效周期內(nèi)的績效數(shù)據(jù)以及團隊整體計劃對團隊成員的績效進行評估,從而明確績效結(jié)果,為績效溝通提供他評。個人直屬上級會主導這一過程。
主要步驟是:團隊成員的直屬上級基于《個人績效表》中的績效計劃以及績效周期中的具體工作完成情況進行他評,并填充《個人績效表》中的他評績效數(shù)據(jù),他評數(shù)據(jù)中包括對績效的整體評分。
溝通績效
目的是根據(jù)績效計劃、員工自評和上級他評,對結(jié)果進行分析并明確改進思路和措施。個人及其直屬上級會和人事專員一起參與這一過程。
主要步驟為個人及其直屬上級進行面對面溝通,對該績效周期內(nèi)的結(jié)果展開討論,主要針對其中存在的問題觸發(fā)團隊成員自身的思考并找到改進的切入點。
三 、向外管理
在任何團隊中,任何場景都可能會有“扯皮”現(xiàn)象。扯皮現(xiàn)象有利有弊,很多結(jié)果有時并不是做出來的,而是協(xié)商出來的。有些事情看上去很難,但一協(xié)商發(fā)現(xiàn)并沒那么難,而一點小事如果沒有協(xié)商可能變成一件大事。
對于協(xié)商,換位思考或者說同理心可能是消除協(xié)商過程中出現(xiàn)過多扯皮現(xiàn)象的一大原則。
站在對方的立場上思考問題,然后再拋出符合對方立場的言論,并能引導到己方利益的觀點,這需要技巧性,這種技巧性的培養(yǎng)需要循序漸進的把握協(xié)商過程,而不是對任何問題都直奔主題。
同時,在協(xié)商過程中,不要掩蓋問題,尤其是對雙方都有影響的問題確保在協(xié)商過程中明確的提出來,并得出確切的結(jié)論。最后,關于協(xié)商原則記住一句話,態(tài)度要和藹但立場要堅定。
有一些障礙會導致協(xié)商過程的正常推進,其中包括組織中的政治因素,對架構(gòu)師而言,可能也會面臨很多技術性障礙。面對障礙,盡量尋找雙方的共同點,并采用“足夠好”而不是“最完美”的方案。
我們把整個協(xié)商過程分成協(xié)商前、協(xié)商中和協(xié)商后三個環(huán)節(jié)。其中,協(xié)商中的過程具體問題具體分析,對協(xié)商前和協(xié)商后則可以采取一些通用的手段和策略。
在協(xié)商前,最重要的是明確此次協(xié)商的目標,包括最低和最高目標。梳理哪些內(nèi)容是可以或不可以協(xié)商的,明確相關干系人,團結(jié)一切可以團結(jié)的力量。
另一方面,充分的準備是協(xié)商成功的一大關鍵,關于這次協(xié)商的數(shù)據(jù)、文檔、環(huán)境等因素都在考慮范圍之內(nèi)。
對于某些預想中比較難以協(xié)商的內(nèi)容,協(xié)商前對關鍵干系人或某些關鍵文件數(shù)據(jù)等進行私人或內(nèi)部團隊之間的預演也是必要的一些環(huán)節(jié)。
當協(xié)商完成之后,不管協(xié)商結(jié)果如何,記錄是必不可少的。對于本次協(xié)商中重要的決議確保進行文檔化和郵件化,如有必要也可以納入版本控制系統(tǒng)之中進行管理。
對決議的執(zhí)行過程中,明確決議的邊界,執(zhí)行自身相關的任務。但對于架構(gòu)師而言,還要嘗試學會委派下面的人進行任務執(zhí)行。
四 、自我管理
自我管理也是一種管理,而且執(zhí)行起來可能比上面幾個管理都要困難。
作為技術管理者,最重要的工作并不是沖到一線做各種技術研發(fā),而是要處理技術以及一些非技術相關的各項事宜。
所以處理事情是自我管理中除了個人風格外的又一個重要主題。處理事情需要做到對時間的合理利用以及對事情的管理和跟蹤。
技術管理者作為整個技術團隊的統(tǒng)一入口和出口,在對每件事情所持有的態(tài)度上應該有基本的原則。
重要且緊急的事情應該立刻去做
重要但不緊急的事情可以有計劃的做
不重要但緊急的事情應該學會委托他人去做
不重要不緊急的事情就盡量別做
以上通過時間管理的理念對事情的優(yōu)先級做了分析,時間管理的關鍵在于有一份每天的待辦事項清單,同樣的,跟蹤這些待辦事項也很重要。正如你向上級匯報一樣,需要時刻關注工作完成情況。
-
程序員
+關注
關注
4文章
956瀏覽量
30940 -
架構(gòu)師
+關注
關注
0文章
48瀏覽量
4913
發(fā)布評論請先 登錄
高通Oryon架構(gòu)之父宣布離職:曾一手定義移動芯片黃金時代
程序員最常見謊言
Wincc7.5工程師站與操作員站配置方法
普華基礎軟件開源龘V2.3和開源小滿V25.10上線
奔赴熱AI,碼力全開!Talkweb House@1024程序員日系列活動圓滿收官
開鴻智谷“以賽促學、以賽選才”|1024程序員節(jié)暨開源鴻蒙構(gòu)建大會圓滿落幕!
在TR組件優(yōu)化與存算一體架構(gòu)中構(gòu)建技術話語權(quán)
Tenstorrent 首席架構(gòu)師:未來 RISC-V 會是計算機的主流
如何釋放異構(gòu)計算的潛能?Imagination與Baya Systems的系統(tǒng)架構(gòu)實踐啟示
程序設計與數(shù)據(jù)結(jié)構(gòu)
如何在 樹莓派 上編寫和運行 C 語言程序?
零基礎入門:如何在樹莓派上編寫和運行Python程序?
Gemini Vision + Raspberry Pi 化身“數(shù)字導盲犬”?
程序員怎樣轉(zhuǎn)型為架構(gòu)師
評論