本魯分享一下自己的看法,順便爆個卦。
以通過 interview 為前提,這二種路線都有所幫助,精力夠的話也不衝突。
但刷題是必備,side project 只是選配。
必備鐵定重要,選配重不重要則因人而異。
從二個面向來分析:
1. 刷題的重要性
a. 從正面來看:
試想,以通過 interview 機會的大小作為衡量標準,
同樣投入半年到一年的下班時間,刷題和做 project 哪一項更能取得好成績?
顯而易見是刷題。
好好刷個一年,學歷不錯的話,應該可以進一線外商。
但好好做一年的 side project,能有這個把握嗎?
練半年到一年就進一線外商的大有人在,網路上可以找到很多經驗分享;
我認識的人裡,還沒有刷成高手卻沒拿到好薪水的。
換句話說,刷題所付出的努力越多,取得好工作的機會也就越大。
b. 從反面來看:
如果不刷題,能進一線外商嗎?
相信有這樣的人存在;
然而我認為會考慮要刷題還是做 side project 的,都不會是這種人。
不確定 side project 要多厲害才可以跳過 interview,
但是我知道連 Homebrew 的作者 Max Howell,
即使已經是 Apple 的 senior developer,
想去 Google 仍然要參加 interview,
且最後只因不會反轉 binary tree 就被刷掉了(easy 等級)。
好好努力跟著前人傳下來的經驗走最穩;
網路上每一篇刷題到被錄取的經驗分享,都是可依循的寶貴攻略。
那些另闢蹊逕的人,即使最終能取得巨大的成功,他們的經驗也不會成為主流;
因為那種路線的難度和所需的運氣都相當驚人。
而且過程中的付出可能無法積累,失敗的代價也許是砍掉重練。
這概念類似一類科系上過的微積分可能無法在二類科系抵學分。
2. Side project 的價值
a. 彌補學、經歷的不足
雖然刷題很頂,但如果學、經歷不夠好,可能沒辦法只靠刷題就拿到 offer,
這時候 side project 就具有相當的價值。
但是這種情況下,我覺得努力的優先順序應該是:
「再冠一個好學歷」>「強化工作經歷」>「做出一個優秀的 side project」
特別是對非本科系的人來說,補學歷肯定是跨領域最穩當的通道。
當然前提是時間、經濟許可。
軟體開發的門檻比很多其他類型的專業工作來得低,
後續發展也相對不受到血統限制,
所以這行容易讓人產生學歷無用的錯覺。
有樂觀的心態非常棒,但不要因為阿 Q 精神就真的輕視了學歷的價值。
另外,如果能在同領域的工作中表現突出、發光發熱,
那升官發財都來不及了,哪還會有時間為了換工作而去做 side project?
b. 剛好符合目標職缺所需
我覺得這是唯一一個為了求職而做 side project 的合理心態。
不過要剛好符合目標單位所需,可能要能有一些獲得資訊的管道;
如果沒有剛好打中痛點,且 side project 不是一看就很猛或是很知名的話,
通常只能表示你是一個很喜歡寫程式的人,對能力評估的貢獻有限。
另外抱著這個心態來做 side project 可能就不有趣了;
且萬一最後沒有被錄取,不知道會不會連熱情也一併被澆熄。
c. 想不到了……
Side project 還有很多其他的價值,
譬如增加知名度、拓展視野、培養興趣、單純享受以及增加收入等等,
但我們在討論的是與通過 interview 這個前提直接相關的價值。
能否在求職過程中提供額外的證明或有加分的效果才是重點,不要想岔了!
最後爆個卦:
先說明一下,我不是要黑人也沒有要人肉,
僅僅是覺得這個經驗很有趣,所以跟大家分享。
我有個朋友想要用程式買 Nike.com 上的鞋子,
雖然他會用 Selenium 但 Nike 有防機器人的機制,
所以用 Selenium 連登入都不行。
他找我幫忙,但我看了幾天一樣搞不定,只好來 PTT 發包。
可能價錢 3 ~ 5 千美金開得不對,來信的人不多,且大都沒把握。
但也沒辦法,他預算就這樣。
好不容易有位有把握的網友來信,這位也有在這系列文裡發文,
但他一開始就說這案子他要 1 萬美金才願意做。
身為中間人,經過一陣與雙方的協商後,
最終二位都同意在只實現程式登入的情況下,付出/收取 5 千美金。
一段時間後,這位做好了,也給我們看了 demo;
但同時又跟我們說,他認為因為 !@#$%(不重要略過),所以要改收 2 萬美金。
=.=
我聽到之後非常傻眼,接著是憤怒。
啊不就還好我朋友沒照網友說的先付 50% 當訂金!
因為怒到睡不著就自己跳下去研究。
晚上 12 點弄到清晨 5 點,居然弄好了(只有登入)!
一個晚上賺 15 萬,是我這輩子時薪最高的一天,
雖然最後我朋友一毛也沒給我,因為我們是朋友……
※ 引述《musashi023 (太陽魚)》之銘言:
: 嗨蓋斯,肥肥電資宅
: 之前在準備面試的時候一直有個疑問
: 對於資深主管來說,刷題和side project 是哪個重要一些?
: 我直覺會選side project,但很多時候爬文發現大家都專注在討論刷題
: 以我自己的面試經驗,感覺有些主管對於外系刷題仔有偏見,會有一種:阿你就是會刷題而已,show me your SW experience
: 所以我逐漸會在下班後搞side project
: 但有時候空閒的時候又會想:歐印刷題是不是比較高效呢
: -
: 我自己是覺得side project 應該比較有東西
: 從命題、想架構到實作,有很多可以在面試和主管討論的東西
這個部分有工作經歷就很好說了,不需要為了能夠回答這些問題而去做 side project。
: 各位資深前輩怎麼看
: