Re: [討論] 我就問,刷題強者的實務表現?

作者: Hsins (翔)   2022-10-05 13:01:20
: 推 strlen: 哪有什麼不能左右?智力測驗都立法不準考了 鬧一鬧以後白 10/05 11:28
: → strlen: 板題也是智力測驗的一種 也立法除非職務有需求不然不準考 10/05 11:28
: → strlen: 也是很合理的啊?我跟你說喇99.99%的程式職缺根本就都用不 10/05 11:29
: → strlen: 到那些拉機白板題 在現實中一點用處都沒有 10/05 11:29
: → strlen: 沒用的東西大家拼命刷 用力刷 這他X的跟古代考八股文有87% 10/05 11:29
: → strlen: 像 這不就是智力測驗的變形而已?腦殘公司才會在那邊通通 10/05 11:30
: → strlen: 考白板 就只是便宜行事而已 10/05 11:30
現實生活中也不少人用不到微積分,你看
看有多少大專院校科系把它列為基礎必修
科目?
我也同意絕大多數的白板面試考題,你在
現實開發場景中幾乎遇不到一模一樣的題
目。但不代表他背後考核的東西,沒有測
驗的價值,也不代表他背後考核的東西,
在現實開發場景中沒有用處。這個我想之
前有版友分享過了:
Re: [討論] 軟體工作真的有需要刷題嗎?
https://hhp.li/BDCnO
所以舉「99.99%的程式職缺根本就用不到
那些拉基白板題」做為反對白板面試的篩
選機制,說真的有點好笑;我想這可能也
是很多反對刷題仔的一些誤區:
(1) 題目要刷夠多?
實際上不是,題目可能背後考的是同一個
思想,有些人練習的題目數量是別人的十
分之一,但卻花心思從中看出了「套路」
可以取一反三寫出其他題。在 Educative
上面有一門很知名的課程有總結這些所謂
的刷題套路(pattern):
Grokking the Coding Interview
: Patterns for Coding Questions
https://hhp.li/8cucv
(2) 面試上遇到題目就是要給出最佳解?
實際上可以說是,也可以說不是。有些題
目考核的是你的熟悉度,這種可能就是面
試官希望你能夠一上來就拿出一個複雜度
低的解法;但有些題目考核的是你的溝通
能力與思考過程,這種不用一上來就端出
最佳解,而是一步步在互動過程中完善解
答,甚至有時候你即使這題沒有 AC 也能
拿到比那些背誦給出 AC 的人更高的分數

(所以即使你刷過一題,可以直接給出最
佳解,有時候藏拙裝笨會比直接端出最佳
解更好。)
大廠的不同關卡通常會有給定的時間限制
,可能會預設說這關要出幾題 easy、幾
題 medium、幾題 hard。如果今天預設這
一關要測 2 easy, 1 medium 結果你的時
間只答出 1 easy 那就掰了;如果今天預
設要測 2 hard,結果你直接給最佳解,
省略那些溝通過程,只能出更多 hard。
有些東西是要有一些「感覺」的,要能夠
猜出對方想要測驗什麼,這其實不論刷不
刷題都很重要。
(3) 白板面試測驗到底好不好?
說真的就是「見仁見智」,如同上一篇說
的,他可能只是面試多個關卡中的其中一
個環節;有些大廠還是會考,有些大廠則
有其他選才機制。
我認為他有存在的必要,而且的確是滿適
合作為篩選機制,其中:
> 如果給出對方沒見過的題目,能夠考察
對方對於文義的理解,還有能不能在題目
敘述完畢後,額外再來問我一些沒提到的
限制條件或是資料狀況?
舉個比較淺顯易懂的例子,今天題目中有
個操作是需要排序,對方會不會注意原始
資料是不是已經基本有序?會不會問有沒
有記憶體的限制要做額外處理?
> 能不能適當地把題目要實作的內容,選
擇適當的資料結構,把問題「抽象化」,
有了適當的資料結構再來設計演算法?
最簡單的就是同樣都是線性結構,可以使
用 Linked List 儲存也可以用 Array 儲
存,為什麼要選其中一個?是根據哪個考
量?為什麼?
> 實作過程中有沒有考慮邊界條件,提前
不符合就返回,避免冗贅的計算或是處理
了本身題目就不會進來的條件。
有位教師經常舉因為程式錯誤導致飛機失
事的例子,來說明工程師的重要性。練習
的過程中,會不由自主地去想到這些,當
然這也包含在前面兩點中,有沒有空值?
有沒有負數?有沒有重複值?是不是整數
值?
> 有沒有良好的開發習慣?命名習慣?單
元測試?
會不會出現神奇的 a, aa, b, dd 變數名
稱?會不會適當地將操作封裝成函數?
後者的習慣讓我在實際開發上有不小的收
穫,一來是除錯時方便定位,二來是會對
程式更有一種掌控感。中國大陸有一名臉
書離職的員工跑去開了所謂的刷題課,雖
然課程內容我不覺得有多好,但他最一開
始有個導論介紹他怎麼寫題目,收穫算是
頗豐。
他提到他曾經的主管,會在釐清問題之後
先寫下過程中要實作的函數,而不是全部
都寫完邏輯之後再拆分成函數。這種「自
頂向下」的開發方式,會有一種提綱挈領
的用處。
(而且這種習慣,搭配 GitHub Copilot
面對實務中那種常見的 CRUD 寫起來根本
超級無腦……)
作者: abccbaandy (敏)   2022-10-05 13:06:00
既然幫助這麼大,那如果FANG不考刷題,你還會刷嗎?
作者: peter98 (新兵)   2022-10-05 13:10:00
1樓有不少實務經驗 我想問為什麼大同電鍋煮的米飯比電子鍋好吃?我在美國不能沒有大同電鍋 想了解
作者: chatnoir (對不起)   2022-10-05 13:14:00
我很愛大同電鍋, 但日本電子鍋煮的飯比較好吃 (亂入
作者: alihue (wanda wanda)   2022-10-05 13:21:00
真的比較好吃嗎?有做過盲測?
作者: Dven (o_O)   2022-10-05 13:45:00
這篇專業
作者: Ericz7000 (Ericz7000nolan)   2022-10-05 14:32:00
作者: josephroyal   2022-10-05 14:38:00
認同這篇的觀點 反刷題仔很喜歡說面試官能力不夠才只能考刷題 但很多面試官更在乎的是面試過程中溝通表達還有思考的過程
作者: Firstshadow (IamCatづミ'_'ミづ)   2022-10-05 14:41:00
做大同電鍋的人有刷題嗎==
作者: ohmylove347 (米特巴爾)   2022-10-05 14:50:00
微積分算是大學裡的加減乘除吧,列必修蠻合理的
作者: superpandal   2022-10-05 14:51:00
你這是解題思維 現實是完成需求的思維 而且套路通常不多 多數人都是寫的快堆屎山 大系統能不動就不動我都會想怎麼做更好 XD現實是多數老屁股覺得這屎山很香 不要動 只有新的需求才可能交給新來的人 重構機會不是很多 就算給你機會重構還要被檢討 屎山都是可以搞人論kpi的這也是內卷現象 大公司靠入職前一堆門檻擋人 小公司靠一些說不清的標準擋人當然應該有公司都有以上兩者 都可以理解 但如果遇到了會很不爽就是 我相信他們可以做的更好 但是他們可能見過一堆公司而且家裡有子女才整天搞這個的 我都覺得要就要不要就不要 不需要再搞什麼優越我沒說不需要有門檻...我贊成的事應該讓不同標準門檻存在 具有多樣性是現在這一串討論一堆人意圖使自己擅長的獨大 你死我活的節奏而且如果大家都刷題 中小企業的情況會在大公司出現因為人總是喜歡凸顯自己的高大上
作者: Ericz7000 (Ericz7000nolan)   2022-10-05 16:24:00
笑死 刷個題講的像是什麼不得了的東西,還多樣性勒,有底子的一般人隨便準備一個月就綽綽有餘了吧,又不是什麼多專業的技能,人家重點是放在溝通又不是刷題本身
作者: qwer338859 (溫莎公爵)   2022-10-05 17:07:00
這篇滿中肯
作者: baobomb (baobomb)   2022-10-05 17:11:00
一樣米養百樣人啦 面試官分兩種 一種想看你怎麼思考跟溝通 通常不在乎你能不能直接給出最優解 而是看你怎麼作為一個Problem resolving Leader去Drive solution. 另一種就是沒時間或懶或是自己也根本實力不太夠 就只想看你5分鐘給最優解沒有就給no hire. 同樣面試者也是 一種不反對這種考法 單純是給一個環境去思考以及解決問題 一種是覺得反正我硬背也行 考這種屎有什麼用 這就是為什麼我們說面試很大成分看運氣 硬背的面試者遇到重溝通的面試官一定掛 但遇到第二種自己也是背進去的面試官就拿hire 同樣第一種重思考過程的面試者遇到第二種背進去面試官就掛因為你花超過五分鐘在溝通思考 他就直接把你掛no hire然後開始做自己的事了所以不管是硬背還是真的了解解題核心 都還是看運氣 看你碰到怎麼樣的面試官考演算法只是給個環境 至於你的表現面試官愛不愛那完全看你運氣遇到怎麼樣的面試官
作者: superpandal   2022-10-05 17:23:00
還可以腦補別人覺得是什麼不得了的東西 本來就不贊同刷題作為全部公司統一的標準 原因也講過了 你想準備就準備 別人不準備你要勉強別人? 刷題就刷題 就算給你比較到 也不代表真的溝通情況 而且一票人刷題最好是每個都仔細分析 想多了想不想刷與刷題難易本來就不同 不用混在一起講 而且你這只是主觀看法因為你覺得刷題沒什麼 所以應該要刷 不想刷的bla blabla當然一間公司要不要刷外人管不著 是"全部公司"樓上說的對 刷題也要運氣 但刷不刷都是要運氣 除非家族企業或彼此較為了解真的魔怔到要進行強關聯其實都可以細分 技能溝通、業務溝通、行為溝通... 愛怎麼分析都可以
作者: Belieeve (芥末拿鐵)   2022-10-05 19:23:00
好文推推
作者: strlen (strlen)   2022-10-05 19:24:00
工地裡每個工人都要去考試都要拿建築師執照嗎? 你們這些刷題仔真走火入魔耶...還微積分勒 大學本來就不是人人都可以上 是台灣畸型教育體系搞得變基礎學歷 但課程還是走以前學術體系 所以才會一堆老人在那邊臭大學讀完出來啥屁都不會 要刷題拜託你們高大上尖牙灣區你要怎刷就怎刷好嗎現在已經走火入魔人人刷 你開個月薪三萬PHP也在那要白板刷題歪風就尖牙搞出來的 公司沒那需求沒那條件考考九九乘法表就好了喇 笑死耶還一堆在那邊刷題好棒棒 不想考白板你可以去別間 講這種垃圾話 跟慣老闆一鼻孔出氣 下次就說不爽加班你去別間啊 結果每間都加班 每間都責任制 每間都學尖牙 明天叫你滾就滾不爽不要接受阿 好啊 那幹麻搞勞基法?全廢了讓市場自由決定啊?你不知道資方有多機掰
作者: Hsins (翔)   2022-10-05 19:31:00
好氣ㄛ
作者: hank55663 (hank55663)   2022-10-05 19:47:00
我懷疑有人在反串反刷題 不要把反刷題的人搞的那麼沒料
作者: abc12689 (Shewix)   2022-10-05 19:59:00
推 H大
作者: leolarrel (真.粽子無雙)   2022-10-05 20:18:00
Hsins擺明就刷題至上,花時間跟他辯不如回家嚕貓.你們不會以為辯到他啞口無言後他想法就改了吧
作者: AudiA4Avant (A4 Avant)   2022-10-05 20:48:00
不覺得在面試時藏拙反而更好是件很詭異的事情嗎?
作者: superpandal   2022-10-05 20:48:00
怎麼又講到php... php要寫都可以很厲害的 基本一堆功能要寫都可以 也都不一定需要多線程 多進程都是一個選項 畢竟一個進程效能都會觸頂原來是講到月薪3萬的php公司... 那個差不多apachenginx弄一弄就可以了看到了... 不過我相信不只php會這麼慘 年薪不到70都一堆
作者: lukelove (午睡)   2022-10-05 21:57:00
前面幾樓的觀點我不同意電子鍋的米飯怎麼可能輸大同電鍋
作者: Hsins (翔)   2022-10-05 21:58:00
各有風味啦, 電子鍋的米飯吃起來口感比較好, 但大同電鍋就有種記憶裡熟悉的味道...
作者: OnlyRD (里巷人)   2022-10-05 22:21:00
以前的人根本不刷題,都在刷open source,為什麼不把時間拿去刷open source?刷題就是為刷而刷,不要再找藉口了。
作者: Hsins (翔)   2022-10-05 22:34:00
以前的人也不用臉書、抖音,除了批踢踢之外還會上不良牛和盈月繁星你怎麼不說?
作者: daddy29 (願上帝與你同在)   2022-10-05 23:01:00
真的看場合 垃圾公司說實話有沒有刷題都沒差 就缺一個工大廠為啥要刷題 因為最快能認識你跟篩選人選 策略不同你今天真的夠牛homebrew自己文章也寫了 他化學畢業但他自認很會寫code 股歌的面試官也沒為難他 就出了道轉樹 這超簡單的有認真準備面試的穩過 誰知道他還真不會那面試官真tm雖小 想直接讓你pass你都能翻車如果真的覺得刷題沒有用 可以去面試那種不用刷題的公司
作者: jj0321 (JJ與你倒數唷)   2022-10-05 23:04:00
PHP臭了嗎
作者: daddy29 (願上帝與你同在)   2022-10-05 23:04:00
為啥還來這邊吵呢 還是剛好大廠90%以上都要刷題打擊到你們自尊心了? 考LEETCODE真的有這麼難嗎?但凡大學有上過演算法課程的 認真點幾乎都能夠處理
作者: Belieeve (芥末拿鐵)   2022-10-05 23:05:00
戰電鍋戰起來!啊不是…戰刷題才是…
作者: daddy29 (願上帝與你同在)   2022-10-05 23:07:00
作者: peter98 (新兵)   2022-10-05 23:27:00
大同電鍋煮出來的米飯並不會比較好吃 但是因為你知道這一點 所以你會特別在煮飯之前泡米泡個30分鐘 煮米的時候直接用40-50度的水煮 煮完後還會放一會燜個5-10分鐘 做軟體也一樣 你拿到一個好的code repo你可以隨便改改 別改壞的情況下他依然很好 如果拿到一個壞的code repo 你就要花更多心力去維護他以達到同樣的效果 好好維護說不定比好code repo還好 生活實務跟軟體實務都是同一個概念 這沒有標準答案 如果你對我的答案嗤之以鼻 那就是問實務經驗並沒有用 只是某個號稱實務能力很重要的人卻沒有答案然後問完大概又要戰面試這又不一定懂大同電鍋或煮飯 變成要公司只問面試者會的實務經驗 然後又憑甚麼規定公司只能問自己會的 面試者好大權力然後又要戰公司工作內容又不包含煮飯 噗所以最好問工作會用到然後面試者又懂得 比如安裝pythonlib XD
作者: viper9709 (阿達)   2022-10-05 23:53:00
原來大同電鍋煮飯不好吃[email protected]@
作者: abc53 (abc)   2022-10-06 01:07:00
作者: peter9s3b   2022-10-06 06:50:00
都用動物牌電子鍋煮飯,大同我不太會用常有鍋巴
作者: leolarrel (真.粽子無雙)   2022-10-06 09:27:00
抱歉,我個人吃過最好吃的白飯要用砂鍋直火煮,但是難度很高,我常常弄到翻車,但要是運氣好成功的話,那飯吃起來無法形容的好吃.另外想起,傳統香港煲仔飯煮飯的作法也是用砂鍋.但現在香港的煲仔飯變質了.為了出餐快,飯都先煮七分熟,垃圾
作者: hellomotogg (你好機車)   2022-10-06 14:14:00
朋友去面助工java缺考leetcode 進出之後都在寫vue
作者: Belieeve (芥末拿鐵)   2022-10-06 23:49:00
大同電鍋煮只是人為因素佔比較多而已,技術好的來煮一樣好吃吧
作者: Appleaday (包子饅頭)   2022-10-07 09:21:00
就是 你連刷都不刷 那就不要進來了
作者: angerD (丹佐)   2022-10-08 19:02:00
python版本差異這段寫的不錯

Links booklink

Contact Us: admin [ a t ] ucptt.com