(低卡排版有點難排,如眼睛不適請見諒><)
大家好,這篇文想分享在眾多資工優秀人才中,身為平凡人的我在 2023/5 ~ 7月的面試心得。
之前看版上分享文感覺蠻多都是有拿卷、有程式比賽經驗的人或是厲害side project的人來分享滿手offer的心得,這樣的狀況其實也不難理解,拿到理想offer的人自然會想分享(炫耀)成功經驗,反之一堆無聲卡拒絕信,根本沒offer或是拿到不理想offer的人可能沒什麼意願分享。
雖然我自己對這次的面試結果不是很滿意,但還是想說可以分享一下,希望給其他平凡背景的人一些參考,也想鼓勵最近在找的人如果發現自己也很多拒信或無聲卡,你並不孤單。
最後希望也能達到拋磚引玉的效果,之後也能看到其他人po的文彼此交流。
[背景]
四大 cs 學,普到不行的普通人(成績中段、沒卷 / 沒程式比賽 / 沒paper 、遇到困難作業抱學霸室友大腿)。
- 專題: AI相關,沒有甚麼成果,水過去而已。
- Side project: 只有一兩個很基本,簡單CRUD的project。
- 1y 軟體公司實習,職位是Fullstack Engineer Intern。
==================================
[投遞目標]
- 軟體RD相關的職缺,偏好Backend / Fullstack engineer,但其他軟體相關的也不排斥
- client端 (web frontend / android / ios / desktop) / devops / sre / QA 職缺因興趣暫不考慮。
- 理由:
- 在學期間透過修課/專題了解到自己討厭 AI 相關或是與硬體相關的事情。
- 對前端真的沒什麼興趣,且轉職前端的人很多,自認比不贏有熱忱下班會繼續進修的人。
- 不會到特別在意自己錢一定要領到頂標。畢竟人是貪婪的,比較永遠比不完,一山還有一山高。覺得能做自己比較有興趣的,且薪水夠用就好。
[期望薪資]
一開始想說 目標台灣純軟 +現在這垃圾景氣 設在 120萬 / year 就很滿足了,後來愈投愈崩潰,下限修到有破百就好。
==================================
[投遞結果 (當兵前)]
無聲: Ubiquiti / Houzz / Foodpanda
面試被拒: AICS / Appier
[投遞結果 (當兵後)]
無聲卡: Foodpanda / circle / TeamT5 / Google / Kloudless / cronos / fazz / Txone / Mammoth / Shopline / Linker Vision / iCHEF / Gofreight(backend)
直接被拒: Nvidia / cyberlink / dcard / SUSE / Taboola / OneDegree / Gofreight(data) / Foundi / HighStreet
OA後被拒: Mixerbox / Netbase
面試後被拒: Synology / 17Live / Kronos
==================================
[市場觀察]
在投遞的時候也有發現前幾年常徵才的軟體大型公司像是 趨勢 / Yahoo / LINE / Houzz 之類的,在投遞的時候完全沒有Junior缺。(補充一下: 今天有看到Houzz開Backend了,感覺有夠競爭,大家快去投!)
而最常見Web相關的缺幾乎都要徵有工作經驗2+以上的,Junior缺超少… (當然我還是有投,不過大部分都是被拒或無聲卡)
接著也有聽說同儕在的公司收到很多top school的海歸履歷,讓我感到非常絕望。
或許之後景氣會慢慢回溫吧,不過也不太可能一直待業等到回溫,不確定性太高了。目前想法就是先蹲一下練經驗,等之後有好的機會再把握住了。
==================================
[面試準備]
比較General的準備:
- Leetcode:
- 題數: 從大學期間累計到今天大概900題左右
- 這個數字是從大二大三開始慢慢累積到現在的,所以有一些很久以前寫過的題目應該早就忘光了(等於跟沒看過一樣)
- FAQ: 有需要刷到這麼多嗎?
- A:
- 我自己覺得不用刷這麼多題,把經典題都練熟去面一般公司就很夠了,我面下來感覺一般公司大多都考經典題比較多。
- 慘痛經驗: 有一次被考到一個經典題,結果我太久沒練經典題都在寫新的所以卡了一陣子才想出來 QQ。
- 如同前面提到的,我只是個普通人,所以必須想辦法付出更多努力,身邊朋友比較聰明或有天分的寫幾題就能把感覺抓回來了,沒必要刷這麼多。
- Rating: 2200 上下
- 運氣好上去的,之前打上去後就沒打了。最近有稍微回來打一下,感覺最近有比較難打一點(難打的意思是題目難度差不多,但排名下降)
- 基本上都只有解出easy/medium,遇到hard寫出來比例不高。
- OS / Networking
- 拿以前的PDF稍微看一下,有不懂的就再上網查
- BQ
- 其實也沒有特別準備,主要是把履歷上的東西都用熟,然後誠實跟憑直覺回答問題
其他相關準備:
- 程式語言
- 後端相關最熟的技術應該是 NodeJS,但 python / golang 語言及相關的後端框架也有基本認識。
- 複習/學習 Modern C++ (11/14/17/20)。
- 後端相關知識
- DDIA
- Ch1 ~ Ch7, Ch9 至少都有看過一遍,有些看兩遍以上
- 各公司的Tech blog (很懶,看的頻率不高)
==================================
[面試/OA過程分享 (當兵後,2023/5~2023/7)]
### Synology
Title: Product Developer
因為 Product Developer 關於 Fullstack 的JD都蠻像的,所以就挑其中一個部門投。
一面:
與team上的Junior/Senior Engineer面試
一開始先問履歷上的東西,接著問延伸的相關問題。前端後端的知識都有問到,個人覺得前端相關的東西問比較深。
後續考了一題演算法(medium),比較可惜是我只有想到O(n * logn)的解法,O(n)的現場沒想出來。
後續:
一週後收到感謝信,有得到feedback 說公司想找對client 端比較有經驗的人或是很有潛力的new grad ,覺得我跟一般new grad實力差不多所以沒有繼續。
感想:
實際面試聊後才知道這個Team想招的是偏Frontend的人,本來面完想問問看HR能不能有機會再 match 其他可能比較偏backend相關的team,但後來直接被無視QQ。
時間軸:
- D+0: 投遞履歷
- D+7: 一面
- D+16: 拒絕信
==================================
### 17Live
Title: Backend Engineer
一面:
總共分成四個部分
1. 技術關: 大概半小時,考一題演算法,LC Easy 經典題
2. 技術關: 會有另個Engineer出一個考題,然後用像是pair programming的方式討論一起完成這個task。
3. 主管關: 面試官為兩個不同team的主管,主要在介紹各Team在做的事情,並問履歷上的東西,偶爾也會穿插一些相關的知識 (Backend / DB / 簡單的System design 相關)。
4. HR關: 自我介紹+提問。
後續:
最後面完後,HR本來說大概一周左右會有結果。兩周後寄信去詢問,結果說因為公司內部要人事清點所以不會那麼快有結果 ( 我感覺真實情況應該是被放到備取池了啦…)
最後等了一個多月後再次詢問無果,隨後主動拒絕。
感想:
感覺自己表現得還可以,該回答的應該都有答出來,只是相關經驗可能真的太少(職缺有寫希望1-3 year經驗的人)。
時間軸:
D+0: 投遞履歷
D+6: HR 確認
D+18: 一面
D+26: HR 再確認一次
D+42: HR說需要更多時間確認
D+55: 主動拒絕
==================================
### Kronos
Title: Software Engineer (C++)
OA:
- 三題演算法,體感難度都在easy或medium。
一面:
與team上的senior/junior engineer輪流面試:
分別考了演算法及c++ system programming的相關知識,也會問到modern c++的東西。
演算法體感不難,大概在easy~medium之間。比較特別的是在面試時允許上網找資料來回答問題。
二面:
與用人主管/HR面試:
用人主管一開始先出了一個敘述有點模糊的題目,自己在確認題目就花了蠻久的時間,後續可能因為花太久了所以面試官主動更改題目要求(降低題目複雜度),想了一下後就寫出解法結束。
個人感覺這關是想考問對問題把題目拼湊出來並解決的能力,但自己沒有表現的很好QQ。問題目相關的細節問題時,面試官有時候會說這個可以自己決定。
後續:
二面一周後收到拒絕信。有試著詢問Feedback但沒回覆。
感想:
一面給我的感覺蠻棒的,在面試時答出自己的解法後,面試官也會主動分享還有哪些不同解法,受益良多。
最後沒上這間覺得蠻可惜的,不過也算是在意料之內,想必一定有更熟悉c++/system programming的候選人,自己只不過是大概了解而已。
時間軸:
D+0: 投遞履歷
D+13: 寫完OA
D+21: 一面
D+35: 二面
D+42: 拒絕信
==================================
### Mixerbox
Title: Backend Engineer Trainee
OA:
三題演算法,平台上有標示難度,分別easy/medium/hard各一題。
自己體感覺得難度應該1 easy / 2 medium,整體來說不難,大概半小時多一點寫完。
HR Interview:
HR面試,介紹公司內容。
後續:
HR Interview不久後就被發拒信了。
==================================
### Netbase
Title: Fullstack Engineer
OA:
簡單演算法+後端相關的小project,不限語言框架,限時約3小時內。
後續:
自己在OA表現的沒有很好,不過也學到了一些東西:
- 在緊迫的時間內應該優先做出一個可以動的版本,接著後續有時間再去做優化,而不是在一開始就先考慮各種優化的東西。
==================================
### Gofreight
Title: Backend Engineer
OA:
1題情境模擬題+2題演算法,演算法難度大概1 easy / 1 medium。
後續:
無聲
==================================
[面試/OA過程分享 (當兵前 2022/10 ~ 2022/11)]
P.S. 因為過有點久了所以印象不深請見諒><
### Appier
Title: Backend Engineer
一面:
與Senior engineer面試
考了一題實作知名演算法的題目,題目不難,語言是Python。
二面:
與主管面試
主要問履歷上的經歷,以及延伸問題。
三面/四面/五面: (這些過程都蠻像所以放一起)
分別與 VP/產品經理/CTO 面試。
每關大概都30分鐘左右,主要內容也都是聊經歷,問問題,分享想法。
後續:
五面完後如果通過應該還會有與CEO的六面,然而我五面後一直都沒消息
隔兩周後去問HR,HR說還在跑流程,隔天會給我回覆。
接著等到隔天,HR說…,不,HR根本就再也沒回我了。
整個面試就這樣不了了知。
感想:
這間HR給我感覺不太好,不只有上面提到的答應要回覆結果直接無聲卡,還有一次是我在進入會議後等了15分鐘都沒人,後來問HR他才說面試官臨時有事所以取消面試了,而且有寄信跟我說。但我翻遍信箱完全都沒看到這封信…。
還有一個可以分享的是在一開始HR有問我期望薪資,那時候我好像答120 / year,被HR說有點太高了,他說他們會依照能力來核薪,所以可能要很有能力才能拿到這個數字。(或許我被話術Low ball了,不過我最後也沒拿到offer所以沒差)
雖然面試安排的體驗不太好,但是面試的體驗還是蠻棒的!
時間軸:
D+0: Linkedin上被HR邀約,投遞履歷 (10/26)
D+11: 一面
D+15: 二面
D+22: 三/四面
D+28: 五面
D+42: 詢問進度,沒下文
==================================
### AICS
Title: Backend Engineer
OA:
出乎意外的不是考演算法題,而是三題跟JS / Testing(Unit test/E2E test)相關的題目。
因為有點意料之外所以表現沒很好,寫完大概兩題半時間就到了。
一面:
考了一題很經典的演算法(medium),跟問履歷上的經歷。
後續:
一面後一週收到感謝信。
==================================
[感想]
在這期間的感觸跟心得實在是太多了,這裡先分享一些概要的:
在大學期間,尤其是大三升大四出來實習後發現自己原本認識的世界太狹隘了。大一大二那時候還活在以前國高中的思考方式(把學校教的東西念好就夠了),加上有點自傲都努力讀到頂大了,畢業後憑著學歷一定就能找到好工作,所以大一二也都在開心地當營隊猴/打電動。
到了大三開始投實習時,從原本信心滿滿只投那些有名氣的公司,在收了一堆無聲卡/拒信後,信心全失,開始瘋狂海投,只求有上岸就好…。
很有印象的是那時候在面試一間外商時,面試官問我為甚麼公司要錄取你,你有哪些特質是其他競爭者沒有的? 那時候我愣在原地大概一分鐘才勉強擠出一些很無意義的話( 熱愛學習、努力之類的幹話)。這個問題我到現在也很難回答,希望自己有天能夠得到答案。
那時也會開始看網路上一些大神分享的面試心得,才發現在這個領域的競爭者,有些大一二就開始實習、有很厲害的side project、從國外top school回來的、到後來也看到了一些轉系/跨考/自學的同學,他們的經歷比我還要更豐富、努力程度比我更多,大家都想擠最好公司的那幾個缺額。
看完後感到身心受挫,覺得自己以前真的是個小丑。也突然覺得以前想法像是本科的優越感、分本科非本科其實是很蠢的事情,在這領域就是實力、經歷會說話,比我聰明又比我努力的人到處都有。
學歷有用,但很難憑著學歷就直接面上一個好的職位,學歷最有用的地方應該就是當作面試門票,後續看個人造化/機運比較多。
最後也想聊聊比較心態,在找的過程中也有聽到學經歷差不多的同儕有面上我被拒絕的公司,感到很挫折,想法也變得很負面。但我也知道也有不少人跟我一樣也是被刷掉的,只是那時候我就只會不斷的往上比較。
不過也不是說這種心態不好,畢竟有這種心態才有想進步往上爬的動力。但是若因為這種心態導致陷入負面迴圈或是身心受影響,那就有點過頭了。
我認為比較好的是保持這種心態,但是當發現自己過頭時,需要適時的把自己拉回來休息一下再出發。
最後的最後也提一下感覺很多人會問的問題,為甚麼不讀研究所?
自己透過專題、詢問學長姊的經歷後覺得做研究不適合我,再加上自己想走純軟相關可能相對比較不看碩士學歷,而且討厭AI相關領域(但很多lab都AI相關) 所以才沒讀。
當然,我也可以試著找個領域沒興趣但很涼穩兩年的實驗室,然後想辦法混畢業同時利用空閒時間增進實力,但總覺得這樣有點奇怪,加上自己在做沒興趣的事情時會很痛苦,所以目前暫時不考慮。之後也有想出國念書的想法,或許不是二碩會比較好申請一點。
==================================
[結語]
後續很幸運的有拿到一間公司的offer (不在上面,為了個人隱私先藏一下><), 而且薪資福利有超出我原本的預期一點,沒意外的話會先進去蹲一下,等之後景氣比較好的時候再努力看看能不能撈到更好的缺。
最後也鼓勵正在找工作的大家,人生是自己的,路也不是只有一條,不是每個人都一定要走相同的路。不管是要繼續努力找工作、先去不是自己第一志願的公司蹲一下練經驗、Gap Year思考人生、補習班/學校繼續進修、轉職到自己有興趣的領域都是不錯的選項!