作者 changyuheng (Johann)
標題 Re: [討論] 刷題和side project 的重要性
時間 Thu Jun  1 15:39:12 2023


本魯分享一下自己的看法,順便爆個卦。

以通過 interview 為前提,這二種路線都有幫助,精力夠的話也不衝突;
差別在於刷題是必備,side project 只是選配。

必備鐵定重要,選配重不重要則因人而異。



從二個面向來分析:

1. 刷題的重要性

a. 從正面來看:

試想,同樣投入半年到一年的下班時間,哪一項更能做出成績?
(成績高低的衡量標準是通過 interview 機會的大小。)

顯而易見是刷題。
好好刷個一年,學歷不太差的話,應該可以進一線外商。

但好好做一年的 side project,會讓你有把握嗎?

練半年到一年進一線外商的大有人在,網路上很多心得,
我認識的人裡,還沒有刷成高手後沒拿到好薪水的。

換句話說,刷題所付出的努力越多,取得好工作的機會也就越大。

b. 從反面來看:

如果不刷題,能進一線外商嗎?

相信有這樣的人存在;
但是我認為會考慮要刷題還是做 side project 的,都不會是這種人。

不確定 side project 要多厲害才可以跳過 interview,
但是我知道連 Homebrew 的作者 Max Howell,
即使已經是 Apple 的 senior developer,
想去 Google 仍然要參加 interview,
且最後還是因為不會反轉 binary tree 而被 Google 刷掉(easy 等級)。

好好努力跟著前人傳下來的經驗走最穩;
網路上每一篇刷題分享,都是可複製的攻略。

那些劍走偏峰的路數,即使最終能取得巨大的成功,也不會成為主流;
因為那種路的難度和所需的運氣都相當驚人,
而且過程中的付出可能無法積累,失敗的代價也許是砍掉重練。


2. Side project 的價值

a. 彌補學、經歷的不足

雖然刷題很頂,但如果學、經歷不夠好,可能沒辦法只靠刷題就拿到 offer,
這時候 side project 就具有相當的價值。

但是這種情況下,我覺得努力的優先順序應該是:
「再冠一個好學歷」>「強化工作經歷」>「做出一個好的 side project」

程式開發的門檻相對其他類型的專業工作來得低,
後續發展相對起來也與血統較無掛勾,
所以這行較易有學歷無用論的信奉者。

樂觀的心態非常棒,但不要因為這樣就輕視了學歷的重要性。

b. 剛好符合目標職缺所需

我覺得這是唯一一個為了求職而做 side project 的合理心態。

但要剛好符合目標所需可能需要一些管道獲得資訊,
如果沒有剛好打中痛點,且 side project 不是一看就很猛或是很知名的話,
通常只能表示你是一個很喜歡寫程式的人,
對能力評估的貢獻有限。

另外抱著這個心態來做 side project 可能就不有趣了;
且萬一最後沒有被錄取,不知道會不會連熱情也一併被澆熄。

c. 想不到了……

Side project 還有很多其他的價值,
譬如增加知名度、拓展視野、培養或舒發興趣以及增加收入等等,
但是這些與通過 interview 這個前提都不直接相關,不要想岔了!



最後爆個卦:


先說明一下,我不是要黑人也沒有要人肉,純粹覺得有趣所以跟大家分享。

我有個朋友想要用程式買 Nike.com 上的鞋子,
他雖然會用 Selenium 但 Nike 有防機器人的機制,所以連登入都沒辦法。

他找我幫忙,但我看了幾天一樣搞不定,只好來 PTT 發包。

可能價錢 3 ~ 5 千美金開得不對,來信的人不多,且大都沒把握。
好不容易有位有把握的網友來信,這位也有在這系列文裡發文,
但他一開始就說這案子他要 1 萬美金才願意做。

經過一陣協商,他最終同意在只實現程式登入的情況下,收費 5 千美金。

一段時間後,他做好了,給我們看了 demo;

但同時又跟我們說,他要改收 2 萬美金。

=.=

我聽到之後非常傻眼,接著是憤怒。
因為怒到睡不著就自己跳下去研究,晚上 12 點弄到清晨 5 點,
居然被我弄好了(只有登入)!

一個晚上賺 15 萬,是我這輩子時薪最高的一天,
雖然最後我朋友一毛也沒給我,因為我們是朋友……

但嘗到甜頭之後,我有個心得,
side project 帶來最大成就感的地方在於有商業價值,
知道可以兌現真的超爽!



自身經驗分享:

雖然確實有點想炫耀一個晚上弄好價值至少 15 萬的案子,
不過破解常常就是這樣,聽起來好像很神,但知道眉角之後就很簡單,
跟打造東西那種堆積木的感覺不一樣。

真正想說的是,雖然不敢說看法一定正確,
但上面所說的每一點,都是我的親身經驗,
所以對優先順序的看法真的是切身感受。

在刷題成為顯學之前,
有小玩過一陣子演算法競賽、Project Euler 等等(感謝貴人同事引薦!),
雖然成績一般,但也有因此感受到對程式語言掌握度的大幅提升。

大學學歷不好,
後來因為對資工的學科有興趣補了一個碩士(感謝貴人老師的指導和讓我畢業!),
雖然不是四大,但是補學歷之後感受到的落差,
跟健身和改變氣質以後身邊妹子數量、等級的變化一樣明顯。

第一份科技業工作雖然薪水一般但訓練紮實(感謝多位貴人同事指導!),
換工作後因緣際會到美國工作了二年多(感謝二位貴人老闆!);
經歷真的很有用,後來通過一間一線外商的 interview,
怎麼說呢,我相信運氣和有人介紹也是很重要的原因(感謝貴人們!),
總之這個 software engineer 職位的 interview 沒問什麼技術也沒考程式。

大學時貪玩,電動打不贏別人時間又多所以自學 AutoHotkey,
做了一款當時很紅的電腦遊戲「魔獸爭霸三」的小外掛,
外掛叫做 War3Customkey、IOann 的魔獸助手等等,三心二意常改來改去。
現在的年輕人可能不知道 WarCraft III 這個遊戲,
但當年這支遊戲外掛,紅到被各大連鎖網咖內建在他們的系統,
發布三年後我個人網站的每日新增下載量都還有破千(扣掉網咖這些已經抓好的),
因為那是當時臺灣最紅的遊戲,且這又是當時這遊戲在臺灣最知名的外掛。

畢業前還做了幾個小東西,像 PTT 洗錢程式等等,但就沒那麼紅了。

我的經驗是,一個程式不用多厲害,只要打到大家的痛點就會紅。
但是能抓到大眾需求本身就是一項珍貴的能力,沒有這個能力的話,就只能碰運氣。
在程式能力還不怎麼樣的時候,如果不是眼光毒辣,
想要 side project 爆紅大概也要運氣爆棚吧~

Side project 到底有沒有用呢?

非本科系的我,大學畢業後第一份研究助理的工作(SWE),
就是靠用過我外卦的同學向他老闆推薦而被錄取的(感謝貴人同學!),
第一份科技業工作(SWE),
也是靠著面試主管聽過我的作品才被錄取(感謝貴人主管!)。

但是,當年我好好念到碩士的同學(EE),同樣在系統廠,
第二年年薪大概 100 ~ 150 萬,
我在號稱科技大廠,年薪加三節,
再把尾牙最大獎 5000 元加進去,稅前還不到 46 萬 QQ

同時期同年資的 HTC、大小 M 估計是 200 ~ 300 萬,
但以我們學校的招牌是沒辦法一畢業就進大小 M 的。

這個時代能刷題又有攻略真是太好了,

不用比比賽名次、不用看在校成績、不用拚學術成就,
好好練功就會出頭天,刷到灣區的人也不少,
新鮮人年薪 500 ~ 1000 萬吧,資料網路上查得到、也有 YouTuber 分享。

前面站長好像覺得他的 side project 是很棒的經驗,
但是厲害的人只要跟著直覺走就會很厲害,
請一併把他是臺大本科系、在大學時就有能力處理全國負載最高的伺服器,
以及 PTT 的知名度考慮進去。

不能說 side project 沒有用,但請好好斟酌機會成本和各種條件。

※ 引述《musashi023 (太陽魚)》之銘言:
: 嗨蓋斯,肥肥電資宅
: 之前在準備面試的時候一直有個疑問
: 對於資深主管來說,刷題和side project 是哪個重要一些?
: 我直覺會選side project,但很多時候爬文發現大家都專注在討論刷題
: 以我自己的面試經驗,感覺有些主管對於外系刷題仔有偏見,會有一種:阿你就是會刷題而已,show me your SW experience
: 所以我逐漸會在下班後搞side project
: 但有時候空閒的時候又會想:歐印刷題是不是比較高效呢
: -
: 我自己是覺得side project 應該比較有東西
: 從命題、想架構到實作,有很多可以在面試和主管討論的東西

這個部分有工作經歷就很好說了,不需要為了能夠回答這些問題而去做 side project。

: 各位資深前輩怎麼看


: -----
: Sent from JPTT on my Samsung SM-G9960.

--
一本紅塵心中陳,夜夜頁頁念佳人。 - Johann Chang 2018

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.228.108.184 (臺灣)
※ 作者: changyuheng 2023-06-01 15:39:12
※ 文章代碼(AID): #1aU4imB1 (Soft_Job)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1685605168.A.2C1.html
Tenno081: 我能請問在台北什麼產業或公司會考leetcode呢?
我大部分面到的都只考C# 或SQL 最多JS的觀念題說~1F 06/01 16:57
Google 最具代表性;現階段只要是外商 developer 的職缺,應該都有程式考試。

DrTech: 系統廠哪家第二年可以到100-150萬? apple還是google 嗎3F 06/01 17:46
薪水最主要看公司,再來看經歷和學歷。
百萬年薪不是科技業常態口號嗎?
前段碩領這個薪水很合理吧!

hegemon: 一樓,台積會考呀,台北辦公室開了. 發孫最近好像也跟上4F 06/01 17:55
peter98: garmin算系統廠吧  第二年100萬是依定的  除非黑到發亮apple也算系統廠吧  第二年不到150萬  決定是黑中隻黑6F 06/01 19:02
holebro: 回家認真刷題了8F 06/01 19:02
peter98: 台灣Google也算吧  第二年沒150  也是黑到媽媽都不認識決定 --> 絕對
當然  如果是台廠系統廠的嗎? 呵呵
Dell第二年也有100以上  鴻海可能要外派或特定單位~9F 06/01 19:02
devilkool: GG竟然真的開台北辦公室了喔…希望IT職缺留新竹多點13F 06/01 19:13
wulouise: 純軟的高薪一點的都會考leetcode吧14F 06/01 19:25
final01: 一個晚上15萬,你幹媽還工作15F 06/01 19:47
換個角度來看是一個晚上 60 萬喔!
畢竟如果不是後來自己弄出來,也就只能付他 2 萬美金了。
我朋友經營一間專門自動化所有網站的 startup,
有拿 funding,繞不過機器人就搞笑了。

loadingN: 不就對方亂開價 有啥好自豪的 沒公布id 給噓16F 06/01 20:44
印象他說他前一個類似的案子就收 2 萬美金,可能行情真的是這樣吧!
這個不是亂開價的問題,是職業道德和信用的問題。
雖然很過份,但我看他還要養家,所以……

CRPKT: 印象中 Selenium 控制的瀏覽器有一些特徵17F 06/01 21:56
viper9709: 一個晚上15萬@@...18F 06/01 23:38
s06yji3: 你前面幾天看了什麼XD19F 06/02 00:18
就沒頭緒啊!

vi000246: 行情真的有這麼好嗎 害我想兼職了20F 06/02 00:21
Debugging、hacking 的薪資一直都很高吧!
看看 HITCON 那精美的入場費。
沒去過 HITCON,但我工作中有位資安相關的前輩,
多年前中國是用千萬臺幣年薪在招覽的。

s06yji3: Side project 的成就感來自有眾多的使用者。如果為了找工作而做的話應該是沒什麼用21F 06/02 00:22
這也很有成就感沒錯。我剛好二種經驗都有,自己是覺得能兌現更開心。

purin88: 你有想過你的競爭者是被裁的googler/fb/AS
你怎麼會覺得跟他們競爭很簡單23F 06/02 00:30
好像沒說刷題簡單吧?

刷題是灣區 FAANG 都在做的事,簡單肯定是不簡單的。
但是至少資訊透明啊!比起以前的不透明,現在透明就簡單一些了。
沒有攻略之前各種傳說,
只收頂大書卷、IOI 得名、履歷英文文法完全不能有錯誤等等,
如果真的要滿足前二項,這輩子錯過就錯過了;但現在真的是人人有機會。
看我的經歷就知道,我認識一些學歷一般(不到國立後段)的人,
其中有好幾位的成就很勵志,有人在 Google 聽說最近升 L5 還是更高了,
人人有機會不是空口說白話。

vi000246: 有看到別人寫的bot 好像沒看到反爬蟲機制
https://github.com/tylerburleigh/nike-buy-bot/
想問是哪裡卡關啊?25F 06/02 00:32
GitHub - tylerburleigh/nike-buy-bot: A bot using Node.js / puppeteer that buys a Nike shoe when it drops
[圖]
A bot using Node.js / puppeteer that buys a Nike shoe when it drops - GitHub - tylerburleigh/nike-buy-bot: A bot using Node.js / puppeteer that buys a ...

 
看他的 issue list 現在應該不能用吧?
我的 bot 今年年初驗都還能動喔!

purin88: 現在考題都是hard,確定要跟高手比?28F 06/02 00:33
我這麼用心分享,可以不要一直亂噓嗎?

※ 編輯: changyuheng (125.228.108.184 臺灣), 06/02/2023 04:19:01
k12795: 幫補29F 06/02 04:21

--
作者 changyuheng 的最新發文:
點此顯示更多發文記錄