从工程转向管理,访谈Github公司的Phil Haack
在本次播客中,QCon舊金山大會(huì)、?倫敦大會(huì)和紐約大會(huì)的主席Wes Reisz訪談了GitHub的工程主管Phil Haack,Haack在Github的工作聚焦于實(shí)現(xiàn)將軟件推送到開(kāi)發(fā)人員的桌面,當(dāng)前正致力于發(fā)布GitHub Desktop這樣的軟件。GitHub Desktop是用于Visual Studio開(kāi)發(fā)工具和Atom文本編輯器的Github擴(kuò)展。Haack于2011年加入Github,他也是.Net社區(qū)中的重量級(jí)人物。在Microsoft工作時(shí),Phil在NewGit、ASP.NET和MVC.NET的發(fā)布中起到了核心作用。
關(guān)鍵要點(diǎn):
我們常過(guò)度關(guān)注軟件開(kāi)發(fā)實(shí)踐的具體細(xì)節(jié)。但是當(dāng)擴(kuò)展到大型的項(xiàng)目和團(tuán)隊(duì)時(shí),挑戰(zhàn)就不再是技術(shù)上的,而是社會(huì)問(wèn)題。
研究顯示了多樣化程度更高的團(tuán)隊(duì)會(huì)更加的高效。
正在向管理層轉(zhuǎn)化的工程師應(yīng)將這種轉(zhuǎn)化看成是與任何技術(shù)領(lǐng)域一樣的一門學(xué)問(wèn);這并非是一件“僅靠即興發(fā)揮”就能去處理的事情。
建立高效團(tuán)隊(duì)需要信任,信任的存在可使團(tuán)隊(duì)成員在不破壞相互關(guān)系情況下,進(jìn)行坦率的探討和健康的辯論。一對(duì)一交流是一種實(shí)現(xiàn)信任的有效方法。
要成為工程師團(tuán)隊(duì)中有影響力的教練,管理者需要體現(xiàn)出強(qiáng)大的技術(shù)領(lǐng)導(dǎo)力。在技術(shù)上不可靠的人通常不會(huì)被技術(shù)團(tuán)隊(duì)很好地接納。
點(diǎn)擊播客鏈接收聽(tīng)
播客記錄
1分59秒:“我們常過(guò)度關(guān)注軟件開(kāi)發(fā)實(shí)踐的具體細(xì)節(jié)。但是當(dāng)擴(kuò)展到大型的項(xiàng)目和團(tuán)隊(duì)時(shí),挑戰(zhàn)就不再是技術(shù)上的,而是社會(huì)問(wèn)題。”(引用自Peopleware)。在從按個(gè)人喜好開(kāi)發(fā)項(xiàng)目轉(zhuǎn)到參與幾十上百人共事的大型開(kāi)發(fā)項(xiàng)目的過(guò)程中,開(kāi)發(fā)人員所面對(duì)的最艱難挑戰(zhàn)在于如何與他人共事、如何很好地相互協(xié)調(diào)以及如何從他人那里學(xué)到最多的東西。
3分09秒:一種應(yīng)具備的重要能力,是采取證據(jù)法識(shí)別那些對(duì)推動(dòng)協(xié)作產(chǎn)出有效的實(shí)踐和方法,但是該領(lǐng)域的研究并不多。我們只能依賴于現(xiàn)有的研究方法,逐個(gè)試驗(yàn)它們的應(yīng)用效果。這樣才能確定一種方法是否真正有效,或者僅是一種不能實(shí)際應(yīng)用于開(kāi)發(fā)空間中的“傳統(tǒng)觀念”。
3分40秒:合理的開(kāi)發(fā)實(shí)踐就是配置能運(yùn)行的開(kāi)發(fā)環(huán)境的技術(shù)。這樣開(kāi)發(fā)人員下載項(xiàng)目之后就可按下F5鍵去編譯項(xiàng)目,而無(wú)需在完成繁雜的設(shè)置后才能使用該項(xiàng)目去做甚至是最簡(jiǎn)單的操作。如果項(xiàng)目是從代碼庫(kù)克隆而來(lái)的,那么僅需寥寥數(shù)步操作就可讓該項(xiàng)目在開(kāi)發(fā)人員本地的機(jī)器上運(yùn)行起來(lái)。
4分26秒:自動(dòng)編譯、持續(xù)集成等工具有助于使開(kāi)發(fā)人員保持理智。
4分52秒:在QCon舊金山大會(huì)的“軟件技能”專題報(bào)道中,安排了報(bào)告“用于高效團(tuán)隊(duì)和產(chǎn)品的社交編程”。但是在實(shí)際中,社交編程的相關(guān)技能是非常難以學(xué)習(xí)并應(yīng)用于日常生活中的。
5分09秒:我們所存在的最大問(wèn)題是社會(huì)學(xué)上的,這些問(wèn)題通常并未得到企業(yè)和工程師的足夠重視。企業(yè)和工程師的努力方向側(cè)重于去解決技術(shù)實(shí)踐問(wèn)題,但是問(wèn)題的根源卻在于人們間是如何交流以及如何共事的。
5分36秒:該報(bào)告內(nèi)容包括了許多的個(gè)人經(jīng)驗(yàn)教訓(xùn),以及對(duì)這些經(jīng)驗(yàn)教訓(xùn)的研究。一些經(jīng)驗(yàn)證的研究顯示,部分經(jīng)驗(yàn)教訓(xùn)對(duì)實(shí)現(xiàn)更高效的團(tuán)隊(duì)有用。
5分56秒:研究顯示多樣化程度更高的團(tuán)隊(duì)會(huì)更加高效。具有更加多樣化構(gòu)成的工程團(tuán)隊(duì)是更有生產(chǎn)力的。社會(huì)公正是一個(gè)由試驗(yàn)性證據(jù)支持的重要方面,這些證據(jù)顯示了團(tuán)隊(duì)中多樣性的價(jià)值所在。
7分11秒:Haack曾在Microsoft從事開(kāi)源軟件工具和產(chǎn)品工作,他的工作可以說(shuō)是在防火墻之外,并正在向Github遷移。那時(shí)Scott Guthrie是該項(xiàng)目的領(lǐng)導(dǎo),他支持推動(dòng)ASP.NET MVC開(kāi)源,并認(rèn)為Microsoft的未來(lái)取決于其對(duì)開(kāi)源的支持程度。
8分25秒:NewGit軟件包管理器在一開(kāi)始就是開(kāi)源的,雖然經(jīng)歷了很長(zhǎng)的時(shí)間才使團(tuán)隊(duì)可以公開(kāi)接受項(xiàng)目貢獻(xiàn)。
8分51秒:在從Microsoft遷移到Github中的差別主要在于,從一個(gè)十萬(wàn)人的企業(yè)轉(zhuǎn)變到一個(gè)只有30到50人的團(tuán)隊(duì),并看著它成長(zhǎng)到約600人規(guī)模。
9分23秒:ASP.NET MVC的開(kāi)源最初是以MSPO許可發(fā)布,開(kāi)源需要企業(yè)文化的轉(zhuǎn)變。最初在發(fā)布代碼前要做IP審查,但是這個(gè)開(kāi)銷已經(jīng)被精簡(jiǎn)了。
10分20秒:Haak想從一開(kāi)始就將NewGit遷移到Github上而非Codeplex上,這樣可以支持更大型的開(kāi)發(fā)社區(qū)。這樣做的目標(biāo)在于使NewGit對(duì)更廣泛的開(kāi)發(fā)社區(qū)有吸引力,而非僅是Microsoft愛(ài)好者。
11分00秒:對(duì)于想要發(fā)布產(chǎn)品到開(kāi)源環(huán)境中的開(kāi)發(fā)人員,我們有如下的提示和建議:
從小規(guī)模開(kāi)始;
挑揀其中獨(dú)立的部分進(jìn)行試水;
從他人的例子中學(xué)習(xí);
響應(yīng)反饋;
響應(yīng)社區(qū)反饋需要做額外的工作,但是這些努力是值得的。
12分52秒:Haak很樂(lè)于看到ASP.NET發(fā)布在Github上,同時(shí)也驚訝于該事情的實(shí)現(xiàn)是如此之快速。
13分34秒:作為一種跨平臺(tái)腳本工具,Powershell已被發(fā)布在Github上。
13分58秒:跨平臺(tái).NET易于使更多的Microsoft產(chǎn)品開(kāi)源。
14分26秒:Atom項(xiàng)目的目標(biāo)是成為“最可控的文本編輯器”。Atom基于JavaScript、CSS和HTML,這些工具很可能為大部分開(kāi)發(fā)人員所熟悉。開(kāi)發(fā)人員可用已掌握的技能去擴(kuò)展并定制自己的文本編輯器。
15分36秒:Haak寫(xiě)過(guò)一個(gè)關(guān)于鼓勵(lì)使用Atom的博客帖子,談及用戶在每次使用Atom保存文件時(shí)所給予的點(diǎn)滴鼓勵(lì)。構(gòu)建Atom擴(kuò)展是一件多么有趣的事情呀。
16分43秒:Electron項(xiàng)目是從Atom項(xiàng)目中抽取出來(lái)的,并已成為一個(gè)獨(dú)立的項(xiàng)目。依靠自身的影響力,Electron已構(gòu)成了一個(gè)重要的社區(qū)。Slack客戶是基于Electron構(gòu)建的,Nuclide?Facebook IDE是基于Electron和Atom構(gòu)建的,Visual Studio Code也是基于Electron構(gòu)建的。許多企業(yè)正使用Electron作為跨平臺(tái)應(yīng)用的基礎(chǔ)。
18分00秒:類似于Node應(yīng)用,Electron應(yīng)用使用Node和NPM運(yùn)行于Chromium客戶Shell中,這意味著NPM包的引入有助于桌面應(yīng)用的構(gòu)建。
18分35秒:Slack客戶使用Electron構(gòu)建。Slack的首席工程師之一Pual Bets原先是在Github,他深入地參與了Electron社區(qū)。
19分06秒:借用Web開(kāi)發(fā)技能去構(gòu)建桌面應(yīng)用的理念已經(jīng)存在很長(zhǎng)時(shí)間了,當(dāng)前由于工具的存在和性能上的改進(jìn),構(gòu)建一個(gè)好的跨平臺(tái)應(yīng)用是可行的。
19分44秒:Haak應(yīng)急需而成為Github的經(jīng)理。
20分22秒:對(duì)正進(jìn)入管理層的開(kāi)發(fā)人員的建議:
將這種轉(zhuǎn)化看成與一種其它技術(shù)領(lǐng)域一樣的學(xué)問(wèn);這并非是一件“僅靠即興發(fā)揮”就能去處理的事情。
學(xué)習(xí)并實(shí)踐做管理所需的技能。
學(xué)習(xí)如何去做好與你所管員工的每周一對(duì)一會(huì)談。
構(gòu)建并發(fā)展你與每位同事間的信任。
好的一對(duì)一會(huì)談不是去做狀態(tài)更新,而是去傾聽(tīng)你的團(tuán)隊(duì)成員的時(shí)間。
21分39秒:提供一個(gè)好資源:管理者工具(Manager Tools)播客。
21分45秒:如果按30分鐘時(shí)間來(lái)安排一對(duì)一談話,其中的15分鐘可用于團(tuán)隊(duì)成員的暢所欲言,另外15分鐘由經(jīng)理講話;或者是對(duì)大家暢所欲言、經(jīng)理講話和展望未來(lái)各安排10分鐘的時(shí)間。在談話中重要的是應(yīng)始終以團(tuán)隊(duì)成員的關(guān)注點(diǎn)為開(kāi)始,因?yàn)檎勗捠顷P(guān)于團(tuán)隊(duì)成員的。一對(duì)一談話可使得經(jīng)理和員工彼此了解,進(jìn)而構(gòu)建相互信任的關(guān)系。
22分22秒:建立高效團(tuán)隊(duì)需要信任,信任的存在可使團(tuán)隊(duì)成員在不破壞相互關(guān)系情況下,進(jìn)行坦率的探討和健康的辯論。
23分14秒:怎樣構(gòu)建開(kāi)發(fā)現(xiàn)代軟件所需的偉大團(tuán)隊(duì),對(duì)此建議如下:
一對(duì)一談話并建立信任;
構(gòu)建可很好交付反饋的企業(yè)文化(通常是很難的);
良好的反饋是持續(xù)性的、規(guī)律的、有建設(shè)意義的和積極的。
24分10秒:當(dāng)一個(gè)團(tuán)隊(duì)中成員彼此間可以舒暢安全地給予坦誠(chéng)反饋時(shí),這樣的團(tuán)隊(duì)就具備了不斷改進(jìn)的能力。
24分40秒:如何聘請(qǐng)或培養(yǎng)一位好的經(jīng)理?
在Github,經(jīng)理是技術(shù)領(lǐng)導(dǎo),是那些還具有一些個(gè)人職責(zé)的高級(jí)工程師;
經(jīng)理領(lǐng)導(dǎo)4到6人的技術(shù)團(tuán)隊(duì);
責(zé)任分割,80%是技術(shù)上的,20%是人事上的;
經(jīng)理的職責(zé)受到主管的支持,主管的責(zé)任分割比例與經(jīng)理相反,即80%是人事上的,20%是技術(shù)上的。
26分11秒:成為具有強(qiáng)大的技能、存在高度共鳴、具備指導(dǎo)并保證團(tuán)隊(duì)成員成長(zhǎng)的能力的領(lǐng)導(dǎo)者。
26分30秒:要成為工程師團(tuán)隊(duì)中有影響力的教練,管理者需要體現(xiàn)出強(qiáng)大的技術(shù)領(lǐng)導(dǎo)力。在技術(shù)上不可靠的人通常不會(huì)被技術(shù)團(tuán)隊(duì)很好地接納。
在2016年11月7日至9日間召開(kāi)的QCon舊金山大會(huì)?上,Phil Haack將在稱為“軟件工程的軟技能”的新專題上做報(bào)告。該專題關(guān)注如何去成為一名神奇的軟件開(kāi)發(fā)人員,聚焦于在開(kāi)發(fā)人員角色上所需的有效人際交往能力。Haack的報(bào)告題目是“用于高效團(tuán)隊(duì)和產(chǎn)品的社交編程”。
所提到的產(chǎn)品和工具
ASP.NET MVC
Atom
Chromium
Node
Nuclide
Slack
Nuclide
Visual Studio Code
所提到的企業(yè)
Github
Microsoft
資源
Peopleware:Tom DeMarco和Tim Lister所實(shí)現(xiàn)的高產(chǎn)能項(xiàng)目和團(tuán)隊(duì)
管理者工具(Manager Tools)播客
原文鏈接: http://www.infoq.com/cn/articles/engineering-culture-phil-haak
.NET社區(qū)新聞,深度好文,微信中搜索dotNET跨平臺(tái)或掃描二維碼關(guān)注
總結(jié)
以上是生活随笔為你收集整理的从工程转向管理,访谈Github公司的Phil Haack的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 在Linux开发.NET——拜拜了Win
- 下一篇: 沉沦17年,这位昔日科技霸主、最值钱企业