先跟大家報個平安,順便更新一下我最近的系統狀態。
最近我的個人生活負載有點超標:
搬家後馬上上班、照顧小孩,那一疊疊沒拆箱的紙箱每天還在客廳裏提醒我要打掃及收拾
家裏的寶貝慢慢長大了,清醒的時間越來越長,能寫作的時間越來越少
最令我心疼的是,家人因為過度勞累接連病倒
為了不讓自己徹底當機,我決定先對電子報的發佈頻率做一點調整:
從這週起,《北美Tech職場日記:打工仔也想升職》將會由一週一更暫時改為兩週一更。
畢竟,寫程式碼可以交給 AI,但陪伴家人和整理生活,還是得親自動手 (我還沒有錢買得起機器人😂)。
等這段混亂的過渡期結束,生活重新回到狀態後,我會再考慮調回原來的節奏,感謝大家的體諒🙏🏻
好了,感性完畢,讓我們回到這期的正題。
最近我在加拿大認識了一位軟體工程師朋友 (不是同事),聊了一下職場上的奇聞趣事。
他跟我說,他公司最近剛經歷一波裁員 (這在今天的科技業已經見怪不怪了),但諷刺的是,他所在的組卻因為業務擴張正在招人。
因為他在公司已經待了一段時間,這輪招聘他有份擔任面試官,聊到面試細節時,他提到了讓我眼睛一亮,但同時是意料中的轉變:
他們放棄了 Leetcode 類型的題目
這其實不難理解,現在 AI 解 Leetcode 題目簡直比喝水還簡單。
與其花心思去防應徵者有沒有偷偷 Google、用 AI,或者去猜對方是不是已經見過同一條題目,倒不如直接大方宣佈:
面試時,你可以隨便用 AI,也可以隨便 Google
取而代之的,是一場人機協作的實測。
他公司的面試模式是:
先給你一個由 AI 寫出來的小系統。說是系統,其實只是一段能跑起來、但藏著幾個 Bug 的程式碼。應徵者要用像 Cursor 或 GitHub Copilot 這種具備 AI Agent 功能的工具去找出錯誤,修正它,然後再根據需求開發一個新功能。
聽完我第一反應是:
這才像是現在找寫程式的人嘛
與其徒手造輪子,不如學會開車
老實說,我滿喜歡這改變的。
除了初創公司的元老,我們這行哪有那麼多機會讓你從零開始寫一個系統?大部分的日常,其實都在維護前人留下的東西、修補 Bug、或是加一點新功能。這種從半成品出發的面試,比死背 BST、BFS、DFS 怎麼寫,更貼近我們真實的工作狀態。
以前的面試就像在考徒手格鬥,連 Google 語法都不行 (以前的我沒有固定使用的程式語言,為了在北美找第一份工作故意用 Java 刷了 2 個月的 Leetcode,但入職後到現在已經接近 2 年沒寫過 Java 了)。
現在,這些比較瑣碎、層次較低的工作,交給 AI 做成果出來真的不錯。
幾個月前,就連 PM 面試也要考 Vibe Coding 了 (有興趣可看我之前的分享:連 PM 面試也要考 Vibe Coding?)。身為工程師,我們正被推著去學會站在巨人 (AI) 的肩膀上,不再去拼記憶力或打字速度,而是看能不能帶著 AI 解決更高層次的問題。
這樣的人機協作面試,面試官不再看你能不能默寫出某個演算法,而是想要看到:
你跟 AI 怎樣分工?哪些事你讓它做,哪些決定你自己負責?
你懂不懂 AI 的極限? 當它給你一個看似正確但有坑的方案時,你能不能一眼看穿?
你怎樣利用工具?有了 Agent 後,怎樣才能幫你達到原本一個人去不到的高度?
AI 作為新時代的工具,能夠駕馭它們似乎已經成為在職場中生存的必備能力。
(唉🤦🏻♂️又要在發佈 AI 焦慮了)
竟然令我聯想起高達 (鋼彈) 和無人機
聊著聊著,我突然想起看過的一些機器人動畫,像是高達 (鋼彈) 那類的。
在那種世界觀,戰場上幾乎已經看不到人類自己衝出去肉搏了,原因是機甲的性能遠遠超過了人類的肉身極限。
人類要待在駕駛艙裏,借助機甲的力量才能在戰場上存活,並發揮更大的破壞力 (或守護力)。
又像是現代戰爭裡的無人機,人類不需要親自衝鋒陷陣,而是坐在後方,根據無人機回傳的資訊來做策略判斷,要無人機衝過去當自殺式炸彈,還是多跑兩個圈多收集敵方資訊?兩種情況下,人都只需要對著螢幕下令。
現在的軟體開發,給我的感覺就很像這樣。
AI 就是那具性能強大的機甲,它寫程式碼、查資料的速度遠超我們的腦袋。以前我們要花一個小時去 Google、查 Stack Overflow,現在 AI 幾秒就能做個八成出來,時間成本差太遠了。
人類駕駛員的最後防線
話雖這樣說,我們坐在後方下令看起來很輕鬆,這種轉變對我們這些習慣親自動手的人來說,其實有一種隱形的壓力。
在動畫裡,如果機甲系統故障或是判斷錯誤,承受結果的還是坐在駕駛艙裡的人。同樣地,在軟體開發的場景裡,AI 寫錯了程式碼它不會被開除,但你會。
這就是為什麼我朋友的公司要考「人機協作」,他們不是在找一個只會按 Tab 的人,而是在找一個懂得負責任的駕駛員。當 AI 幫你省下了 80% 的體力活時,剩下的 20% 判斷力就非常值錢。
身為工程師要判斷 AI 給的解法會不會在半年後造成記憶體洩漏?現在的設計雖然能跑,但會不會影響將來的系統擴展性?
(雖然我曾經有個想法,既然程式碼現在這麼廉價,開發新系統成本這麼低,幾天就能寫一套新系統出來,那還值得花時間投資在系統擴展性、可維護性嗎?)
這種決策疲勞其實不比寫程式輕鬆。
以前寫程式碼是一種心流,現在審核 AI 的程式碼更需要的是架構眼光,我們正從一個搬磚的工匠被迫轉型成監工的建築師。
老實說,這條轉型之路挺累的,但想起來應該是未來應走的路?
它把我們從那些瑣碎、重複的語法地獄中解放出來,讓我們有更多時間去思考 What 及 Why,而不是 How。
職場小挑戰
之前我經常在網路看關於 AI 的消息,曾經以為 AI 已經非常普及,身為工程師不會 AI 就會像「某部份」人所說的被淘汰。
然而,在自己公司觀察一陣子卻覺得並不完全是這樣,AI 是正在普及化,但不同國家、地區、公司對其接受態度和推廣程度都有不同。
這次我是剛認識一位工程師朋友,並在閒聊時聊到 AI 和面試才知道他們已改變了面試模式,我也想你能從朋友們打聽一下相關資訊,從第二手角度了解職場上的情況:
找一位在不同地區或不同公司的工程師朋友,問一問他們現在用 AI 用成怎樣?


AI面試其實很好玩 對面試官挑戰也滿大的 ,要怎麼identify 應試者的工作能力 不是寫code而已。以前leetcode 其實也是同樣的目的 但是很容易搞的好像在考演算法(雖然也有很多公司當成baseline)
以加拿大來說 很多公司都已經調整ai 面試 我們公司也是去年就調整了 但是我覺得整體數量還是太少 (從學員跟自己今年的經驗去來說)感覺還是滿多leet code
零式系統吊打無人機喇
就是要有那種不怕被AI取代,至諸死地而後生的覺悟,才能百份百使出AI的威力。