如果你不是程式設計師,你怎麼僱傭程式設計師呢

發表於2011-03-25

如果你自己不是一位程式設計師,該如何僱用程式設計師呢?你需要注意一下幾點:

1. 他們有多堅持己見(固執)呢?

詢問他們有趣的程式設計主題(如Ruby或Python?)。從他們回答的語調和推理中,可以得到很多資訊。在我們最近一期節目中 ,傑夫說:“當人們對事情有強烈的見解,當他們可以大篇幅地談論一些事情時,這就是一個很好的跡象,表明他們對這件事很有熱情。”

2.他們為開源專案做了多少貢獻?

看看他們的貢獻。雖然你可能不是一個程式設計師,你仍可以知道他們是否寫過一些程式碼。而事實上,一個人有所貢獻,是一個良好的開端。“事實上,一直在貢獻意味著他們正在使用這種工具,”Jamis說。“這就好比抓癢,就像他們接觸到一些他們認為應該加以改進的程式,或接觸到一個錯誤並且自己修復了那個錯誤。參與程度對程式設計師是一個很好的鑑別標準。”

3. 他們有多享受程式設計?

他們不需要在自由時間的分分秒秒都去敲程式碼,但是你確實想看到一定程度的熱情。Jamis說,“與其說在業餘時間編碼本身是最重要的事情,不如說它展示了你熱情的態度和有自己的見解。”

4. 他們真的掌控工作? (Do they actually ship?)

瞭解他們如何管理自己的工作。軟體通常出小錯誤——瞭解他們如何避免這種情況。瞭解他們什麼時候按時地完成了專案,並詢問為什麼這個專案是成功的。或從延遲專案中吸取了什麼經驗教訓。“控制軟體執行的能力是關鍵的,”據傑瑞米說。“他們是如何管理實際需要的任務並在一定的時間內完成,這是很重要的。”

5. 他們掌握了什麼?

皮克斯(Pixar)公司的蘭迪·納爾遜認為,能夠掌控任何一件事意味著也能夠掌控其他事。所以尋找那些掌控著一些事的人。候選人是一個優秀的廚師嗎?或山地車選手?還是其他什麼人物?”這是一個跡象表明他們也可以做您專案的主導者。“那是一種即使其他登山者幾乎馬上就要到達山頂,仍感覺我將要先到達山頂的感覺,”尼爾森說。“如果一個人在來到你工作場所之前都沒有涉足,那麼他成為工作的主導者的可能性也是很小的。”

6. 他們的溝通能力如何?

你對程式設計瞭解的越少,你越需要依靠一個人去解釋程式進度。這就是無論什麼職位都要聘請大作家的原因,這是個好主意。例如,這兒有傑夫解釋的在計劃方案內Basecamp API人員更新到其他專案的例子:

我只是對Basecamp 和Companies APIs的人員進行更新調整。

我們現在允許客戶和公司員工去接觸通過專案認識的人和公司。在此調整之前,公司員工和客戶只能看到對方使用的特定的專案ID。沒有辦法讓他們看到在專案過程中參與的所有人(例如,同事)。

例如,如果API使用者發出的請求,一個是鮑勃,另一個是吉爾,那麼/ people.xml檔案將返回給鮑勃和吉爾。如果請求的使用者是管理員, 那麼帳戶中的所有的人都能收到。
這同樣適用於公司管理。

如果一個程式設計師既能夠編碼,又能講非程式設計師能聽懂的的話,那麼很多事情是不太可能出問題的。(編注:上面這6點,是招聘官需要知道的注意事項。關於在聘用程式設計師或開發人員的時候,需要問哪些問題,可以參見《如何面試程式設計師?》這篇文章。)

試用 (Test drive )

如果可以,擯棄“全要或無用”的決策模式。僱用一個全職員工是一個很大很困難的決定。為小專案聘請員工,讓他們在空閒時間完成這些專案,這種方式更容易為雙方所接受。《Getting Real》 中的“淺嘗輒止” 一文中談到:

在僱傭任何人之前,先給他們一個小專案來考慮。我們就會了解他們對待這個專案是如何溝通,工作的,等等。當他們設計或者編寫的時候,就會給你帶來很多發現。你會相當快的學習,無論氛圍是否恰當。

可以用日程安排來堅持這種方式,即使只需要20或40小時,也比什麼都沒有要好。適合或者不適合,都會顯現出來。如果沒有,那就是雙方想要先測試工作而隱藏了自己的問題與風險。

仔細考慮一下,你能提供什麼,並且如何才能讓你的職位儘可能的吸引人,這也是個不錯的主意。壺裡的蜜越多,才會有越多的蜜蜂飛進去。(恩,不管怎樣,可以肯定這不像一個東西放在那一樣)在《Great Hackers / 偉大的黑客》中保羅點格雷厄姆提供了一份列表,關於如果吸引最優秀的程式設計師:優秀的開發工具、開源軟體、帶門的房間、一個感興趣的問題和聰明的同事。如果你有其中的任何一項或者全部,確保讓潛在的僱員能夠了解到。

自己動手?

所有這些都會有所幫助,但是很顯然,僱傭程式設計師最好的方法是你自己能至少了解一點程式設計。僱傭一份你從來沒有做過的工作,真的是件很困難的事。因此,要在僱傭了那些人之後管理他們,格雷厄姆在他的《偉大的黑客》一書中有過如下討論:

我看過關於如何管理程式設計師的一些文章。事實上有兩種:一個是如果你是程式設計師,你該做什麼,另一個是,如果你不是程式設計師,你該做什麼。而第二種可以總結為兩個字:放棄。

問題不在於日常管理。實際上,真正優秀的黑客(hacker)是自我管理的。問題是,如果你不是黑客(hacker),你就不會知道誰才是真正優秀的黑客(hacker)。

確定自己是否能在招聘員工之前瞭解一些程式設計技術。事實上,傑森在與DHH合作之前就已經開始學習PHP了。同樣的,在我們當中有人學會如何配置伺服器之前,37signals不會僱傭系統管理員。如此做來,你就會對尋找應聘者以及你想解決的問題有更深入的理解。

至於你在這過程中犯的錯誤,要記住,這就是“真正的”程式設計師的工作方式。“執行迭代感覺就像永遠反覆的錯誤校正”傑瑞米解釋到。“這聽起來很令人洩氣,但這卻是允許的。該死,甚至測試驅動開發也是反覆的錯誤校正。所以,建議你應該先從自己做起。”

 

原文作者:Matt   翻譯:伯樂線上 敏捷翻譯 – 魏哲

如需轉載,但請註明原文/譯文出處、譯文超連結和譯者等資訊,否則視為侵權,謝謝合作!

相關文章