
(一)助理
在攻城獅的世界里,陽(yáng)盛陰衰是普遍現(xiàn)象,這或許是這個(gè)行業(yè)的工作強(qiáng)度太大所致,作為為數(shù)不多的IT從業(yè)的女生們,既要有扎實(shí)的專業(yè)背景,又要負(fù)責(zé)貌美如花,這足以讓我們這些不修邊幅的攻城獅們尊重和愛(ài)護(hù)。
在老張的公司里,每個(gè)項(xiàng)目組都配備了一名助理妹紙,很好的做到了陰陽(yáng)調(diào)和,男女搭配干活不累。在日常工作里,助理妹紙們要負(fù)責(zé)建立起一線攻城獅與領(lǐng)導(dǎo)層之間溝通的橋梁,同時(shí),作為女孩子,愛(ài)美是天性,她們淡掃蛾眉,裙角飛揚(yáng),一笑百媚,出水芙蓉,是公司一道極其靚麗的風(fēng)景線。
通過(guò)Handler和他的小伙伴們(上)篇和中篇的介紹,我們了解到:在老張的公司里,助理有兩類,一類是總經(jīng)理助理(主線程mainLooper),另一類則是團(tuán)長(zhǎng)助理(HanderThread或任何非主線程中的Looper)。作為總經(jīng)理助理,她的工作能力出類拔萃,是唯一可以與老張直接進(jìn)行信息對(duì)接的角色。意識(shí)到這一點(diǎn)之后,很多野心勃勃的團(tuán)長(zhǎng)若有所思。
(二)分歧
在眾多的團(tuán)長(zhǎng)中,有一位雷厲風(fēng)行的管理者,他承擔(dān)著公司最核心的業(yè)務(wù)。他十分崇尚敏捷開發(fā),并采用了Scrum框架進(jìn)行實(shí)踐,在敏捷開發(fā)模式下,他負(fù)責(zé)的產(chǎn)品快速迭代、試錯(cuò)、接受市場(chǎng)的考驗(yàn),在老張創(chuàng)業(yè)的第二年里立下了不少汗馬功勞。由于功績(jī)顯赫,且具備頂尖的技術(shù)水平和開闊的視野,這讓其他項(xiàng)目組倍感壓力,這其中也包括他的直接上級(jí)——技術(shù)總監(jiān)。
這位能力出眾的團(tuán)長(zhǎng)和技術(shù)總監(jiān)向來(lái)不和,他們?cè)诓簧偈虑樯洗嬖诜制?。他認(rèn)為,公司在第一年中開發(fā)了基礎(chǔ)技術(shù)平臺(tái),提高了每個(gè)項(xiàng)目組的開發(fā)效率,雖然已經(jīng)磨合了一年,但仍存在不少問(wèn)題,如今參與維護(hù)的人員卻越來(lái)越少,且互相推諉,這種“只管生不管養(yǎng)”的做法對(duì)產(chǎn)品本身帶來(lái)極大的傷害。
當(dāng)然,技術(shù)總監(jiān)身上的壓力巨大,有限的資源和來(lái)自市場(chǎng)部的強(qiáng)壓,使他必須做出取舍,因此在當(dāng)前階段只能犧牲內(nèi)部基礎(chǔ)平臺(tái)的完善,將資源傾斜于來(lái)自市場(chǎng)所需要的產(chǎn)品。兩個(gè)人各有立場(chǎng)。這一切,老張看在眼里,他的策略是欲擒故縱,即不作為。一個(gè)公司里,高層如果一派祥和,死氣沉沉,并非是一件好事情,適當(dāng)?shù)臎_突和矛盾,可以刺激高層的進(jìn)取心,只要大家都是為了產(chǎn)品和市場(chǎng)。
(三)越權(quán)
這位雷厲風(fēng)行的管理者便是 AsyncTask 。與其他團(tuán)長(zhǎng)不一樣,他野心勃勃,善弄權(quán)術(shù),而且目標(biāo)性極強(qiáng),我們暫且稱之為A總,由于他與CTO的關(guān)系十分微妙,在現(xiàn)有的形勢(shì)里,他想要達(dá)到2個(gè)目標(biāo):
- 繞開技術(shù)總監(jiān),直接向CEO老張匯報(bào)。
- 組織自己的領(lǐng)導(dǎo)班子,實(shí)施自己的管理手腕。
第一個(gè)目標(biāo),擅長(zhǎng)察言觀色的 AsyncTask 團(tuán)長(zhǎng),很快意識(shí)到老張公司里很關(guān)鍵的一個(gè)環(huán)節(jié)——總經(jīng)理助理,她是CTO和老張之間的橋梁,只要搞定她,所有的工程便可繞開CTO,直接向老張匯報(bào)。
第二個(gè)目標(biāo),所謂三個(gè)臭皮匠賽過(guò)諸葛亮,AsyncTask 為自己的領(lǐng)導(dǎo)班子定義了三個(gè)角色。分別是:
- 產(chǎn)品策劃——FutureTask
- 產(chǎn)品經(jīng)理——SerialExecutor
- 內(nèi)部政委——InternalHandler
總經(jīng)理助理知性、干練、處處以大局為重,然而她并不喜歡辦公室政治,不喜歡凌駕于制度之上的事情,A總雖然心思縝密,運(yùn)籌帷幄,然而在與總經(jīng)理助理這層關(guān)系上始終找不到合適的時(shí)機(jī)實(shí)現(xiàn)他的第一個(gè)目標(biāo)。所以,第一個(gè)目標(biāo)暫且擱下,我們先來(lái)詳細(xì)看看A總定義的領(lǐng)導(dǎo)班子。
首先是產(chǎn)品策劃(FutureTask),這個(gè)角色最重要的職責(zé)是定義產(chǎn)品的內(nèi)容(在doInBackground()中定義),反饋產(chǎn)品的預(yù)期成果(postResult()),根據(jù)產(chǎn)品前期運(yùn)營(yíng)情況來(lái)預(yù)判是否取消產(chǎn)品方向(cancel()),該角色的工作成果輸出形式是策劃案子(即 FutureTask對(duì)象,其本質(zhì)是線程接口Runnable)。AsyncTask 之所以欽定了 FutureTask 來(lái)充當(dāng)該角色,首先他是線程,其次作為線程,執(zhí)行后是有返回值的,并且可以取消任務(wù),這些特質(zhì)使其在這個(gè)角色上大放異彩。



接下來(lái)是產(chǎn)品經(jīng)理——SerialExecutor。產(chǎn)品經(jīng)理比策劃略大一級(jí),他的職責(zé)是審核策劃案子,并協(xié)調(diào)資源實(shí)施案子。A總對(duì)產(chǎn)品精益求精,他希望有限的資源全部投入到當(dāng)前的產(chǎn)品中,因此要求團(tuán)隊(duì)成員克制欲望,不要輕易的擴(kuò)張產(chǎn)品線。產(chǎn)品經(jīng)理很好的貫徹了團(tuán)長(zhǎng)的意圖,從名字上看,串行的Executor,對(duì)于每個(gè)策劃案子,產(chǎn)品經(jīng)理都會(huì)協(xié)調(diào)資源,認(rèn)認(rèn)真真執(zhí)行完后,才會(huì)開始下一個(gè)案子的執(zhí)行(SerialExecutor會(huì)串行的執(zhí)行線程,并不會(huì)并發(fā))。

最后來(lái)談?wù)剝?nèi)部政委——InternalHandler。通過(guò)前兩篇文章的介紹,作為政委,通常都會(huì)有助理與之配合,在助理的選擇上,A總一籌莫展,因?yàn)樗敫愣ǖ氖强偨?jīng)理助理。InternalHandler的工作與助理息息相關(guān),如何通過(guò)助理將產(chǎn)品的研發(fā)進(jìn)度和研發(fā)成果反饋給CEO老張?此時(shí),問(wèn)題的關(guān)鍵又來(lái)到第一個(gè)目標(biāo)的落實(shí)。
職場(chǎng)中總是避免不了人情世故,A總苦思冥想對(duì)策,卻意外發(fā)現(xiàn)總經(jīng)理助理是他三姑的七大姨的孫女,有了這層關(guān)系,所有的問(wèn)題都迎刃而解,親情牌加上A總敬業(yè)的工作態(tài)度,終于打動(dòng)了總經(jīng)理助理,她與AsyncTask展開了默契的協(xié)作。

A總的專業(yè)能力和人際關(guān)系能力相得益彰,在打造產(chǎn)品方面也兢兢業(yè)業(yè),收獲了市場(chǎng)的回報(bào),也獲得了老張的賞識(shí)。
以技術(shù)總監(jiān)為首的Handler機(jī)制,以及以強(qiáng)勢(shì)團(tuán)長(zhǎng)為首的AsyncTask機(jī)制,都能與老張(主線程)很好的協(xié)作,雖說(shuō)一山不容二虎,但有這樣的左膀右臂,老張做夢(mèng)都在偷笑,他要做的便是謹(jǐn)慎維持這樣的關(guān)系,保證兩者都有發(fā)揮的空間,維持彼此之間正當(dāng)?shù)母?jìng)爭(zhēng)。(AsnycTask 還有很多細(xì)節(jié)沒(méi)有講到,筆者已經(jīng)在另外一一篇文章中有所介紹,感興趣的可前往這里)
(四)愛(ài)情
當(dāng)然,職場(chǎng)中也并非都是爾虞我詐你死我活,在老張的公司,有這樣一個(gè)團(tuán)隊(duì),猶如一股清泉,不越權(quán)不奪權(quán),專注于技術(shù)和產(chǎn)品。與其他團(tuán)長(zhǎng)處心積慮的在老張面前諂媚爭(zhēng)寵不一樣,這個(gè)團(tuán)隊(duì)熱愛(ài)技術(shù),熱愛(ài)開源,專注于自己的一畝三分地,做好本分的工作,盡可能的不去打擾老張。
首先來(lái)看下這個(gè)團(tuán)隊(duì)的組織結(jié)構(gòu):

團(tuán)長(zhǎng)——政委——助理,這個(gè)管理模式在上一篇文章里我們?cè)偈煜げ贿^(guò)了,不同的是,這個(gè)團(tuán)隊(duì)里,從上而下,都是年輕的90后,朝氣蓬勃,扁平管理,絲毫沒(méi)有上下級(jí)的官僚風(fēng)氣。接下來(lái)我們來(lái)看下這個(gè)團(tuán)隊(duì)是如何協(xié)作的:

作為年輕的團(tuán)隊(duì)領(lǐng)頭人——IntentService,他技術(shù)扎實(shí),視野開闊,對(duì)技術(shù)有所追求的人一般在其他領(lǐng)域也不落下風(fēng),他熱愛(ài)音樂(lè)和足球,陽(yáng)光帥氣,舉手投足之間都有大將之風(fēng)。而這個(gè)部門的助理,亭亭玉立,活潑可愛(ài),單純靈動(dòng),她的笑容令人如沐春風(fēng)。兩人很快確立了戀愛(ài)關(guān)系,在工作之余,他們有屬于自己獨(dú)特的交流方式,左眼眨代表0,右眼眨代表1,0101000101,用二進(jìn)制表達(dá)所有的愛(ài)意。這是十分難得的美好而單純的職場(chǎng)愛(ài)情,祝愿他們能守候彼此,開花結(jié)果。
對(duì)于這樣的千里馬,老張不會(huì)錯(cuò)過(guò)充當(dāng)伯樂(lè)的機(jī)會(huì),他給予這個(gè)團(tuán)隊(duì)充分的信任和支持。而團(tuán)隊(duì)也充分回報(bào)了老張的信任,他們?cè)谏鐓^(qū)中開源的一些技術(shù)框架,以及輸出的技術(shù)博客,都在業(yè)內(nèi)廣為流傳,為老張的公司帶來(lái)不少知名度,也間接了吸引了很多技術(shù)人才,減少了招聘的成本。
生活也好工作也罷,原本就是如此簡(jiǎn)單,堅(jiān)守自己一畝三分地,愛(ài)崗敬業(yè),認(rèn)認(rèn)真真做好技術(shù)和產(chǎn)品,為公司盈利,同時(shí)不斷打磨完善自己的技能。少些怨天尤人,少些懷才不遇的碎碎念,在互聯(lián)網(wǎng)時(shí)代,是金子終會(huì)發(fā)光,讓技術(shù)領(lǐng)域的職場(chǎng)變得更透明簡(jiǎn)單,事業(yè)、利益始終不會(huì)虧待這樣的你。
(五)Handler和他的小伙伴們
老張的團(tuán)隊(duì)核心骨干已經(jīng)悉數(shù)登場(chǎng),真是八仙過(guò)海各顯神通,接下來(lái)梳理下這些年來(lái)老張公司里的英雄榜。
主線程。這便是公司的創(chuàng)始人老張,也是UI線程,主線程擁有自己的Handler和Looper。
工作線程。這是工程獅團(tuán)隊(duì)們,也就是程序猿,產(chǎn)品汪,設(shè)計(jì)喵們,他們通過(guò)主線程的Handler能與主線程通訊。
HandlerThread。團(tuán)長(zhǎng)們,每個(gè)項(xiàng)目組的老大,這條線程擁有自己的Handler和Looper,通過(guò)主線程的Handler能與主線程通訊。
Handler。這是技術(shù)總監(jiān)或者政委,在主線程中他便是技術(shù)總監(jiān),在團(tuán)長(zhǎng)的團(tuán)隊(duì)中,則為政委。
Looper。美麗的助理妹紙,在主線程中她是總經(jīng)理助理,在HandlerThread中,則是團(tuán)長(zhǎng)助理。線程之間能通訊,Handler和Looper功勞最大。
Message和MessageQuene。這是助理的工具箱,收集了來(lái)自各個(gè)工作線程的消息,存放于消息隊(duì)列,通過(guò)Handler傳達(dá)給相應(yīng)的線程進(jìn)行處理。
AsyncTask。一個(gè)兼具實(shí)力和野心的管理者,他與主線程的mainLooper密切合作,是主線程Handler的可替代方案之一。
IntentService。這是一個(gè)年輕優(yōu)秀團(tuán)隊(duì)的老大,愛(ài)情和事業(yè)雙豐收。他將Service-HandlerThread-Handler-Looper完美結(jié)合。
(六)后記
老張的公司仍然在飛速發(fā)展,回首這兩三年,作為技術(shù)出身的老張感慨萬(wàn)千,與代碼交流和與人打交道各有樂(lè)趣,如今的他既要應(yīng)付一群手握資源卻飛揚(yáng)跋扈的真小人,也要面對(duì)著道貌岸然卻貪得無(wú)厭的偽君子,同時(shí)也有公司中兢兢業(yè)業(yè)奉獻(xiàn)青春的可愛(ài)的小伙伴們。老張任重道遠(yuǎn),對(duì)于他來(lái)說(shuō),要做的便是嚴(yán)于律己,不忘初心,尊重工程師,對(duì)技術(shù)敬畏,順應(yīng)市場(chǎng),迎接時(shí)代的浪潮。
老張創(chuàng)業(yè)的故事仍然在繼續(xù)。