還在找 Side Project 主題嗎?可以不用找了!
目錄
此篇適合至少一年工作經驗的工程師,若是轉職工程師,建議還是參加相關培訓營,例如:六角學院、AppWorks、alphacamp 或是Udemy的Bootcamp。
經驗分享
由於本科系畢業,在學期間有參與 APP 開發專題,且有 Java 考試的證照,出社會找工作還算好找,因為需求量多,要培養工程師不容易,通常有相關經驗基本上都會錄取。
第一份 Java 工程師工作,進到職場後才發現原來「很多非本科生」到資策會或其他機構學習,除了基於薪水考量,也找到 Coding 的樂趣,看著和我一樣初生之犢的同事們,下班後還在討論程式,想要進步、突破的心態對待「工程師」這份職務,讓我感到不可思議。
「阿~~原來這就是工程師的生活」
「除了要喜歡寫 code,還要有想瞭解底層運作的好奇心」
可惜那時的我,還不懂其中的樂趣,直到轉換「專案經理 (PM)」的職涯。
在做專案管理時,遇見夢幻團隊,才意識到「工程師都會有自己的 Side Project 」不論多小的主題,都會動手自己實做看看,小至聊天機器人、大至完整的應用程式。
那時,也許角色不同,能觀察的面向就更廣,幫助筆者認識不同面向的可能。
逐漸建立起「工程師的身份認同感」:工程師應該是解決問題的角色,同時要有與實俱進的精神提升技術能力。
實做前先了解,履歷背後的Side Project是如何被看待的?
在職5年左右的現在,面試很多工程師,履歷上寫的多采多姿,實做過不同的框架、技術,確實會抓到目光想繼續往下看。有的在 github 上寫的很清楚「專案用途」和「使用技術」,有的只是稍微介紹專案背景。
但是,沒辦法從Side Project看到事情有:
- 如何 troubleshooting?
- Code 真的出於本人之手嗎?還是老師邊做,學生邊寫的作業?
- 遇到問題是自己解掉,還是老師直接給答案解掉?
- 對於自己實做的內容有完全的瞭解嗎?知道自己在寫什麼嗎?
- 學習曲線的樣貌,無法馬上瞭解
Side Project 確實重要,它呈現出面試者比較有想法、對於技術精進比較有企圖心,和梳理自己過往的實做經驗,但Side Project 只是面試中的一個聊天的話題,會加分但不多。
「準備面試」只是第一步,但面試沒辦法無法全然知道面試者的「專業素養」、「面對事情如何處理的真實態度」,很多人在面試講的很厲害,但是進公司後實做才被發現「原來都是包裝的話(唬)術(爛)」。
所以很多公司才會用「1~2小時完成小作業」、「online pair coding interview」來認識工程師的「專業素養」,邊做的過程中瞭解面試者的「溝通能力」、「表達能力」和遇到問題的「反應能力」。
這些是「Side Project 沒辦法告訴面試官的事」,需要透過互動才能瞭解一個人,從面試過程中認識。站在資方的角度,會不會錄取面試者,從筆者面試別人的經驗來看,取決於幾個因素
- 專業素養
- 個人特質:溝通能力、處理事情的反應力、遇到問題如何解決的靈活力
- 過往經驗:曾經待過的產業,對於當前面試的產業是否有幫助
- 面試氣氛:當下與面試者的磁場,是不是談的來,能不能理解面試的問題 (所以要練習說話的藝術)
- 面試者的期望待遇:是否符合公司預算,公司是否重視人才
所以,還在擔心沒有 Side Project 嗎?
其實還好,如果是熱愛技術的,相信會實做出不同主題的 Side Project 像是 Chrome 瀏覽器外掛,從0到1建置自動化部屬,這些都是可行的題材。
那如果不會動手做 Side Project,可是技術能力也都有跟上時代,或是喜歡接觸技術新知,但不(太)會(懶)想(了)實做,有沒有什麼方式可以最短時間內建立自己的 Side Project?
當然,有!
如何快速建立Side Project?
Side Project 可大可小,重要的是「從中獲得什麼技能?」能幫助你解決遇到的問題。
掌握一個核心:「只要能夠讓閱覽者理解實做者的[思路]、[學習曲線]、和[想法],就是算是一個 Side Project,只是呈現的方式不同。」
那如何快速呈現 Side Project 呢?
就是建立「學習筆記」、「Worklog」
從一位工程師的 worklog tech notes 就能知道作者的想法,與態度,文字的溫度就像作者本人告訴讀者「喔~應該要這樣比較好」或是「我找到更好的方法,請跟我來看看」,這些都可以從文字中感受到,並不一定要實做完成一個 Project,有當然好,但沒有也不要覺得沒有機會,時間到了自然會想做,如果想去 Google, Apple, Amazon 或是國外公司突破舒適圈,就很需要有實做 Side Project 來表達工程師的企圖心、和技術能力。
如何建立Worklog、作筆記
非常推薦閱讀六角學院之前推出的「六角筆記王」為期七週的「筆記作品集」活動
使用 HackMD 紀錄技術筆記,可以將筆記設定公開,在將 HackMD 個人連結放到履歷中,也能傳達你對技術的熱情,和學習曲線,我相信文字也能傳達出,程式碼沒辦法告訴的事。或許會說,可以從參數命名、系統架構、註解,coding style 來瞭解工程師,但這只能認識工程師的「專業素養」,而「溝通」是沒辦法從程式碼中獲得的資訊,勢必會需要從面試、文字來認識。
所以,還在擔心沒有 Side Project 嗎?可以不用在找主題了。
「你的筆記」就是「作品集」。
如果不是工程師也需要Side Project嗎?
筆者認為,Side Project 不分任何職業,建築師建造小型樹屋當作小朋友祕密基地,也是個人的 Side Project,行銷人員建立IG小帳也屬於Side Project,只要「對於喜歡的事情,想要動手做的任何成果,都算 Side Project」。
這些過程經驗,都是你從 Side Project 中獲得的,只是最後成果呈現的方式不同。有經驗,對於過程中的心得有想法,可以記錄下來並分享,就是表現你的成果方式之一。
「人們是因為看到結果,所以想瞭解製作的過程如何產出」,善用「紀錄過程」來表達,比起在沒有背景介紹的情況下,直接告訴人們「嘿!這是我的結果」。會比較讓人留下印象。