Land Dream Rails Job

打破蛋生雞,雞生蛋的死循環

沒有作品開發經驗怎麼找工作

公司錄取應徵者的條件一向是:具備「完成公司所要開發的產品」的能力的人。

最討厭來應徵的人是「什麼都不懂」的「學生」。

不過這也讓應徵者相當頭大,就是不知道怎樣累積 Rails 開發實務經驗,才想要投遞 Rails 的工作。

但是公司卻不想收這樣的求職者。

到底如何打破這樣的循環?

多數的求職者的想法多半傾向於再請資深開發者推薦優良的 OpenSource Project ,仿照專案架構進行學習。或者是推薦一本能夠示範複雜 Project 的書。

這對資深開發者也是個燙手山芋般難回答的問題。因為實情是,複雜一點的專案幾乎不可能用「書籍」寫作的方式進行教學。作為一本書,讀者期待的是不太會出錯的程式碼。但是專案稍微複雜,光把程式碼編排進去,加上解說,對作者來說是一個非常痛苦的過程。現場親身教學可能還效率高上許多。

至於「示範程式碼」,資深開發者也很難進行推薦。主要因素有幾個:運行多年的大型開源專案,因為參與人數眾多,又有歷史因素,程式碼往往不能拿來「教學用」(很髒)。而個人的小專案,通常又小到不足以示範。

前進的挑戰:拆點子再去執行的熟悉度

在一般願意培訓開發者的公司裡面。針對新人的訓練,通常是開啟一個新專案,指定規格與 Scope,藉由實做與 Code Review 有效提升開發者的經驗與水平。

但是,這樣的機會少之又少。

與一些本身有在帶練新手的資深開發者交流過之後。我發現許多人在學完 Rails 之後,還是找不到工作或不知道怎樣邁出下一步,關鍵點在於雖然這些學員熟悉了「如何使用 Rails 基本工具」,但是不知道怎樣將腦袋裡的點子,寫下來轉成程式碼。造成了往下一步往前進的嚴重障礙。

這些學員缺的是對於基本的網站開發流程與概念的熟悉度:

  • 不熟悉如何把 Idea 具體化為可以實作的步驟
  • 不知道怎麼下關鍵字找到正確的資源
  • Project 做到發散,不了了之

將點子轉換成開發的練習題

我曾經針對新手開發了一份在 Rails 101 後的開發題目。

這份題目是「Ruby on Rails 新手村網站」。(詳見本書附錄)


舉這份題目的例子當然不是要各位讀者拿去當「新的專案例子」(要的話也可以,這份題目是有一點挑戰性的)。

而是展示了如何粗略地把一個想法,化成實際可以執行的任務清單。

  1. 寫下這個網站想要解決什麼問題
  2. 這個網站核心主要會提供哪四大功能
  3. 如何把這四大功能拆成可以在一天之內開發完畢的題目
  4. 把題目再拆成數個可在 1-2 小時內完成的任務

如果擁有自己的點子的話,不妨仿照類似的形式執行。(控制在 20 項功能以下)

認真的花 2-3 週的時間專心把這個專案寫完上線。

在當中如果遇到各樣的技術問題的話,可以拿到各地的 Rails Meetup 找資深開發者幫忙。

這樣的好處是:

  1. 能累積真實的實作經驗
  2. 在問問題時過程中,容易遇到未來潛在的同事,說不定這些資深開發者願意幫你介紹一份不錯的工作。

(好的機會通常是在還沒貼出來在求職網站上就被私下介紹光了)