Re: [討論] 軟體工作真的有需要刷題嗎?

看板Soft_Job作者 (我只是上PTT查資料)時間2年前 (2021/08/17 00:13), 編輯推噓13(15229)
留言46則, 20人參與, 2年前最新討論串10/14 (看更多)
忍不住回應下,有在使用 Homebrew 應該知道這套件管理軟體超級強大 作者 Max Howell 去 Google 面試被問如何反轉 binary tree 這位大神當場掛掉,面試失敗 https://twitter.com/mxcl/status/608682016205344768?lang=en 這種反轉二元樹題目po上ptt還會被鄉民笑, 但影響全世界軟體界的大神就是沒在刷這種東西 不只 Homebrew, 連 Python 創始作者 Guido van Rossum 當初面試Google也差點被刷掉 後來Google內部有檢討為什麼現在機制會刷掉這種大神 他們也承認要寫出頂級軟體產品其實這些東西並非必要 後來G社面試委員會找了篇論文, 該論文指出很會刷code的面試者進公司數年後, 平均產出比同公司沒在刷code的人還高 所以他們根據此研究就繼續保持這項「傳統」 另外我當面試官時, 會盡可能用系統設計的角度去判斷此人是否有足夠的軟體經驗 1.版本控制 不是考他指令,而是問他情境 開發中的功能是否放在主線branch還是獨立拉出來,兩者優劣差異 如何管理binary file 如何做Review機制 可從版控問到CI/CD甚至自動化測試的經驗 (對方答出一個套件也沒差,至少他有經驗) 也面過完全沒在做版控的,用資料夾跟檔案命名版控, 這樣你就知道他進來的話需要學什麼 重點是: 有版控清楚的觀念 2.API 遇過工作好幾年的軟體工程師完全分不清楚API是什麼 該怎麼設計 為什麼需要RESTful? 什麼時候不需要RESTful REST跟SOAP差異 然後可以從API追問到microservice的經驗、異質API的介接 跨單位或跨司合做這項技能很重要,代表公司跟對方技術人員談時比較能進入狀況 3.Service 剛畢業大概傻傻分不清楚server跟service差在哪 可以問寫過/用過什麼service 若對方有雲端經驗,可以聊SaaS/PaaS/IaaS 然後聊聊企業在資源不足情況該如何選擇 有經驗的可以多聊聊上面提過的microservice, load balance, inverse proxy... 4.安全性 遇過把產品私鑰發佈給客人的工程師 簡述公私鑰機制 什麼應用情境是由server產生公私鑰 / 什麼情境是由client產生 憑證是什麼 SSO是什麼 這可以聊很多,看應徵職務。但最基本觀念還是需要有 (曾經還有工程師把連線到雲端資料庫的connection string寫在客人電腦client端,吐血) 5.資料庫 關聯性資料庫跟NoSQL優劣,什麼情境需要用到前者/後者 正規化的意義是什麼? 為什麼我們偶爾需要反正規化? 資料庫加密機制 封存機制 同步設計 auto-scaling 6.法規 歐盟 GDPR 如何做內控及如何因應歐盟/競爭對手的檢舉 什麼情況的產品,客人會受到 GDPR 的保護? 如何讓產品合規 同理, 美國CCPA也可以聊 看他經驗有多少 這塊台廠RD大概比較弱,想說這是PM的事 但設計系統時 (特別是資料庫),若開發人員搞不清楚亂寫一通 後面只是等著被競爭對手弄而已 7.開源軟體授權 常見可商用授權有哪些? 如何做才能商用? 過去有無寫過軟體第三方授權宣告 二流的真的沒在管,網路抓抓就套用然後做成產品了 這也是等著被競爭對手弄而已 8.其他 什麼情境使用long polling 為何使用web socket docker 的應用 OS相關 軟體/韌體/driver ...族繁不及備載... 多跟面試者聊這些就知道他過去的經驗及接觸多少東西 有經驗的工程師,至少都能說出些東西,馬上就知道這人值不值這個價 最後我想說...軟體不是只有刷題 (很重要沒錯,但那只是冰山一角) 不要面試者一坐下就問那些什麼紅黑樹考白板,我真覺得那太狹隘了 明明軟體有那麼多面向可以聊 供參考囉 ※ 引述《iidmaster (iidmaster)》之銘言: : 刷題至少可以確保有一定水準的coding能力 : 也因為刷題滿辛苦的,所以代表這個人可能是個努力的人 : 像做embedded system相關,跟刷題相關性不大 : 但是至少有一定水準的coding能力在設計架構跟實作比較不會犯基本錯誤 : 曾經面過一個說的一嘴的好經驗~ 但是寫個LinkedList都寫不出來 : 也面過一個直接跟我說刷題用處不大~要我不要問他coding : 可以把刷題當成基本門檻跟英文一樣 : 擁有這些基本能力再繼續談其他的這樣 : ※ 引述《dickjas (夏天的航海記)》之銘言: : : 小弟不才, LeetCode只刷了幾題. 但小弟已經工作了快18年 : : 也做了很多的大型Project, 真心認為刷題跟寫程式其實沒有很大的關西 : : 所以想請問各位300萬大大, 真的有需要刷題嗎?還是純粹就為了面試? : : 在下工作比較邊向機台開發和嵌入式系統 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.193.209.209 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1629130409.A.745.html

08/17 00:16, 2年前 , 1F
推專業
08/17 00:16, 1F

08/17 00:27, 2年前 , 2F
可是你不是大神 乖乖去刷題
08/17 00:27, 2F

08/17 00:29, 2年前 , 3F
另外面試被問紅黑樹的 那就是面試官不想要你才問得而已
08/17 00:29, 3F

08/17 00:29, 2年前 , 4F
尼要知道美國一堆職缺 其實就算你資格在好也不會上
08/17 00:29, 4F

08/17 00:30, 2年前 , 5F
應該那職缺是perm用的 面試的目的就是想辦法刷掉你
08/17 00:30, 5F

08/17 00:30, 2年前 , 6F
當然我說的是美國的情形 台灣我不知道
08/17 00:30, 6F

08/17 00:31, 2年前 , 7F
詳情去看fb最近發生甚麼事就知道了 顆顆
08/17 00:31, 7F

08/17 00:38, 2年前 , 8F
喔 我看完全文的 不該噓的 推回來
08/17 00:38, 8F

08/17 00:38, 2年前 , 9F
08/17 00:38, 9F

08/17 00:42, 2年前 , 10F
只能看面試官與企業文化吧 沒有標準答案 都遇過
08/17 00:42, 10F

08/17 00:47, 2年前 , 11F
蠻認同的,很專業的回答, 軟體真的範圍很大,刷題真的
08/17 00:47, 11F

08/17 00:48, 2年前 , 12F
只是冰山一角
08/17 00:48, 12F

08/17 00:48, 2年前 , 13F
個人工作比較偏向機台開發, 硬體知識反而需要更多
08/17 00:48, 13F

08/17 01:02, 2年前 , 14F
不過大大是什麼產業的軟體呢?蠻多我聽不懂的
08/17 01:02, 14F

08/17 01:04, 2年前 , 15F
Inverse proxy -> reverse proxy
08/17 01:04, 15F

08/17 01:06, 2年前 , 16F
非大大 過去在embedded寫C/linux shell 之後轉市售商用軟體
08/17 01:06, 16F

08/17 01:07, 2年前 , 17F
網頁/資料庫/桌面程式/手機程式/後端架構/數據分析 全包XD
08/17 01:07, 17F

08/17 01:08, 2年前 , 18F
感謝推文的專家們指正!
08/17 01:08, 18F

08/17 02:23, 2年前 , 19F
Google肯定是認定問演算法有幫助才問的吧,真的有
08/17 02:23, 19F

08/17 02:23, 2年前 , 20F
人以為這間公司會浪費一堆時間去問沒用的問題 XD?
08/17 02:23, 20F

08/17 02:43, 2年前 , 21F
美國其實不是只有一套考題 高階或專門領域會有自己的問題
08/17 02:43, 21F

08/17 02:43, 2年前 , 22F
算法通常是拿來考所謂General SWE 重視可塑性(高級碼農)
08/17 02:43, 22F

08/17 02:43, 2年前 , 23F
這個案例最大的問題是recruiter沒有把他分配到正確的崗位
08/17 02:43, 23F

08/17 02:43, 2年前 , 24F
某種意義上來說 他確實也不適合這個崗位
08/17 02:43, 24F

08/17 02:58, 2年前 , 25F
我記得幾年後Homebrew的作者有po文反轉 他很感謝當初g
08/17 02:58, 25F

08/17 02:58, 2年前 , 26F
oogle這樣面試他 他認真開始研究演算法與資料結構後
08/17 02:58, 26F

08/17 02:58, 2年前 , 27F
受益無窮
08/17 02:58, 27F

08/17 04:33, 2年前 , 28F
Peter Norvig 在演講中提到 Google 內部研究
08/17 04:33, 28F

08/17 04:34, 2年前 , 29F
有 competitive programming 的經驗,與工作效率是負相關
08/17 04:34, 29F

08/17 04:35, 2年前 , 30F

08/17 04:58, 2年前 , 31F
那他們幹嘛一直辦GCJ
08/17 04:58, 31F

08/17 05:00, 2年前 , 32F
版控應該是貴公司要制定好制度吧 進來再學就好了
08/17 05:00, 32F

08/17 07:01, 2年前 , 33F
大哥,不要有事沒事舉大神當例子XD
08/17 07:01, 33F

08/17 07:19, 2年前 , 34F
跟大學無用論舉賈伯斯很像
08/17 07:19, 34F

08/17 10:14, 2年前 , 35F
其實你說的是面試時系統設計的問題 所以筆試還是要準備
08/17 10:14, 35F

08/17 10:42, 2年前 , 36F
但這很多問題遇到會嘴的印度人真的超級能說...
08/17 10:42, 36F

08/17 11:20, 2年前 , 37F
公司不需要大神,會故意用比較刁鑽的東西想刷掉他們。
08/17 11:20, 37F

08/17 11:21, 2年前 , 38F
結果peter自己後來澄清他弄錯了
08/17 11:21, 38F

08/17 11:21, 2年前 , 39F

08/17 11:55, 2年前 , 40F
像版控阿… git 用到飛起 在大公司還可能有反效果…
08/17 11:55, 40F

08/17 11:55, 2年前 , 41F
很多 in house 的,他們找學習力強的三兩下就上手了
08/17 11:55, 41F

08/17 11:57, 2年前 , 42F
有時候是想找天花板高的,不是當下本質學能最強的
08/17 11:57, 42F

08/17 15:12, 2年前 , 43F
08/17 15:12, 43F

08/17 21:29, 2年前 , 44F
老實說很說大公司git甚至是直接找SI處理,一般人就基本
08/17 21:29, 44F

08/17 21:29, 2年前 , 45F
指令打一打而已。
08/17 21:29, 45F

08/18 00:35, 2年前 , 46F
就算知道那麼多,第一關刷題不過就沒機會
08/18 00:35, 46F
文章代碼(AID): #1X6ewfT5 (Soft_Job)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 10 之 14 篇):
文章代碼(AID): #1X6ewfT5 (Soft_Job)