如果你想要找個自由開發(fā)人員協(xié)作開發(fā)項目,那么問題來了,該如何找到一個完美的開發(fā)人員呢?這是一個艱巨的任務(wù)。之所以用艱巨這個形容詞,其實一點(diǎn)也不夸張,哪怕你有著再豐富的技術(shù)
如果你想要找個自由開發(fā)人員協(xié)作開發(fā)項目,那么問題來了,該如何找到一個完美的開發(fā)人員呢?這是一個艱巨的任務(wù)。之所以用艱巨這個形容詞,其實一點(diǎn)也不夸張,哪怕你有著再豐富的技術(shù)。話說,人們很容易只重視技術(shù)因素而忽略其他。即使是天才,要是不能與人合作,那么聘請他也是一個錯誤的決定。
本文將介紹幾個可以確保你找到最完美的合作伙伴的方法。
可以要求看一些程序員已經(jīng)完成的作品。花一些時間來研究他們的項目。指出你喜歡和不喜歡的地方。也許他們建立web應(yīng)用是很快,卻有一些奇特之處限制了用戶密碼。問問他們是什么導(dǎo)致他們做出這樣的決定。
任何形式的軟件開發(fā),無論是web、移動app,都能找到最佳的折中方案。聽聽開發(fā)人員面臨的各種權(quán)衡和取舍,以及他們解決問題的方法,這對你評估他們今后的表現(xiàn)是非常有價值的。
如果你自己本身對代碼了解得不多,那么不妨挖掘一下開發(fā)人員的GitHub賬戶,看看他們寫的代碼,做過哪些項目。通過代碼能讓你從技術(shù)的角度確定他們是否是一個合適的選擇。
當(dāng)你查看自由職業(yè)者的GitHub時,下面這些要點(diǎn)是你應(yīng)該要特別注意的:
語言:此開發(fā)人員是只使用一兩種他所青睞的語言呢,還是許多不同的語言都有涉足?找一個匹配項目的專業(yè)型人才能快速推動項目的進(jìn)展,而有著豐富經(jīng)驗的人才則能夠提供更適合現(xiàn)實工作的相關(guān)建議。
注釋和文檔:代碼注釋寫的如何?自由職業(yè)者的性質(zhì)意味著他的代碼很有可能需要轉(zhuǎn)經(jīng)其他人之手,所以其代碼是否友好就是關(guān)鍵了。如果答案是否定的,那么你就需要三思了。有的開發(fā)人員認(rèn)為,自文檔化的代碼就不需要任何注釋了。呵呵,如果沒有注釋,你怎么確保代碼的可讀性呢?
是否參與過其他項目?理解別人的代碼是個難題,但是這是個必要技能,特別是你如果想要聘請開發(fā)人員參與到現(xiàn)有的代碼庫中去的話。所以如果他們已經(jīng)參與過其他項目,促成過開源項目,那么他們寫出可維護(hù)代碼的可能性更大,因為他們知道這樣做的重要性。
無論是實踐還是現(xiàn)實中使用的技術(shù),軟件開發(fā)的變化速度是非常快的,所以如果你選了一位依然停留在10年前老技術(shù)的開發(fā)人員,那么你將會錯過很多可以讓你的項目更好、更快、更易于維護(hù)的工具和技術(shù)。
問問他們是如何學(xué)習(xí)新事物的,最近學(xué)了什么有助于開發(fā)的內(nèi)容,從學(xué)習(xí)中收獲了什么,接下來想學(xué)什么以及為什么。
即使你并不熟悉相關(guān)細(xì)節(jié),你也可以從他們的回答中了解他們是否對這一行業(yè)有著充沛的熱情和好奇心。雖然說,好奇心害死貓,但是一般說來,一個擁有著好奇心的開發(fā)人員對項目總歸是利大于弊的。
溝通可以成就項目,也可以破壞項目。所以請確保你和開發(fā)人員都能用一種雙方都認(rèn)可的方式和頻率進(jìn)行溝通交流。大多數(shù)開發(fā)人員都有常用的通訊工具。你先看看你是否能用。如果不能的話,那么應(yīng)該確保開發(fā)人員能夠適應(yīng)你提出的替代工具。
此外,你還需要問一問開發(fā)人員大概多久會與你溝通。如果你聽到的回答是,“每個里程碑結(jié)束之時說一下”。那么你就需要注意了。這樣的頻率是有風(fēng)險的。最后出來的結(jié)果可能與你原先設(shè)想的完全南轅北轍。
定期查閱工具(至少每周一次)可以修復(fù)一些小誤會,以避免最后成為大麻煩。
問問題和看代碼只能讓你了解一個開發(fā)人員很瑣碎的一面。要想真正了解與他們合作的感覺,最好的辦法是通過實際的項目測試一下。
所以如果可以的話,將你的項目掰出一小塊來,然后一起合作來解決它。當(dāng)然最好能夠支付他們報酬。這么做的好處是:
測試風(fēng)險低;
即使最后不能一起工作,也有一定的成果;
如果你愿意支付公平報酬的話,那么你們雙方就是互惠互利的。
我之所以提及最后一點(diǎn),是因為有的企業(yè)會要求開發(fā)人員建立一個小的測試項目以評估他們和他們的工作作風(fēng),而不付出酬勞。我認(rèn)為這并不是一個好方法。沒有人愿意成為實驗對象。而且如果一切順利的話,你們以后將成為合作伙伴,所以不要因此而讓對方心生芥蒂。
在測試期間,請睜大眼睛好好觀察,看看該開發(fā)人員有沒有什么你不能容忍的行為。
如果項目很緊迫,你沒有時間采取上述舉措,那么至少做一下測試??梢宰岄_發(fā)人員來構(gòu)建大型項目的某一片段。這么做不但風(fēng)險低,而且不浪費(fèi)時間。即使最后你并不滿意,還是需要再找其他的合作伙伴,所耗費(fèi)的時間和資金也更少。
當(dāng)然,如果一開始就進(jìn)行挑選,選擇余地肯定會大得多。不過,總而言之,要想找到適合的開發(fā)人員,你應(yīng)該盡可能地睜大你的眼睛。