Re: [討論] 軟體工作真的有需要刷題嗎?
忍不住回應下,有在使用 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萬大大, 真的有需要刷題嗎?還是純粹就為了面試?
: : 在下工作比較邊向機台開發和嵌入式系統
--
推專業
可是你不是大神 乖乖去刷題
另外面試被問紅黑樹的 那就是面試官不想要你才問得而已
尼要知道美國一堆職缺 其實就算你資格在好也不會上
應該那職缺是perm用的 面試的目的就是想辦法刷掉你
當然我說的是美國的情形 台灣我不知道
詳情去看fb最近發生甚麼事就知道了 顆顆
喔 我看完全文的 不該噓的 推回來
了
只能看面試官與企業文化吧 沒有標準答案 都遇過
蠻認同的,很專業的回答, 軟體真的範圍很大,刷題真的
只是冰山一角
個人工作比較偏向機台開發, 硬體知識反而需要更多
不過大大是什麼產業的軟體呢?蠻多我聽不懂的
Inverse proxy -> reverse proxy
非大大 過去在embedded寫C/linux shell 之後轉市售商用軟體
網頁/資料庫/桌面程式/手機程式/後端架構/數據分析 全包XD
感謝推文的專家們指正!
Google肯定是認定問演算法有幫助才問的吧,真的有
人以為這間公司會浪費一堆時間去問沒用的問題 XD?
美國其實不是只有一套考題 高階或專門領域會有自己的問題
算法通常是拿來考所謂General SWE 重視可塑性(高級碼農)
這個案例最大的問題是recruiter沒有把他分配到正確的崗位
某種意義上來說 他確實也不適合這個崗位
我記得幾年後Homebrew的作者有po文反轉 他很感謝當初g
oogle這樣面試他 他認真開始研究演算法與資料結構後
受益無窮
Peter Norvig 在演講中提到 Google 內部研究
有 competitive programming 的經驗,與工作效率是負相關
那他們幹嘛一直辦GCJ
版控應該是貴公司要制定好制度吧 進來再學就好了
大哥,不要有事沒事舉大神當例子XD
跟大學無用論舉賈伯斯很像
其實你說的是面試時系統設計的問題 所以筆試還是要準備
但這很多問題遇到會嘴的印度人真的超級能說...
公司不需要大神,會故意用比較刁鑽的東西想刷掉他們。
結果peter自己後來澄清他弄錯了
像版控阿… git 用到飛起 在大公司還可能有反效果…
很多 in house 的,他們找學習力強的三兩下就上手了
有時候是想找天花板高的,不是當下本質學能最強的
推
老實說很說大公司git甚至是直接找SI處理,一般人就基本
指令打一打而已。
就算知道那麼多,第一關刷題不過就沒機會
CP 那個真的太偏了啊,跟面試的難度需求不在一個層級
可以想成一門獨特的專業技能了,當然會間接影響其他
工程中更重要能力的培養時間
4
我是非本科,以前聽過很多人的說法說刷題甚至資料結構演算法根本只是應付面試用,一點都不重要,進去公司就用不到了 但我必須說這種說法不完全正確。 我在進現在這家公司前,刷了600題,經典的題目大概來回做了10遍 來這家公司後,我接到了一個很複雜的任務,大概是倉儲物料的分派系統,某個物料根據某些邏輯所以被分配到哪個廠區,中間很多特殊需求但我不想講太多 為了讓程式高效能化,我手寫了樹的節點,用BFS和DFS來遍歷(不同用途),節點用priority queue排序,然後也用到deque來資料處理,map就不說了,太常用了10
最近才從刷題苦海中上岸 刷了五百多題後很幸運拿下faang其中一家的offer 我覺得對於我這樣剛畢業沒多久的人而言 有考白板題至少不會在面試時一定輸給多兩年三年經驗的人 (我只有實習跟side project 人家有正職經驗)7
單純只回這個 Homebrew 創始人被拒的例子 Max Howell 在事件兩年後有再Po文回應 原文在此: 英文好的同學可以自己去看比較原汁原味 簡單節錄:10
刷題至少可以確保有一定水準的coding能力 也因為刷題滿辛苦的,所以代表這個人可能是個努力的人 像做embedded system相關,跟刷題相關性不大 但是至少有一定水準的coding能力在設計架構跟實作比較不會犯基本錯誤 曾經面過一個說的一嘴的好經驗~ 但是寫個LinkedList都寫不出來1
還是要看在公司做什麼吧 如果是走前端的感覺用到的機會就很小 畢竟前端鮮少的情況需要處理繁雜的資料 接到的資料很多都是後端處理好的 頂多做個排序但也是直接call funtion就解決了38
小弟在後端與資料領域打滾過幾年,也刷過上百題 Leetcode 同意大部分演算法題確實工作上不會用到,但仍然有很多潛在價值存在 就來分享一下我覺得刷題真的"有意義"的那部分好了 1. 工程基本功 例如天字第一題,Two Sum,考得就是一個 Hash Table 的基本概念7
18年工作經驗 應該不用刷題 就算應徵資深工程師 考coding也只是確定一下你會寫code而已 18年工作經驗的面試 如果是工程師職位 面試會著重在系統設計/架構 管理職位的話 就會著重在更多communication部分 回到你刷題的部分 這時候應該探討的是: 為什麼公司要考刷題?8
我是不知道台灣軟體狀況怎麼樣啦 但在美國不考現場白版題或是現場Coding 你會發現白人和印度人真的很會吹 吹到那種好像 Linux 是他發明的一樣 而且標準很難拿捏 面試官沒有一個行量尺
爆
[心得] 0到100的軟體工程師面試之路Hi Sir, 我是XDucka, 2022年過年完到7月底大概花了4~6個月 準備和實戰了台灣一些外商公司(Google/Amazon)等等的面試 小弟這幾年在板上觀望和準備面試的過程中看了非常非常多板上的文章 Wheels大,ghostreporty大,punk86862001大,wulouise大,還有jserv大神大大64
Fw: [心得] 0到100的軟體工程師面試之路作者: XDucka () 看板: Soft_Job 標題: [心得] 0到100的軟體工程師面試之路 時間: Mon Oct 17 01:12:26 2022 Hi Sir, 我是XDucka, 2022年過年完到7月底大概花了4~6個月60
[面試] ASIC產業面試經驗分享-創意、智原、M31面試是在2019年初的事,拖到現在才寫,希望還是能給大家一點參考。 好讀網誌圖文版: ====== 本文 ====== 一、前言32
[請益] 自動化/軟體/軟韌 工程師差異各位 年薪300萬 前輩先進好 在下第一份工作到現在待同公司資歷三年菜鳥 目前待小網通廠 職缺是掛自動化設備工程師 做的工作內容諸如:25
[心得] 轉職軟體業心得先附上小弟背景,國立理學士/國立機械碩。 小弟退伍後到半導體當製程工程師兩年,工作一陣子後發覺技能只有 ppt與excel,找問題的方式很大一部分是用excel樞紐來分析。 在第一年的時候盤算一下應該學個一技之長,加上有一點出國工作的夢想。 碩班做訊號分析有用matlab,退伍待業有摸點前端的東西,23
[心得] Appier/Binance/Grab/ShopBack 面試心得Appier 台灣的AI服務軟體公司 後端軟體工程師 一面 tech leader和manager一起面試, 針對履歷內容詢問20
[心得] 後端面試 皮智/博智/OneDegree/映瀚/伊諾前陣子終於收到滿意的offer了 雖然小弟只是個很菜的後端 還是想分享一下過去三個多月面試的心得 畢竟也從版上得到不少幫助 多少還是回饋一下吧~~希望能幫助到有需要的人13
[心得] NZXT 面試(代友po文) 各位大大好,今天我要來分享一個用兩個月面談七次然後被打槍的故事 背景 本土資訊相關碩士,在幾間軟體公司當了十幾年工程師,曾有過兩年多帶人經驗 最近一份工作是在德國純軟公司當工程師