概述
在日常工作中,大到公司的 KPI 考核闸昨、戰(zhàn)略目標(biāo)設(shè)定蚯斯,小到項(xiàng)目例會、事故應(yīng)急處理饵较、需求優(yōu)先級調(diào)整拍嵌,這些事情如何處理,誰來處理都是被提前定義好的循诉。
從我的視角來看的話横辆,這些規(guī)則和流程都是某種機(jī)制的具現(xiàn)化,通常我們?yōu)榱私鉀Q某些問題茄猫、達(dá)成某些效果會定義一些規(guī)則狈蚤,希望人和事物發(fā)展在規(guī)則內(nèi)進(jìn)行和處理,這就是一個建立機(jī)制的過程划纽,而機(jī)制的落地的方式則是很多事物的組合(人脆侮、流程、工具阿浓、信息……)他嚷。
當(dāng)我們簡單地找到“機(jī)制是什么”的感覺之后,接下來就從三個方面展開“建機(jī)制”這件事兒(在這個過程中芭毙,我也會結(jié)合一些過往的小案例):
- 機(jī)制發(fā)揮什么作用?達(dá)到什么效果卸耘?
- 如何考慮和設(shè)計(jì)機(jī)制退敦?
- 機(jī)制在團(tuán)隊(duì)中如何落地?
機(jī)制發(fā)揮什么作用蚣抗?
一般而言侈百,我們?yōu)榱碎L期、持續(xù)翰铡、一致地拿到某個結(jié)果或者處理某些問題钝域,就會設(shè)計(jì)對應(yīng)的機(jī)制和流程。平時锭魔,你最容易接觸到兩類機(jī)制例证。
- 與管理相關(guān): 比如為了信息互通,約定每周固定時間通過郵件迷捧、會議织咧、IM 等方式胀葱,將提前定義好的信息做一個匯總交互(表現(xiàn)為周報、周會等)笙蒙,這就是機(jī)制的一種具現(xiàn)抵屿。
- 與技術(shù)相關(guān): 比如為了多人協(xié)同,制定開發(fā)流程捅位、Bug 處理轧葛、發(fā)布上線流程,甚至在日常實(shí)際開發(fā)的工作中艇搀,往往也先定義 API 契約朝群,然后在聯(lián)調(diào)測試時再真正實(shí)現(xiàn)驗(yàn)證,這些約定中符、契約姜胖、流程都是對應(yīng)機(jī)制在落地時的具體表現(xiàn)。
所以通俗來講淀散,“建機(jī)制”就是當(dāng)你要長期持續(xù)地處理一些問題時右莱,需要跟解決該問題的相關(guān)人針對怎么處理問題達(dá)成一致,然后按照約定的方式去執(zhí)行(回想一下前面學(xué)過的內(nèi)容档插,其實(shí)前幾講就與機(jī)制相關(guān)慢蜓,不管是穩(wěn)定性中的應(yīng)急機(jī)制、發(fā)布機(jī)制郭膛,還是技術(shù)債務(wù)中債務(wù) CheckList晨抡,其實(shí)都是在設(shè)計(jì)處理問題的機(jī)制)。
站在團(tuán)隊(duì)的角度则剃,建機(jī)制尤為重要耘柱,你要通過機(jī)制讓團(tuán)隊(duì)有統(tǒng)一的行為與規(guī)則,讓組織像人一樣棍现,言行舉止有規(guī)律可循调煎。
聽起來很容易,可要設(shè)計(jì)一個有效己肮、持續(xù)發(fā)揮作用的機(jī)制并不簡單士袄。你不但清晰地認(rèn)識到所處的環(huán)境和要解決的問題,還要讓團(tuán)隊(duì)成員認(rèn)可并實(shí)踐谎僻,畢竟大部分機(jī)制的執(zhí)行還是依賴于個人娄柳。
那你要怎么建立機(jī)制呢?
- 如何設(shè)計(jì)一個好的機(jī)制艘绍?
我們不能否認(rèn)赤拒,每個團(tuán)隊(duì)都會存在一些“特別不合理”的機(jī)制,比如因?yàn)閱栴}和環(huán)境已經(jīng)發(fā)生變化鞍盗,但是原有機(jī)制沒有隨之更新需了,顯得格格不入跳昼,不合常理愕乎;又比如為了解決 1 個問題所建立的機(jī)制又源源不斷地制造了新的問題养泡。
這時伤提,你不要著急著推翻重來募舟,而是要置身其中部蛇,明確“解決什么問題辽聊,想要得到什么結(jié)果”靡砌,先了解問題扩然、梳理思路然后再想辦法調(diào)整和優(yōu)化觅闽。另外帝雇,既然建機(jī)制是管理動作的一種,那么就要遵循我一直強(qiáng)調(diào)的“簡單蛉拙、容易理解尸闸、便于操作和完整閉環(huán)”。在這里我圍繞建立機(jī)制總結(jié)了三個關(guān)鍵點(diǎn)孕锄。
- 規(guī)則統(tǒng)一吮廉,不自相矛盾
一些機(jī)制是通過技術(shù)自動化實(shí)現(xiàn)的,比如系統(tǒng)出現(xiàn)異常自動告警畸肆,但管理工作中大部分機(jī)制是靠“共識契約”運(yùn)行的宦芦,所以機(jī)制定義明確、清晰轴脐、統(tǒng)一尤為重要调卑。比如定義“每周任務(wù)安排”的機(jī)制,規(guī)定:每周一下午2:30大咱,團(tuán)隊(duì)成員以先認(rèn)領(lǐng)再分配的方式確認(rèn)本周內(nèi)容恬涧,并商定交付時間、標(biāo)準(zhǔn)徽级,在會后將結(jié)論統(tǒng)一記錄并公布(通過 PM 工具或者郵件气破、文檔等方式)。
反之餐抢,如果該機(jī)制的運(yùn)行時間、參與者低匙、結(jié)論非明確或不固定(比如有時周一旷痕、有時周三,有時 3 個人顽冶、有時 5 個人欺抗,那么該機(jī)制就沒有任何實(shí)操的價值了)。所以强重,機(jī)制內(nèi)容要盡量統(tǒng)一和固化绞呈,讓成員有清晰且一致的認(rèn)識贸人。
簡單有效,便于增刪
不要設(shè)計(jì)需要成員用 10min 理解的機(jī)制佃声,機(jī)制的設(shè)計(jì)一定要圍繞某一個要解決的問題艺智,否則 Cover 的場景越多、條件越復(fù)雜圾亏,用的時候就會面臨很多困難十拣,機(jī)制本身也很難真實(shí)地發(fā)揮作用。比如一個處理慢 SQL 的機(jī)制志鹃,在如何定義慢 SQL 時夭问,如果有 N 種滿足條件需要人為處理,那么執(zhí)行起來就會很困難曹铃。所以缰趋,你可以先定義 2~3 個條件,比如時長超過 xxx 毫秒陕见,調(diào)用次數(shù)超過 xxx 次秘血,先讓機(jī)制跑起來可以處理問題,再慢慢優(yōu)化淳玩。緊盯整體結(jié)果直撤,機(jī)制的 ROI 要足夠高
有些機(jī)制看起來能解決某類問題,但當(dāng)你放大到一個團(tuán)隊(duì)或部門之后蜕着,為了解決該問題所付出的代價甚至超出了問題本身帶來的影響谋竖,那么就得不償失了。另外承匣,日常工作中“撿芝麻丟西瓜”的情況并不少見蓖乘,有的 Leader 為了最大程序掌握團(tuán)隊(duì)的開發(fā)工作,要求每人每天按照一定的格式書寫日報韧骗,然后由他進(jìn)行匯總嘉抒。
也許這個機(jī)制確實(shí)會幫團(tuán)隊(duì)發(fā)現(xiàn)一些問題,但也會增加低價值工作量袍暴,成員大量的時間在做計(jì)劃和總結(jié)卻沒有精細(xì)化執(zhí)行些侍,很多時候?yàn)榱私鉀Q A 問題卻產(chǎn)生了 B、C政模、D 等問題岗宣。
所以,機(jī)制的設(shè)立一定要站在整體和長期的視角去看淋样,去看它對每一個人和團(tuán)隊(duì)的影響耗式。
在現(xiàn)實(shí)工作中,樹立機(jī)制的維度你可以圍繞 4 點(diǎn):獎罰、反饋(線上問題的處理很典型刊咳,當(dāng)發(fā)現(xiàn)線上出現(xiàn)異常時彪见,怎么把相關(guān)信息反饋到對應(yīng)的負(fù)責(zé)人)、溝通(形式非常多娱挨,比如會議余指、周報、OneOne)让蕾、決策(需要很多人針對某一個問題給出具體的答案浪规,比如決定某一個技術(shù)方案)。
機(jī)制要怎么落地探孝?
當(dāng)你設(shè)計(jì)好一個機(jī)制想要它發(fā)揮作用時笋婿,需要所有相關(guān)人形成統(tǒng)一的共識,通扯俾可以將團(tuán)隊(duì)成員拉到一起開會討論缸濒,會上主要聊 3點(diǎn)內(nèi)容。
- 先說 why: 即機(jī)制的內(nèi)容是什么粱腻?為了解決什么問題庇配?你在設(shè)計(jì)機(jī)制時是如何思考的?
- 共識的要與不要: 和大家討論我們要不要這樣做绍些?看看大家是怎么想的捞慌,通過對話和引導(dǎo)形成一定的結(jié)論,有些內(nèi)容需要保留柬批,有些不合理需要剔除啸澡,促成結(jié)論最為重要。
- 承諾行為舉止: 確認(rèn)機(jī)制之后氮帐,需要讓結(jié)論形成對各自行為的約束嗅虏。比如不同的成員認(rèn)領(lǐng)不同的角色和任務(wù),或者在 IM 中一起公告規(guī)則上沐,總之每個成員要與機(jī)制的參與感皮服。
案例詳解
以上就是“建機(jī)制”主要的理論內(nèi)容,接下來我以信息互通的會議設(shè)計(jì)和開發(fā)流程中的CodeReview 為例参咙,和你進(jìn)一步看一下機(jī)制的具現(xiàn)應(yīng)該是怎樣的龄广。
會議是往往是重要信息溝通、討論蕴侧、同步的首選方式蜀细,很多重要機(jī)制的落地都會涉及會議的方式,這里我單獨(dú)把技術(shù)涉及的周期性會議羅列出來戈盈。
你可以看到[圖片上傳中...(image.png-a397c8-1630853610189-0)]
基于不同的目的所舉行的會議在時間、參與人、內(nèi)容上都有所差別塘娶。作為技術(shù)Leader 要先掌握怎么開會归斤,以及開什么樣的會,合理的會議安排不僅讓事情更加有條理刁岸,也便于團(tuán)隊(duì)成員參與脏里。
各類會議的設(shè)計(jì)
看完會議之后,我們再看一個更完整的案例虹曙,如何做 CodeReview 迫横? 如果我們站在想推行CodeReview 的思路去看,就需要設(shè)計(jì)一個機(jī)制讓大家能把 CodeReview 做下去酝碳。
先考慮目的矾踱, CodeReview 主要是解決兩方面的問題:提高代碼質(zhì)量;幫助開發(fā)同學(xué)認(rèn)識到如何寫出更好的代碼疏哗。不同的側(cè)重點(diǎn)設(shè)計(jì)出來的機(jī)制也有所不同呛讲,按照我的理解,CodeReview 的主要作用還是幫助大家成長返奉,打造團(tuán)隊(duì)內(nèi)的技術(shù)提升氛圍贝搁,次要才是促進(jìn)產(chǎn)品質(zhì)量的提升。
確定了核心想要達(dá)成的效果芽偏,接下來就可以著手確定機(jī)制的內(nèi)容雷逆,這里面要考慮幾個方面的內(nèi)容:可能會遇到的問題(阻力)、機(jī)制實(shí)施的成本污尉、機(jī)制運(yùn)行的時機(jī)和周期膀哲、站在一個機(jī)制參與者的角度考慮他要做什么。
具體 CodeReview 的機(jī)制方案可以參考下圖:
當(dāng)然十厢,再好的機(jī)制也不是萬能的等太,CodeReview 并不適合所有的團(tuán)隊(duì),比如:
- 團(tuán)隊(duì)成員對其產(chǎn)生很大的分歧蛮放,產(chǎn)生極大的內(nèi)耗缩抡;
- 需求和業(yè)務(wù)已經(jīng)應(yīng)接不暇,生存很困難包颁;
- 團(tuán)隊(duì)處于創(chuàng)新和嘗試的階段瞻想,并不穩(wěn)定。
我想強(qiáng)調(diào)娩嚼,任何一個機(jī)制都不會存在永久化收益蘑险,不是說在 A 團(tuán)隊(duì)的機(jī)制,放到 B 團(tuán)隊(duì)就一定會好岳悟。
總結(jié)
希望團(tuán)隊(duì)內(nèi)所有成員都按照統(tǒng)一的方式去合力解決一個問題非常困難佃迄,而建機(jī)制在某種程度上就是為了解決“群策而不群力”的問題泼差。另外,每一個機(jī)制的創(chuàng)建都存在成本呵俏,如果一個組織內(nèi)名存實(shí)亡的機(jī)制過多堆缘,那么大家對機(jī)制的認(rèn)識和執(zhí)行都會越來越差,最終團(tuán)隊(duì)會一盤散沙普碎、毫無凝聚力吼肥。反之,設(shè)計(jì)良好的機(jī)制會讓團(tuán)隊(duì)整體的執(zhí)行力提升麻车,并且最大程序的將每個人的能力與特長整合起來缀皱。