作者pandaforme (建 建)
看板Soft_Job
標題Re: [討論] 什麼層級的職位才不用再刷leetcode了?
時間Sat Nov 30 16:13:52 2019
越大的公司越容易採用白板題來刷人
為什麼呢?
因為容易量化且花較少成本來刪選候選人
試著想像一家大公司每天都有上千封履歷,面試官不太可能一對一面談
且這樣面談會存在很大的主觀因素
透過考試就可以消除這樣的偏差和可以量化每一個候選人
相對小公司或新創就不太會採用這樣得流程,因為他們負擔不起找到不對的人的成本
例如:要想招募資深Java工程師
透過白板題招募,很容易找到對Java不是那麼精通的人
大公司資雄厚,可以禁得住這樣損失
千萬別把白板題想得太美好,它跟你的工作能力是沒有正相關的
https://bit.ly/2sqRXEd
https://bit.ly/2R4kQAA
它只是方便大公司量化的工具,國外也有很多工程師在批評這樣的制度
為什麼白板題被人詬病,因為它脫離現實問題
大部分的問題是侷限在一台機器上,要你盡可能去改善你的演算法
如果你刷得夠多,你會發現很多問題跟array有關,很少linkedlist問題
因為linkedlist的本質是immutable,immutable對效能反而沒有幫助
像array是mutable,可以透過pointer修改或是in place的置換來增加效能
例如:two pointer技巧
在現今流量動輒上千萬,應該沒有人敢使用array這樣資料結構吧
(因為很能難規劃一塊很大的連續記憶體)
流量也是大到單一台機器可以完全處理,縱使你的演算法是O(n)
一定要用到多台機器來一起運算,勢必會遇到race condition問題
那麼mutable解法在這樣的問題下,就不吃香
lock會使得效能就會下降,但是不lock結果會不對
所以immutable資料結構才在現今很流行,那考Leetcode的目的是在哪?
白板題的解法幾乎不推崇遞迴,變相要你用while/for loop來處理
functional programmer應該會覺得心裡不是滋味
幾乎都是招募imperative programmer才在考白板題的
要脫離Leetcode,就脫離當碼農或是去面小公司/新創公司
要面大公司或FANNG,就乖乖準備吧.畢竟你也改變不了他們的流程
有時在想,被招募進來也不是在做什麼rocket science工作
為什麼面試過程要搞得那麼麻煩且冏長?每當要換工作就要花時間準備刷題
也沒有聽過其他的行業工程師這樣搞...
只能期許下輩子不要再當碼農了
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 124.122.77.167 (泰國)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1575101634.A.32D.html
※ 編輯: pandaforme (124.122.77.167 泰國), 11/30/2019 16:17:45
1F:推 NDark: 好文好觀念推11/30 16:26
2F:→ NDark: 補充 大公司因為履歷太多 所以有資格有餘裕用考試來篩選11/30 16:27
3F:→ NDark: 因為這樣刷履歷才快. 想像一下如果人資每天收到幾十封在跳.11/30 16:27
4F:→ NDark: 考試外 作業更能刷掉 "不願付出"="對本公司沒興趣"的候選人11/30 16:29
5F:→ NDark: 對公司有熱忱=興趣 (Ex. Square/Apple) 相對來講就可以壓價11/30 16:30
6F:→ NDark: 小公司因為沒名氣,履歷少,怕招到不對的人,所以深入談比例高11/30 16:31
7F:推 blackie1019: 推這篇11/30 16:51
8F:推 yamakazi: 沒進過大公司的人也沒什麼機會接觸大量網路流量伺服器11/30 17:11
9F:→ yamakazi: 只待過小公司的人又不刷題的人很難證明自己有能力處理大11/30 17:12
10F:→ yamakazi: 流量問題11/30 17:12
11F:推 yamakazi: 小公司新創的流量通常也不會高到哪裡去11/30 17:15
其實刷題跟處理大流量是兩回事,也不用把大公司想的太美好,通常都是加機器解決
12F:推 GGFACE: 不同意這篇11/30 18:33
13F:推 drajan: 不同意這篇 看起來像是沒跳過解題火圈的人講的話 沒啥cred11/30 19:06
14F:→ drajan: ibility11/30 19:06
小魯弟不才,才刷了三百多題,面了幾家大公司,不應該出來嘴的 Orz
※ 編輯: pandaforme (124.122.77.167 泰國), 11/30/2019 19:18:04
15F:推 chocopie: leetcode就只是另一種白板題而已11/30 19:17
※ 編輯: pandaforme (124.122.77.167 泰國), 11/30/2019 19:20:13
16F:→ testPtt: leetcode刷很多進來預設環境都不熟 程式碼複製貼上很多次 11/30 20:33
17F:→ AvatarH: 碰過一間不大的公司也是要求面試前先線上測驗,然後面試 11/30 20:58
18F:→ x246libra: linkedlist的本質是immutable 不了解這句話 11/30 20:59
19F:→ x246libra: 裡面的元素 可以改吧 11/30 20:59
20F:→ AvatarH: 時小主管自己說是故意讓應徵者寫不完的,還很得意。 11/30 20:59
21F:→ clamperni: 軟體板又開始誤人子弟了 11/30 22:20
22F:推 louner: 不過也有一種問法是 在你寫出解以後 故意把data scale拉到 11/30 22:37
23F:→ louner: 超級高 再問你要怎麼辦 11/30 22:37
24F:→ superpandal: 公司都還沒進去 還要期待人到底對公司有多忠誠 單方 11/30 22:42
25F:→ superpandal: 的要求 11/30 22:42
26F:推 marcusmiller: 泰國 FP 哥 XD 12/01 01:01
27F:推 bibo9901: 鬼扯XD 花幾百字暴露自己的資結, FP, 工程能力完全不行 12/01 02:17
28F:→ bibo9901: 這篇為什麼要m啊? 12/01 02:17
29F:→ umum29: 問題是連小公司都要考leetcode阿 灣區都如此了..... 12/01 04:28
30F:推 Argos: 本來就是 考白板就是便宜行事阿 出個回家作業讓你回家完成 12/01 09:44
31F:→ Argos: 都比較有效 面試就針對你的作業問 只是這樣面試成本大增 12/01 09:44
32F:→ Argos: 所以啦 大公司為了精簡成本就考試考試考試 這叫做科舉文化 12/01 09:45
33F:推 oneheat: 刷不過就批評它囉,任何選拔制度最後等只有頂尖的會留著 12/01 12:05
34F:→ oneheat: 啦 接受吧 12/01 12:05
35F:→ t64141: 說得好像有能力刷過的就不會批評一樣,很多時候是跟風只 12/01 13:38
36F:→ t64141: 抄制度卻沒想過度背後的目的跟用途 12/01 13:38
37F:噓 pig2014: 不遞迴個洨,難怪面一堆上不了 12/01 13:48
38F:推 oneheat: 先想想為什麼要去所謂跟風的公司面試如何? 12/01 13:48
39F:→ t64141: 在你決定去面試之前能判斷對方跟風?比較像是去了才發現 12/01 13:54
40F:→ t64141: 問題吧 12/01 13:54
41F:推 oneheat: 所以說囉,何必去「去了才知道」的地方呢? 12/01 13:55
42F:→ tashia: 不同意這篇看法,的確看的很頭痛,要嘴拿code jam有進第三 12/01 15:09
43F:→ tashia: 輪來嘴,刷三百題沒啥好得意的 12/01 15:09
44F:噓 longlyeagle: 12/01 16:28
45F:推 siriusu: 而且大公司要的是螺絲釘 所以考演算法最泛用 換 team 沒 12/01 16:59
46F:→ siriusu: 問題 又有共同語言 12/01 16:59
47F:→ superpandal: 不是很多地方不去就知道 即便是網路時代 12/01 18:58
48F:→ Argos: 出回家作業你以為你就過得了嗎?作業非常可能比白板難耶? 12/02 00:09
49F:→ Argos: 鑑別度也更高 還可以當場看面試者實際的程式思唯 12/02 00:10
50F:→ lyuping: 我待過的大公司要做的事情絕對都不只寫 code 12/02 00:40
51F:→ lyuping: 面的都看有更多可貢獻的價值 而不單純是 coding 邏輯... 12/02 00:42
52F:推 ks950901: 原po在哪高就? 12/02 10:41