一次開發(fā)人員交換角色的嘗試
米勒是一個科班教育出身的程序員,在很多我們一起工作的項目中(e.g., ??Boss Blueprint??),他一直在開發(fā)后端的程序,而我做前端的頁面。為了能讓我們對對方的工作有更多的了解和賞識,我倆決定做一個新的項目,項目中我們互換角色,我將要寫后端程序,而他要寫前端頁面。
“前端開發(fā)的兔子洞比我想象的要深的多。就好象我走到洞邊,丟一塊石頭,卻一直沒有聽到觸底的聲音?!?/p> – 威利·米勒 |
我,同樣,也感到了***的阻力。我頭一次接觸Ruby語言,要從頭學(xué)習(xí)像Sinatra或Rails這樣的web框架,需要去研究那些看起來數(shù)都數(shù)不完的各種引用庫。這些是如此的不同,很顯然是因為我從前從未用過它們,也是因為我所面對的是完全不同類型的問題。作為前端開發(fā)人員,通常最麻煩的問題是一個按鈕沒有表現(xiàn)出色彩梯度,或有些東西沒對齊。然而,不了解后臺的工作原理,也許會導(dǎo)致前臺不是***的處理展現(xiàn)方式,甚至?xí)恋K和后臺服務(wù)集成。
經(jīng)過數(shù)周在項目里艱難行進(jìn)和互相幫助,我們發(fā)現(xiàn)這種互換角色的鍛煉讓我們在所有Web項目中都變得更容易溝通,傳遞思想更有效率。比如在站會中,我能更有興趣的參與后臺程序員解釋他們的成績和他們遇到的困難。我還能提出一些不***的問題,對問題提出一些不同角度的觀點??稍诮巧Q前,我只能傻站在那,腦子里是想午飯吃什么或下班后干什么。經(jīng)過了角色交換的鍛煉,我認(rèn)識到,我不僅收獲了大量的關(guān)于ruby語言的知識,更重要的,當(dāng)團隊作為一個整體在創(chuàng)造和實現(xiàn)一個東西時,我對解決方案有了一個更全面的視角。
很顯然,開發(fā)角色交換在公司組織層面有一定的難度。如果在一個重要項目的中期這樣做自然是不明智的。當(dāng)你的團隊中做一些低優(yōu)先級的任務(wù)時可以考慮這樣做。你能找到很多讓團隊成員擔(dān)任不同角色的好機會。這樣做不僅能讓你的團隊獲得更大的交叉訓(xùn)練,同時也能幫助團隊成員提高參與度、擴大視野,以更有效更優(yōu)雅的方式完成項目目標(biāo)。
你們做過開發(fā)角色交換的練習(xí)嗎?你們的團隊有過這樣的鍛煉嗎?說來聽聽!
英文原文:??Swapping Developer Roles: A Lesson in Empathy and Cross Disciplinary Work??