看到這個討論串忍不住想分享。
先做個自我介紹,我目前 26 歲,去年研究所畢業目前年資剛滿一年沒多久。熟悉的語言
是 PHP ,找的也是跟 PHP 相關的工作,目前任職廣告公司做一些酷酷的廣告科技。
去年面試了五間公司,都是本土企業,我就俗辣然後英文不夠厲害不敢面外商。這些公司
我都拿著 Side Project、開源專案參與記錄,以及論文當履歷作為面試的履歷,總的來
說這些面試我沒有被考到白板題,也沒有被考到任何考卷,多的是討論我的 Side Projec
t 與解決了什麼開源專案的問題。還有碰過面試官很認真的跟我探討我的論文主題,以及
我的解決方法,讓我夢回畢業口試。
面對面試我完全沒有準備解題,就上次解題的經驗還是大學學寫程式寫的那一百多題 zer
ojudge,在之後的學習歷程上就完全沒有碰過了。如果面試突然考我解題,我可能會爆掉
XD
這裡先分享我的 GitHub :
https://github.com/monkenWu
一直以來我做的都是一些酷酷的小東西,沒有到很多人使用或安裝數很高。但都是我在開
發的過程中遇到的問題,我將它們轉換成一個通用程式庫或者是解決方案;或者是碰到一
些我認為很性感的新技術,我會想嘗試將這些東西融和進我的開發流程中。比如說,我現
在就在替 PHP 的某個老字號開源框架做高效能伺服器的支援。
在製作 Side Project 的過程中通常可以讓你更認識你自己,當你替自己設定好一個偉大
的目標時,在前進的過程中才會發現有哪裡不足。大多數時候,我都是在加深自己腦袋裡
的知識,而不是每天下班很認真的開發工作。
比起 Side Project 我覺得貢獻大型開源軟體是個更不賴的行動,在貢獻開源軟體的過程
中,核心貢獻者幾乎會逐行地對你的程式碼進行 Review 。第一次貢獻時超羞恥,被逐行
問問題,都懷疑自己會不會寫程式。但只要你持續關注你的 PR ,通常會修正成大家都開
心的樣子。最後被成功合併分支時,那個成就感真的爆棚。
貢獻大型開源框架更能看出自己的程式碼的不足,不論是在可維護性、確效或者是解決問
題的思考模式,都能夠在討論的過程中學到很多。那些超會寫程式的人幫你逐行 Code Re
view ,給你建議還等你改完,真的賺爛。
推薦大家閱讀這篇「如何貢獻開源專案」:
https://opensource.guide/zh-hant/how-to-contribute/
不過像是製作 Side Project 或貢獻開源專案都很需要持續的動力與熱情,若是求職導向
我也是認為大量解題你能夠立即看見的回饋是最顯著的。
最後是結論,這篇文章想分享的核心是:如果你像我一樣大量將時間投資在非解題的開源
專案或是 Side Project 上,在一些本土企業的面試中也不會被看輕。
希望大家都能夠越來越好。