從碼農(nóng)到架構(gòu)師,如何成長(zhǎng)為技術(shù)Leader?
快狗打車(原 58 速運(yùn))是覆蓋中國(guó)及東南亞的貨運(yùn)打車品牌,在業(yè)務(wù)的發(fā)展過(guò)程中,張凱也經(jīng)歷了從一線開(kāi)發(fā)者晉升為司機(jī)端負(fù)責(zé)人的過(guò)程。
在這篇文章中,他將以自己的親身經(jīng)歷,與大家分享技術(shù)領(lǐng)導(dǎo)者成長(zhǎng)過(guò)程中的幾大常見(jiàn)難題,以及一名合格的架構(gòu)師應(yīng)具備的素質(zhì)。
從去年開(kāi)始帶團(tuán)隊(duì),到目前作為司機(jī)端研發(fā)部的負(fù)責(zé)人,團(tuán)隊(duì)的規(guī)模由 4 人變成了 20 人,成長(zhǎng)很多,也碰到了很多問(wèn)題,想將自己這一年來(lái)的經(jīng)驗(yàn)和教訓(xùn)和大家探討一下。
究竟怎么做技術(shù)招聘?
首先,我想來(lái)談?wù)劶夹g(shù)人如何做招聘。帶隊(duì)碰到的頭一件事就是招聘。招聘的主要任務(wù)就是招到合適的人,簡(jiǎn)單的說(shuō),看這個(gè)人的氣味是否符合當(dāng)前團(tuán)隊(duì),是否符合公司的整體要求。
當(dāng)然這些僅僅是技術(shù)招聘的基本要求,我們還要求基礎(chǔ)扎實(shí),精通某一方向等等。
作為招聘者,我們每天要處理的簡(jiǎn)歷有上百封,如何在完成工作的同時(shí),提高自己的效率?我的經(jīng)驗(yàn)有以下幾點(diǎn):
提高簡(jiǎn)歷的篩選效率
每份簡(jiǎn)歷都不一樣,如何高效篩選?我的做法是篩選關(guān)鍵字,看簡(jiǎn)歷里是否有我們需要崗位的關(guān)鍵字。
每個(gè)職位需求里都有對(duì)應(yīng)崗位的要求,我們要大概瀏覽一遍簡(jiǎn)歷,符合關(guān)鍵字要求的再接著往下看。
我碰到很多技術(shù)求職者的簡(jiǎn)歷里,項(xiàng)目寫(xiě)得很多,但技術(shù)點(diǎn)沒(méi)有體現(xiàn)一個(gè),這樣的簡(jiǎn)歷很快就會(huì)被篩掉。
技術(shù)是為業(yè)務(wù)服務(wù)的,所以簡(jiǎn)歷里一定要體現(xiàn)你用什么技術(shù)解決了什么問(wèn)題,最好還能體現(xiàn)相關(guān)的收益。
比如:使用多線程技術(shù),解決了首頁(yè)加載緩慢的問(wèn)題,使首頁(yè)的加載速度提升了 10 倍。技術(shù)人的簡(jiǎn)歷,應(yīng)該體現(xiàn)技術(shù)點(diǎn)。
提高約面的效率
每天從上百封簡(jiǎn)歷里面,我們會(huì)篩選出幾十封進(jìn)行約面。全部約過(guò)來(lái)有可能面試官會(huì)忙不過(guò)來(lái)。
那么如何提高約面效率,使我們的到面效率也能提高呢?我的做法是對(duì)篩選出來(lái)的簡(jiǎn)歷,進(jìn)行一輪約 10 分鐘左右的電話面試。
當(dāng)然,電話面試的題目一定是封閉的題目,答得對(duì)就過(guò)。電話面試可以快速過(guò)濾不符合要求的應(yīng)聘者。
不要為了招聘進(jìn)度而放棄篩選標(biāo)準(zhǔn)
金三銀四,找工作的人很多,我們對(duì)人才的需求也很大。HR 小姐姐有招聘指標(biāo),技術(shù)的 Leader 們同樣期待能夠快速完成招聘。
每天從早到晚的面試很痛苦。所以,我們能不能稍微的放一下水,盡快完成招聘?
答案是不能——暫時(shí)放水很輕松,但是如果未來(lái)候選人入職后不符合要求,或者與預(yù)期的發(fā)展不一致,重新招聘會(huì)給團(tuán)隊(duì)和公司帶來(lái)不必要的損失,也會(huì)給求職者帶來(lái)麻煩。寧可空缺,也不能放低要求。
如何持續(xù)提升團(tuán)隊(duì)的執(zhí)行力?
接下來(lái),人找齊了,怎么能讓我們的團(tuán)隊(duì)更快更好地服務(wù)于業(yè)務(wù),持續(xù)提升團(tuán)隊(duì)的執(zhí)行力?這里我總結(jié)一些快狗打車的實(shí)戰(zhàn)經(jīng)驗(yàn)。
小師傅制度
技術(shù)新員工入職后,我們會(huì)有小師傅帶領(lǐng),前兩個(gè)星期熟悉公司的框架及技術(shù)棧,做一個(gè)簡(jiǎn)單的 Demo 出來(lái)。
然后由小師傅帶領(lǐng),從改 Bug 開(kāi)始,逐步介入到項(xiàng)目中去。小師傅制度的好處是不僅能幫新員工解決技術(shù)問(wèn)題,還能幫他們更快速地融入團(tuán)隊(duì)。
負(fù)責(zé)人制度
我們實(shí)行項(xiàng)目負(fù)責(zé)人制度,每個(gè)項(xiàng)目都安排一個(gè)項(xiàng)目負(fù)責(zé)人。人人都有機(jī)會(huì)成為項(xiàng)目負(fù)責(zé)人,項(xiàng)目負(fù)責(zé)人決定參與項(xiàng)目的相關(guān)人員,為項(xiàng)目質(zhì)量及結(jié)果負(fù)責(zé)。這一制度使大家都有了主人翁意識(shí)、危機(jī)感及榮譽(yù)感。
我們還實(shí)行模塊負(fù)責(zé)人制度,每人對(duì)自己的模塊質(zhì)量負(fù)責(zé),對(duì)模塊質(zhì)量好的負(fù)責(zé)人進(jìn)行獎(jiǎng)勵(lì),模塊質(zhì)量不好的,要做總結(jié)、提出改進(jìn)計(jì)劃,并定期檢查執(zhí)行情況。
強(qiáng)調(diào)執(zhí)行力
我們要求每件事都要有人跟進(jìn),必有跟進(jìn)結(jié)果并及時(shí)反饋。如果暫時(shí)沒(méi)有結(jié)果,及時(shí)反饋進(jìn)度并給出預(yù)計(jì)的時(shí)間,然后持續(xù)跟進(jìn)。
技術(shù)路線 or 管理路線,怎么選?
團(tuán)隊(duì)搭建好了,小伙伴們也越來(lái)越給力,很多的業(yè)務(wù)需求并不需要自己參與。每天的會(huì)議很多,還會(huì)有很大的精力放在相關(guān)的協(xié)調(diào)工作上。
所以,一個(gè)技術(shù)人很常見(jiàn)的問(wèn)題就來(lái)了:我是堅(jiān)持走技術(shù)路線呢,還是走管理崗位?
這個(gè)問(wèn)題其實(shí)并沒(méi)有標(biāo)準(zhǔn)答案。每個(gè)人的喜好不同,對(duì)自己的規(guī)劃也不同。但我覺(jué)得不論走技術(shù)路線還是管理路線,首先技術(shù)能力是不可或缺的。
技術(shù)人,如果自己的技術(shù)都不過(guò)關(guān),很難領(lǐng)導(dǎo)好一個(gè)團(tuán)隊(duì)。最基礎(chǔ)的,面臨一個(gè)技術(shù)問(wèn)題的排期,如果你技術(shù)不過(guò)關(guān),恐怕也很難保證收到的排期是合理的、符合預(yù)期的。
其次是帶隊(duì)能力。技術(shù)專家并不只關(guān)注技術(shù)。技術(shù)是為業(yè)務(wù)服務(wù)的,一味地講技術(shù)深度,做出來(lái)的東西有時(shí)候并不符合業(yè)務(wù)的需要。
所以,技術(shù)專家的存在,一是帶領(lǐng)大家對(duì)技術(shù)做攻關(guān),二是確保業(yè)務(wù)需求的架構(gòu)設(shè)計(jì)更合理。
當(dāng)然,管理方向和技術(shù)方向?qū)€(gè)人的要求還是有區(qū)別的。管理方向更多的是帶領(lǐng)團(tuán)隊(duì)完成某件事,利用好人;例如按照公司的戰(zhàn)略方向,制定團(tuán)隊(duì)的作戰(zhàn)方法。
技術(shù)專家則更多關(guān)注的是技術(shù)如何更好地服務(wù)業(yè)務(wù),利用自身的技術(shù)能力,賦能業(yè)務(wù)、賦能團(tuán)隊(duì)。所以一定要根據(jù)自身的實(shí)際情況及個(gè)人規(guī)劃,選擇自己未來(lái)要走的路。
合格的架構(gòu)師該有怎樣的素質(zhì)?
那么,如果選擇了技術(shù)路線,一名合格的架構(gòu)師到底應(yīng)該具備怎樣的素質(zhì)呢?
首先,一名合格的架構(gòu)師一定是懂業(yè)務(wù)的。
沒(méi)有業(yè)務(wù),架構(gòu)也就無(wú)從談起。合理的架構(gòu)也一定是隨著業(yè)務(wù)的發(fā)展逐步進(jìn)化的。
大部分初創(chuàng)公司人員簡(jiǎn)單,業(yè)務(wù)簡(jiǎn)單且變化較快,這個(gè)時(shí)候,單體應(yīng)用比較合適。因?yàn)閱误w應(yīng)用有更高的開(kāi)發(fā)效率,能夠快速試錯(cuò)。
但業(yè)務(wù)量上漲之后,公司的規(guī)模一般也會(huì)變大,人員增多,組織部門(mén)開(kāi)始劃分。
這時(shí)就要開(kāi)始服務(wù)化,降低系統(tǒng)間的耦合,職責(zé)更加清晰,每個(gè)部門(mén)對(duì)自己所負(fù)責(zé)的服務(wù)負(fù)責(zé)。
隨著業(yè)務(wù)量的持續(xù)上漲,就要進(jìn)行更細(xì)的劃分,這時(shí)可能就要使用微服務(wù)。微服務(wù)越來(lái)越多,就要去解決服務(wù)治理,服務(wù)發(fā)現(xiàn)等一系列問(wèn)題。所以說(shuō),好的架構(gòu)師一定是為業(yè)務(wù)設(shè)計(jì)架構(gòu)。
快狗打車業(yè)務(wù)初期架構(gòu)圖
快狗打車速運(yùn)通小程序架構(gòu)圖
其次,一名合格的架構(gòu)師要有一定的技術(shù)前瞻性。
架構(gòu)師一定要站在業(yè)務(wù)和技術(shù)的更前端,考慮業(yè)務(wù)的發(fā)展對(duì)架構(gòu)的影響,以最小的變動(dòng),支撐業(yè)務(wù)的發(fā)展。
拿快狗的訂單服務(wù)來(lái)說(shuō),早期,單體應(yīng)用沒(méi)有訂單服務(wù),整個(gè)業(yè)務(wù)都是一個(gè)大的數(shù)據(jù)庫(kù)。
當(dāng)業(yè)務(wù)量上來(lái)后,有了訂單服務(wù),訂單表從大庫(kù)拆分,僅僅進(jìn)行了拆表操作,沒(méi)有進(jìn)行拆庫(kù),導(dǎo)致后期訂單庫(kù)成為了業(yè)務(wù)瓶頸,再次進(jìn)行拆庫(kù)耗費(fèi)了很多的人力物力。
如果主導(dǎo)這次拆分的是一個(gè)合格的架構(gòu)師,應(yīng)該從一開(kāi)始就要考慮到目前的技術(shù)選型是否符合業(yè)務(wù)的長(zhǎng)期發(fā)展需求,選擇一個(gè)更加合適的架構(gòu)。
再次,一名合格的架構(gòu)師要有良好的溝通協(xié)作能力。
好的架構(gòu)師能將自己的設(shè)計(jì)通俗易懂的講給低級(jí)別的小伙伴,不僅要做到傳道還要授業(yè)解惑。
同時(shí),在日常工作中,能夠?qū)⒆约旱倪x型及設(shè)計(jì)清楚地傳達(dá)下去,合理分工,還能交代清楚為什么這樣做,這樣做的好處是什么。
讓每個(gè)人都清楚自己的職責(zé),更好地完成工作內(nèi)容。好的架構(gòu)師能夠關(guān)注業(yè)務(wù)重點(diǎn),及時(shí)解決小伙伴們碰到的技術(shù)問(wèn)題,給予支持,幫助整個(gè)團(tuán)隊(duì)一起提升。
最后,一名合格的架構(gòu)師要有持續(xù)學(xué)習(xí)的心態(tài)。
新的技術(shù)層出不窮,持續(xù)不斷地學(xué)習(xí)是技術(shù)人必備的通用素質(zhì),但架構(gòu)師尤甚。
新的技術(shù)能否幫助業(yè)務(wù)發(fā)展,我們現(xiàn)有的技術(shù)體系是否有需要借鑒的地方,都是架構(gòu)師要持續(xù)學(xué)習(xí)的。
除了技術(shù),業(yè)務(wù)方向也是架構(gòu)師需要學(xué)習(xí)的點(diǎn),架構(gòu)師要有廣闊的視野,才能在后續(xù)的業(yè)務(wù)中有好的架構(gòu)設(shè)計(jì)。
成為管理者后如何持續(xù)學(xué)習(xí)?
成為技術(shù) Leader 之后,每天需要花費(fèi)大量時(shí)間來(lái)進(jìn)行團(tuán)隊(duì)管理、協(xié)調(diào)、會(huì)議等,如何能夠保證持續(xù)不斷的學(xué)習(xí)?
首先,我認(rèn)為學(xué)習(xí)分為業(yè)務(wù)學(xué)習(xí)和技術(shù)學(xué)習(xí)。
業(yè)務(wù)學(xué)習(xí)是跟隨著業(yè)務(wù)發(fā)展,逐步增加自己的業(yè)務(wù)理解程度,同時(shí)要通過(guò)總結(jié)、歸納沉淀為自己掌握的知識(shí)。
技術(shù)學(xué)習(xí)又可以分兩種:
- 業(yè)務(wù)用得到的技術(shù):可以通過(guò)工作持續(xù)地學(xué)習(xí)加深,是必須要 100% 掌握的;
- 業(yè)務(wù)用不到的技術(shù):可通過(guò)平常的空閑時(shí)間大概瀏覽一下,知道是什么、解決什么問(wèn)題即可,等到用的時(shí)候再來(lái)詳細(xì)了解。
其次,學(xué)習(xí)是一個(gè)持續(xù)的過(guò)程,一定要合理規(guī)劃好時(shí)間。比如我早上從家到公司需要一個(gè)小時(shí)的地鐵,這一個(gè)小時(shí)就可以被利用來(lái)看書(shū)。
還可以給自己定一個(gè)目標(biāo),多長(zhǎng)時(shí)間學(xué)習(xí)一個(gè)東西,給點(diǎn)壓力逼迫自己去堅(jiān)持。久而久之,養(yǎng)成良好的習(xí)慣之后,學(xué)習(xí)就是自然而然的事了。
以上是我這一年來(lái)的經(jīng)驗(yàn)和教訓(xùn),希望能對(duì)你有所幫助。每個(gè)人的職業(yè)發(fā)展道路都不一樣,希望大家能夠提前規(guī)劃好自己的人生道路,堅(jiān)定地走下去。
同時(shí),盡可能提高自己的視野,更加嚴(yán)格地要求自己,相信不久的將來(lái),你也會(huì)成為一名優(yōu)秀的架構(gòu)師。
張凱,現(xiàn)任快狗打車司機(jī)端負(fù)責(zé)人,Java 專家,多年一線開(kāi)發(fā)經(jīng)驗(yàn)。2017 年帶領(lǐng)團(tuán)隊(duì)完成了速運(yùn)通等多個(gè)重點(diǎn)項(xiàng)目的開(kāi)發(fā)工作,并作為演講嘉賓參與了 Gdevops,top100 等多個(gè)技術(shù)大會(huì)。