※ 引述《ManInSW (Man in Software)》之銘言:
: 嗯
: 如果你是二十幾年經驗的工程師
: 你覺得30分鐘的code test測得出來嗎?
: 考試是一件有點妙的事
: 我覺得只考基本的就好, 不必到medium, hard的層級
: 你若沒有特別在準備刷題的話, 要30分鐘過medium/hard的層級, 本魯覺得不行(pig一
定
: 行)
: 你把沒有刷過題的各年資的工程師同時一起測leetcode,
: 你覺得測得出來誰的經驗比較好嗎?
: 若測不出來的話, 測medium/hard的層級的意義在那裏?
: 有人提到一個很有名的例子: Max Howell 被 Google 拒绝
: Google: 90% of our engineers use the software you wrote (Homebrew), but you
: can’t invert a binary tree on a whiteboard so fuck off.
: 你若是一個很有經驗的工程師, 刷題是一件痛苦的事
: 因為我們大部分的時間是在解決沒有標準答案的問題
: 這些問題, 往往需要花很多的時間去分析, try and error...
: 你若做的是driver相關的工作, 基本上應該只會用到pointer, array, linked list 等
: 大部分的時間在讀spec, 了解framework/architecture及APIs, debug....
: leetcode考得出來嗎?
: 驗算法是重要, 但那也只有在我們要使用它時才重要
: 要使用時去了解怎用它不就好了?
: 不是不要code test
: 但是, 以困難的code test當一個門檻是會排除很多真正的problem solvers.
: 有可能選進來的人對於解決實際問題所需要的知識與經驗不夠廣泛...
: 這有點像deep learning的over-fitting
: 你要用由貓的資料所訓練出來的model去找老虎
: 當然可能找得到具有比較多貓的特徵的老虎
: 好啦
: 抱怨完了
: 我要乖乖去刷題了
其實Google 真正的問題是在於要一字不差的白板題,這根本跟leetcode 無關啊,至少我
認為身為工程師,資結跟算法就是基本功。不過我自己面試一般台灣公司的經驗在面試的
時候,leetcode 都馬是easy到medium之間而已。一般公司沒有在做算法工作的職務測試
這個只是要確認你有senses而已。
說到一字不差,我大學C的教授就是這種一字不差魔人,堅持有字寫錯沒分號就扣分,他
考試完全用手寫考,有一學期期中就寫太爽全部忘記加分號被扣到差點被當掉