第38章 增進親密感以減少緊張關係(1 / 1)

工程師團隊和支持團隊之間,或者兩個不同的工程師團隊之間,都可能產生合作競爭關係,如何把這種關係維持在良性層麵上,需要團隊管理者做多種努力。

在開發這套支付安全係統時,經常要跟其他組合作。比如要跟反垃圾郵件組進行交流,因為他們有一個大型的人工規則係統,我們這邊也有。他們的目標是發展成通用化架構,既可以在上麵運行人工規則係統,也可以運行各種機器學習模型。我們這套係統的目標與此類似,當時還集中在人工規則,下一步則想支持機器學習,並且這個項目已經討論通過了。這就麵臨一個問題,我們是分開做還是進行整合?Facebook在技術上有一個理念,就是拒絕重複開發,與其大家在類似的方向上各自用力,不如整合起來,在一套係統上花更多時間加以完善,集中力量做到極致。

雙方討論了很久,因為涉及的係統比較重要,大概過了三周才定下來,用他們那套係統繼續開發,這樣,後台的很大一塊工作就挪到反垃圾郵件組那邊去了。不然的話,我們這邊後麵還需要更多的人來做。反垃圾郵件組屬於網站品質(Site Integrity)這個大組裏,從2009年初就開始做相關開發,積累了較豐富的經驗。事實證明最後發現兩組合作這個決定是對的,他們把我們係統裏的一些特色整合到他們的係統裏,我們組就不用在框架上操太多心,更多的是提要求,由他們來做。而我們把精力放到和支付欺詐相關的數據挖掘和機器學習建模上麵。

當然,在具體實踐中,肯定還會碰到矛盾。例如,原來都是我們組自己開發,做什麼、不做什麼由自己決定,整合以後,如果我們組再想做些什麼東西,要與他們討論,有時還要說服他們優先考慮我們的相關需求。這同樣要考驗你的溝通說服能力。

工程師和支持團隊之間往往存在糾結的合作競爭關係(注意,合作在前)。互聯網技術公司中很多人(尤其是聰明人)總是期望工程師對所有問題都能給出一個絕妙的解決方案。但現實是,不是每一個問題都可以或者應該在技術框架下解決。對於一些具體問題,客戶支持部門和運營部門會有一些非常深刻獨到的見解,工程師則未必行,畢竟很多見解需要不同的專業知識,依靠實踐經驗。工程師可以在代碼中自動收集大量的原始數據,但從原始數據中提煉可靠的信息卻並不總能如願。和很多公司的客戶或支持部門不同,Facebook支持部門招募了素質相當高的員工(很多來自美國名校,像我直接接觸的反欺詐支持組,20多人中就有3名斯坦福畢業生)。因此,當兩群都很聰明的人觀點相左時,該聽誰的呢?緊張關係在所難免。

工程師之間也會有類似的合作競爭關係。像上麵提到的兩個係統融合的過程,就是兩個工程師團隊獨立處理類似但不同的問題。往往在這個時候,雙方都試圖向對方推銷自己的解決方案和理念。那麼,如何讓合作競爭保持在一種健康有序的狀態呢?我覺得關鍵是促進人與人之間的親密感。人的距離近了,事情就容易解決了。

我花了大量時間在和其他團隊建立關係上麵。例如,兩周一次或者一月一次和其他團隊負責人的一對一碰頭會。合作越緊密的團隊,交流越頻繁。我自己或者我的團隊成員會有選擇地經常參加一些其他團隊的會議(我們稱之為Friends & Family Meeting)。當為一個共同的大項目工作時,我曾安排不同部門的成員(工程師、支持、數據分析、金融財務)坐到一起進行項目衝刺。這是拉近相互之間距離非常有效的做法,可以減少相互扯皮的機會,(因為互相之間經常會請喝咖啡,可稱之為“咖啡外交”)。我也會經常和一些人約吃工作午餐,經常聊的就是家常,以增進感情。有時候,一次長距離的散步也能讓人暢所欲言。而這樣的緊密關係,在我們麵對一個極具挑戰性項目的關鍵時刻,會幫助大家緊緊地抱團闖關。