2018 四月 CS new grad 找工作心得

Eric Tsai
10 min readNov 12, 2018

去年12月Master畢業後我到矽谷參加Insight Data Science為期三個月的data engineering program,接著開始一波找工作,四月底投簡歷,到五月底接下FB的offer。回想起來自從2017年Fall開始找全職工作並不順利,畢業後2018年花所有心力和時間去找,和很多公司接觸後覺得new grad的工作不好找,沒有工作經驗加上沒有當過在公司招聘的一方造成很多訊息不對稱,於是整理一些心得在這裡分享,希望可以幫助到出社會之際在找工作的夥伴。

申請職位:

根據我的興趣和背景,找的是entry level的Software Engineer (SE) 和 Data Engineer (DE)

面試公司和結果:

Offer:

Checkr — SE, Quantcast — SE, Marqeta — DE, Shipt — DE, Facebook — SE

Withdraw(因timeline趕不上或興趣不符):

Google — Site Reliability Engineer, Weebly — DE, ForUsAll — SE, STEM — SE in Test

No offer:

Netskope — SE

拿面試管道:

Facebook, Google是透過朋友refferal,Checkr, Marqueta是從glassdoor到公司網站申請的,STEM和Netskope是recuiter從LinkedIn找我的,ForUsAll是看到一畝三分地上的面經然後去公司網站申請的,Shipt, Weebly, Quantcast是同時間找工作的朋友之前面試過告訴我有在招人,我再從網站申請的,這個方式感覺是最有效率的,所以多問問剛找到工作的朋友吧。

附上我的簡歷供參考: https://www.dropbox.com/s/14zucp66klvdnt8/resume_example.png?dl=0

我把心得分成找工作的各個階段:

  1. 面試前/投簡歷
  • 總結我申請過的公司,FB、LinkedIn、Google等大公司除了Amazon都是用內推的比較有效,其他有名的大公司像Pinterest, Tesla, Uber, Lyft有內推但沒有面試,當時主要都是experienced hiring,new grad openings不多,但可能也跟我找工作的時間點有關。
  • 先面最想去的公司,以new grad通常偏好大公司來說,投中小公司前,盡可能把大公司都先內推看看,一來大公司對new grad只考coding比較好準備,二來之後面小公司也會考coding,小公司考的比較廣,常考system design,而且大公司面試schedule較長(通常至少一個月),小公司快的話兩周內有結果,先面大公司能避免先拿到小公司offer來不及面大公司的狀況,我自己和幾個朋友都有遇過這種窘境。
  • 因為我比較偏好glassdoor review好的公司,所以從glassdoor申請共30家左右拿到2家面試,效率還可以。
  • 搬到矽谷比較容易拿到面試,公司都會優先考慮local candidates。

2. HR 面試

  • 我最常被問What are other companies you are interviewing with? What are the positions you are interviewing? 剛開始不知道HR為什麼要問還有我該怎麼回答,之後我才知道HR想要的是蒐集這些資訊了解你對公司和職位的興趣,HR關心的是你面試的公司都是同一個領域嗎?職位都是同一個方向嗎?還有了解如果最後給了你offer可能會跟那些公司競爭。This is an information game. Be careful with the information you give. 自己得拿捏要給HR多少資訊來極大化自己的價值,我通常只會說有拿到offer的公司的名字。CS求職市場面試多但失敗率高,告訴其他公司自己正在面試的公司並不能為自己加分多少,除非是已經拿到offer的公司。
  • 推薦The ten rules of negotiating by Haseeb Qureshi[/url],學到很多跟HR應對的心態。

3. Non-technical Questions Preparation

  • 準備3~5個故事或project拿來回答各種Behavioral Questions,用START(situation, task, action, result, take away)的方式回答,和朋友練習幾次就熟了,剛開始練可以寫逐字稿。
  • 照你想要給面試官留下的印象來選要用什麼故事回答問題,每次準備onsite都會問自己What are the five things you want the interviewer to remember about you? 然後圍繞這5 things來回答問題,還有面試後的提問也代表了你要給面試官的印象。
  • 對方問完問題就換我們問了,面試是雙向的,面試的同時我們也在面試公司,而問的問題很重要,Ask right questions to the right person. 知己也要知彼,面試的時候對方可能是HR, Technical interviewer, or hiring team/manager,不同的人適合問不同的問題來得到有用的資訊,上網搜一下the good questions to ask XXX就有不錯的問題可以問了。例如面試中後段我常問Hiring manager what’s the top three qualifications you’re looking for 來了解是否有good fit和有沒有下一步。第一通跟HR電話可以問How long have this position been open? Is it a new hire or somebody left the team? Can you give a brief introduction of the hiring manager? 來試探這個職位的招人的狀況

4. Technical Interview Preparation

  • Coding interview: 我用的是Leetcode和cracking the code interview. 先照topic做到可以不看解答解Leetcode medium的題就可以開始申請公司了,而且做的多不如做的熟。另外一邊有面試的話刷題的效率才高,我是從二月中到四月申請工作時大概做了近200題(有一邊面一些中小公司),之後為了FB做到280題。2017年初找實習時有刷過100題左右,這次再刷比較快上手。
  • System design: 推薦The System Design Primer by Donne Martin,花兩三天看過一次之後再依照面試的需求準備,System design沒有標準答案,但是要知道這些基本的知識才能提出solutions的並討論trade off
  • MapReduce: Big data/Scalability 相關的職位會考
  • 以上三類只有Coding interview是必考的,system design和mapreduce每個公司不一定

5. Offer Negotiation

  • 拿到第一個offer是最難的,拿到第一個offer之後該做的第一件事是跟其他有興趣並且還在面試的公司說,這時其他公司幾乎都會馬上加速面試,因為對公司來說這代表你真的對他們有興趣,而且你能拿到別的offer,通過面試的機會也相對高。我在拿到Shipt offer之後的下一週就馬上安排了四個onsite。
  • Blind論壇上的資訊蠻有參考價值的,可以看到各大公司員工怎麼說自己公司。

整體找工作的心態:

  1. Be positive
  • 這是The ten rules of negotiating by Haseeb Qureshi中的第四個原則 ,公司招new grad 時會有許多符合technical skills的candidates,所以你對公司的興趣程度變的更重要,公司會優先選擇最可能接受公司offer的人。而且在矽谷跳槽機會很多,招聘的流程中不只要篩選tehcnical skills,還要淘汰只是shop around不是很認真想來這個公司的candidate。
  • Reiterate your Interest 表達你的興趣很重要,這包括了所有管道像是phone screens, emails, interviews,面試完我都會寄thank you note(面試結束前記得要email address)。來自一個HR給的分享是always follow up, 每個面試結束額外寄一封HR簡單說明面試完了並期待下一步,很多HR很忙,一個人要負責多個職位的招聘,大公司的HR一個人要固二三十個candidates,所以真的不能期待HR會一直注意你的進度,甚至有些HR要靠follow up emails才能完成他的工作和不漏掉重要的事情。
  • Do everything that doesn’t hurt your candidacy 當時面時一家公司,和HR講電話要約onsite的時間,但Behavior沒有答好讓對方誤會以為我對他們公司不是很有興趣,所以當下沒有約明確的onsite時間,之後寄信問也沒有回。一周後我決定寄一封信簡單reitirate my interest,想說反正此舉有益無害,15分鐘後HR就回信跟我約onsite了。

2. Knowing what you’re looking for is as important as passing the technical bar.

  • 知道你的興趣和你想要要找什麼樣的工作,不一定要多有想法,但要有你的故事來支持你的陳述,還有哪些條件是這個工作一定要符合的,按照優先順序排下來,例如我考慮的因素照優先順序是:1 domain of the work 2 learning opportunities 。推薦一本書How to measure your life的第一章(之後才發現囧星人也有推薦https://www.youtube.com/watch?v=M9c0Yt7PuJM),不論你知不知道自己要找什麼工作,對於反思自己要找什麼工作和怎麼選擇工作很有幫助。
  • 例如HR常問 What are you looking for? I want to work at a company that have software system at scale because I am interested in the large backend system. I found my interest and gained my skills in my XYZ projects…, where I used XYZ technology.
  • 如果最後你拿到的Offer都是你很有興趣的工作,會更好negotiate,因為那些公司都是你想去的,the best negociation power is having the choice to walk away from the table.
  • 不建議亂槍打鳥什麼工作都申請,你怎麼找工作其他公司公司都在看,之前我為了繼續面其他公司將手上的offer deadline延期,另一個公司的HR就問我是不是真的想接那個offer,我猜如果我當下否定了,應該直接變成red flag了。

3. Time Kills all the Deals

  • 這句話是在Insight Data Science的HR看了許多失敗例子給的忠告,他以前也是別的公司的HR。不要拖公司招聘的timeline,能快就快,面試中小型公司的時候往往只是面一個team的一個position,有些公司會希望把onsite都集中在一個時間然後決定先給誰offer,三月透過Insight面試了兩家兩三百人的公司就是因為拖太慢導致還沒onsite他們就找到人了。大公司general hiring相對來說比較沒有timeline的壓力。
  • 通常面試完如果是positive在三天內就會有結果。在Insight常有多個找工作的fellow一起面同一個職位的狀況,所以有機會觀察到。面試完如果公司都沒有回覆通常代表結果不是positive或者你的表現並不是排在他們的第一順位。

--

--