老闆不懂程式,如何招募優秀的開發者?

評論
評論

The Social Network
來源:Social Network(2010),IMDB

網路創業者最擔心的就是,擁有新穎的點子卻沒有可付諸執行的人力,所有夢想都只是空談。對網路創業者來說,找到對的人──優秀的程式設計師、軟體工程師,是團隊成功的關鍵性因素,同時也是一項艱難的挑戰。

為了要找到優秀的開發者,擁有許多資源的大公司會利用人資部門進行履歷的初步篩選,再請公司內部的開發者,對應徵者施以程式測驗和其他專業評估來挑出適當人選;但是,新創公司和小型企業並沒有那樣多的資源,甚至沒有幾位人力資源的專業人才。再甚者,很多新創公司創辦人並非資訊科技領域出身,不會寫程式、也看不懂程式碼 ,找到對的開發者更是難上加難。

然而,這並不是無法解決的問題,只要利用以下技巧就能找到「對的人」:

心態面

想清楚你「真正」的需求

專門開發 Android app 的 Torch Lab 執行長 Kevin Galligan 表示,如果你是完全的新手,你可花數個月學習程式語言──但不用擔心如何真正執行。為了避免限入無限研究的困境,應該先暫停一下,仔細清點你的需求。問自己兩個關鍵的問題開始:
1. 你需要你的網站可以做什麼? 擁有一個網站並不一定意味著需要雇用一個開發者。你是簡單地公佈有關貴公司的信息,還是你的網站有「做」什麼事情?當你的網站需要和使用者開始互動的那一刻,至少和一位開發者聊聊。

2. 你試圖創造的是什麼? 你的創業點子,是 Mobile 的產物,還是 Web 的產物,或兩者兼有之?如果答案為「非 100%的網路」,你就需要找到擁有行動經驗的開發者。否則,你必須花費成本請 Web 開發者學習行動開發。

了解開發者的心理

吸引頂尖開發者的的最好方法,就是像他們一般思考。 Torch Lab 執行長 Kevin Galligan 表示,大多數的開發者,特別是最優秀的那些人,都愛上了寫程式這件事,他們最想做的事情就是整天解程式謎題。寫程式可以說是「科技宅」的藝術創作。許多國際企業都會特地舉辦駭客松(hackathons)大賽來招募人才,包括 Facebook 、 Yahoo! 、 Microsoft 、 Evernote 這些國際企業都在台灣舉辦過駭客松活動,可見程式馬拉松的確可以找到最頂尖開發人才。

如何有效和開發者面談?誠實說明你需求的人需具備什麼條件,但不要把談話變成條件交換 。清楚解釋你的想法的基本概念,並詢問他們從科技的角度切入是如何看待。 一旦他們在頭腦中建構出你的想法,他們將會更希望把想法實踐出來。

inception-paris_thumb.jpg 一旦開發者在頭腦中建構出你的想法,他們將會更希望把想法實踐出來。  來源:Inception(2010), IMDB

值得注意的小重點是,不要假定工程師的上一份工作就是其所有的技能,這是有些工程師深惡痛絕的事情。擁有 16 年經驗的軟體工程師 Matt Youell 說道,16 年培養了我一系列的技巧,包括程式設計相關以及非相關的技能,我曾經幫軍方寫過程式、領導團隊、管理團隊。別單單根據我上一份工作或運用的科技,稱呼我為「Rails 開發者」或「.Net 工程師」。我喜歡解決軟體的問題,甚至硬體的問題。有時候我會在辦公室和人交談激發創意,請把我看作「人」,而非一個只會技術的人員 。

薪水要有誠意

招募夥伴時,很重要的是清楚說明公司的職位以及你所能提供的薪水。如果你擁有明顯的「成功優勢」請多加展現,例如風險投資資金、相關產業連結以及產品原型(prototype)—你很有可能就用個位數百分比的股權(註:這是你雇用第一個高科技職位的薪水數字)吸引到天賦異稟的開發者為你工作。假設你什麼都沒有,只有一個很棒的點子和燦爛的笑容,那在尋找的是一位創業夥伴,這也是一項很好的主意之一。此外,有誠意的薪資和絕對可以幫助你找到對的人(不要低於開發者的平均薪資)。但還是回到前述的重點:  熱愛程式設計的工程師更在意的是,他們實際上會作的工作,更甚於薪水。

執行面

刊登和撰寫徵才訊息

除了在各大人力銀行網站徵才,國內的話還可到 Inside Job Board 免費張貼徵才訊息。徵才訊息的撰寫也有一些技巧,和該避免的錯誤。 Matt Youell 以受雇者的經歷提供兩項建議:
1. 避免「技能過細」的敘述

例如「徵求: Node.js V8 韓語終端優化工程師」

有時你需要一個非常具體的技能來解決「現況」的嚴重問題,這很常見也很自然,但不正常的是,各種職位總是在要求如此遽細靡遺的技巧。但有一天你公司需要的技術改變了呢?求職者會心想:我是不是當公司技術變革的時候我就會被解雇呢?如果其他專業人員被解雇了的話,我可以投入幫忙嗎?還是我只要管好我自己的事情就好?你應該雇用的是一個人,而非勞動的單位。過細的專業化分工會有反效果。

2. 避免「過於模糊」的敘述

例如「徵求:Ruby on Rails 工程師」

這並不是一項工作描述也不是一個有效的職缺名稱。對實際工作的描述是零。求職者並不知道你想要解決的是哪種問題?是有許多程式專案同時進行嗎?還是只是對特定科技的修補?我過去的其他科技的經驗是否幫得上忙?若有雲端程式設計的背景是否有用處?需要對於數學和電腦科學領域有興趣嗎? 我的工作內容是全天候將 Photoshop 檔案放上網站,還是這是份真正的程式設計工作?一開始過於模糊的職缺描述,讓有經驗的工程師滿頭疑惑,卻沒有動力去尋求答案。

不幸的是,不太可能單單從一份履歷就能分辨得出好的開發者。 Torch Lab 執行長 Kevin Galligan 表示:我曾經面試過擁有在大名牌公司中 10 年開發經驗的人,實際上擁有的知識卻寥寥無幾,讓我十分驚訝。即使是擁有人力資源部門的 Mutual Mobile(總員工 325 人, iOS 開發者 60 人),在招募 iOS 開發者時也遇到了困難,花光了所有資源;他們的 iOS 主任 Ron Lisle 表示:我們一開始使用電話審查,我們也發現許多人完全沒有程式設計的經驗,單單回答標準問題就蒙騙過關。

找到有經驗的開發者來幫你審查

程式撰寫是一項不要求執照以及同儕審查(peer review)的專業,這就是為什麼你需要有人來幫助你審核你的應徵者。這是必需的步驟,因為即使你作盡職調查,你仍然不可能知道你不熟悉的領域的一切。您可以選擇先至人力銀行網站,應徵一位經驗豐富的工程師作為「技術招募人員(Technical Recruiter)」,評估您需要哪些技能組合,意即需要求職者具有哪些技能,有什麼技術是能外包,而什麼需要自己做。

如果您願意花費更多時間,傳統的面對面人際網絡也是流傳悠久的招募方法。詢問具有科技專業的朋友願意幫你評估或是推薦人選。如果你的腦海中沒有浮現任何人,到本地的開發者社群去結識他們,或者加入共用工作空間、參加開發者聚會──你將能觀察出哪一位開發者最適合提供技術諮詢以及專業審查。

6453bce6-ebe7-4aee-b834-8ad2678b2b5b_thumb.png

Codility 程式測驗網站。

程式測驗

由於程式技能較難辨識,請應徵者「實作」是必要的。面談前的程式測驗已經被企業廣為使用,若你有雇用技術招募人員或開發者的朋友,你可以請他們針對您的產品設計一系列的程式測驗,將破碎的程式碼、bug 放入程式,請求職者修復程式運行的問題,例如前述所提及的新創行動應用公司。若沒有專屬的程式測驗,也可利用現成的程式測驗產品(例如: Codility)作為審查工具。若要避免應徵者實際上對程式設計經驗不足,只是從網路上找到解答,現場程式測驗也是不錯的選擇,也提供優秀開發者表現的舞台。

面談的其他細節

除了清楚說明您的想法、需求、具體的工作內容,以及能夠提供的資源和福利,以下是您可在面對面交談時展現的態度。

1.  熱情 :展現對每個專案都有同樣的熱情很重要,這樣可以顯示您正朝著創業成功的道路前進,嚴禁只是隨意找個人來填補職缺的態度。
2. 有趣 :提供開發者有趣的願景,未來的工作將是解決有趣、有挑戰性的問題,或幫有名的人物解決問題。
3. 尊重 :尊重程式設計師、開發者的專業,並展現您對開發者社群的了解,並建立真正的人際網絡,展現您招募一個高素質團隊的決心。

資料來源:
1. How to Recruit a Good Developer When You Don't Code
2. How to Recruit Superstar Developers (even if you are non-technical)
3. Want To Recruit Better Developers? Give Them Broken Code
4. The art of recruiting a software developer

 

歡迎加入「Inside」Line 官方帳號,關注最新創業、科技、網路、工作訊息

好友人數

相關文章

評論