這天,天海審核了一些組內的代碼合并請求,主要是些沒有自動分配給任何人的請求,不知為何被擱置了許久的請求,以及,一個很小而且能夠被批準但并沒有的請求。
天海看到那個小請求被分配到的審核人是牛作,他主要問了提交請求的人一個問題,而那個問題,天海覺得顯而易見,只要牛作去某個網站看一眼,便能得到答案。
牛作總是這樣,對于別人給予的建議與意見強烈反駁,要求別人順從他;而對于別人所做的工作,則是萬般刁難。
于是天海去那個網站確認了下,發(fā)現這個小請求涉及到的代碼變動確實合理,便批準了這個請求。
天海覺得自己做了一件合理的事情。然而卻為此遭到了來自牛作和三格的刁難。
就在天海批準那個請求后不久,牛作直接在組內公共交流平臺上對天海發(fā)送了這樣一句話:
“天海,請你不要批準分配給其他人審核的請求。”
天海沒想到牛作會直接在公共場合對她說出這句話。她自從進入這個組后,就看到了程序員們經常互相幫助,也會經常幫忙審核一些雖然分配給別人,但自己也能夠給些意見或者做出決定的代碼合并請求。所以天海覺得,自己所做的,只是組內習以為常的一件極其平常的事情。
同時天海再次感到了被牛作所冒犯。她便給三格發(fā)送了封郵件,希望他能夠作為經理跟進一下這件事。
三格不久就回了郵件,表示他覺得將矛盾公開化是不可取的,所以他希望組織一個會議來和天海和牛作交談。三格在郵件中提到,他希望能夠在會議中聽取雙方的意見。然而,在之后的會議中,三格并沒有如他郵件中所說的那樣做到聽取雙方的意見,反而是站在了牛作那一邊持續(xù)向天海施壓。
在會議一開始,三格便站在了牛作的立場上,對天海說牛作之所以這樣做,是因為他覺得天海之前做了另外幾件事情,讓他感到失望。之后三格便讓牛作列舉了他感到失望的另外幾件事。其中大多數事情發(fā)生在幾個月前,天海已經不記得許多細節(jié),而且牛作也沒有提供任何的細節(jié),只是在單方面說著他的感想。天海不得不跟進這些事情,但最終還是不理解牛作所謂何意,也只能多次對自己曾經可能產生的冒犯而道歉。
天海意識到,三格和牛作,已經提前串通并沆瀣一氣了。
之后,三格更是直接質問天海,要求她解釋她最近在工作中做出的一次決定。天海直接將證據展現給了三格。隨后三格立即改口,表示這件事所涉及到的規(guī)范需要在組內進行更多的討論。
天海在會后才意識到,三格是為了針對她,才特意在這次會議中提到這件事。這件事所涉及到的規(guī)范還是個灰色地帶,其他組員們也做著類似的事情,包括牛作。三格并沒有在其他場合對其他組員提出這個問題,只是因為天海剛好參與其中,所以便用它來攻擊天海,想讓天海承認這是她的錯誤。
天海覺得,三格只想通過使自己承認錯誤的方式,來正當化牛作惡劣的行為。
當然,天海也同意了一些意見。比如當另一人已經開始審核一個代碼合并請求并有一些疑問的時候,其他人不應該在疑問沒有得到解決的前提下批準這個請求。天海覺得這確實是一個可以被采納的意見。
當然,三格也對牛作提出了不管出于什么理由,將矛盾公開化是不可取的,牛作也隨后道歉。
會后,三格開始撰寫了總結文檔。天海發(fā)現三格在文檔中也明顯偏向牛作。
三格在文檔中提到了牛作的道歉,極具細節(jié)與誠懇。然而對于天海的多次道歉,三格只是一筆帶過。
對于會議中幾人討論過但沒有達成一致意見的一些事情,三格直接寫上了牛作單方面的想法,將天海置于不利地位。天海不得不將她在會議中給出的解釋寫下并放在文檔相應位置。三格在看到這些解釋之后,才將描述寫得中立與客觀了一些。
天海覺得,雖然此次事件在牛作的道歉中告一段落,但三格聯(lián)合牛作欺壓自己的行為,已經踩了紅線了。自己必須采取相應的行動,進行反擊。
在這之后,另一個沖突接踵而至。
牛作的新系統(tǒng)在小范圍上線之后,立馬出現了幾個故障。牛作也不得不為了修復這些故障而提交了幾個代碼合并請求。而天海,恰好被自動分配到了其中的幾個請求。
因為是修復故障的請求,所以天海立即審核起了它們。然而天海發(fā)現,因為這個新系統(tǒng)的設計過于復雜,又由于之前大家迫于三格的壓力在短時間內批準了這些難于理解,沒有達到組內規(guī)范的代碼,導致現在天海審核這些新的代碼合并請求的時候,感到了異常的吃力與費解。天海不得不花大量的時間來理解所涉及到的代碼邏輯,確保這些代碼變動確實能夠解決故障。
同時天海提議,先將這個新系統(tǒng)下線,以免故障范圍擴大。牛作和三格起初并不愿意,但后來在更多人表達了相同的觀點之后,新系統(tǒng)終于下線了。
牛作和三格持續(xù)催促天海,希望她盡早批準這個代碼合并請求。天海一遍又一遍地回應了他們的催促,并附上了自己需要更多時間來審核的理由,但牛作和三格還是持續(xù)對天海施加壓力。
天海在這兩人的持續(xù)壓迫下總共回應了四次。
第一次:
“我已經開始審核起這個請求了,但是我還無法完全理解它。如果你能提供給我更多的解釋,那么這將會十分有幫助。”
同時,天海也在那個請求中留下了自己的問題。牛作進行了回應,但仍沒有提供天海所需要的信息。
第二次:
“感謝你的回復。在我能夠批準之前,我需要花一點時間來理解相關功能,來確保這個改動是正確的,以及這個系統(tǒng)之后能夠如預期那樣運行。希望你能夠理解花時間來審核請求的重要性。”
然而牛作和三格依然持續(xù)施壓,要求天海盡快批準。
第三次:
“我理解我們需要盡快修復這個故障,但是回應你們的催促對我來說是個挑戰(zhàn),讓我無法專心審核。我希望擁有一些不被打擾的專注時間去完成審核,請相信我正在全力審核之中。三格,我在被要求在一個不合理的短時間內批準這個請求的過程中感到了一些壓力,在過短的時間內批準它可能會最終影響其質量。”
然而牛作和三格依然繼續(xù)。
第四次:
“在這些請求之中有一些闡明一些代碼變動的討論正在進行,因此我現在無法決定是否我應該批準它。你也可以親自去查看這些請求,這可能會幫助你更好地理解現在的審核進度。我已經花了精力和時間來進行審核,我將會感激你的理解和尊重。”
然而牛作和三格依然繼續(xù)。
最終,天海在這兩人的持續(xù)施壓與溝通無果下,只能盡自己最大努力在理解了大部分的邏輯之后,盡管還有小部分的疑問,但也只能選擇批準這個代碼合并請求。