面試技巧及心得,如何有條理的說服面試官?
最近在幫一個朋友練習面試,同時也剛好有讀者來信詢問面試技巧。其實我的資歷也不是特別突出,或者應該說我過往的經歷其實蠻弱的。2012 年畢業後找環境工程相關的工作,投了800多份以上的工作機會,最後只拿到3個 intern 的工作。2015 年來加州參加 Hack Reactor (經歷請參考前篇 Coding bootcamp 程式語言密集班- 從不會寫程式到3個月被矽谷科技公司雇用的終南捷徑?) 結束後,我投了近180份工作,有被 HR 聯絡的只有63個(35%),進到第二關電話技術面試38個(60%),11家公司邀請我到 onsite (29%),最後有3個 offer ,offer/總申請的工作比例只有很可憐的 1.6%。在矽谷工作一年半後,2016年底因為在上班沒有太多時間面試,所以只試了5家,每家都有進到第二關電話技術面試,3家邀請我 on-site interview,最後有2個 offer ,和前兩次相比是進步滿多的,但相比我有認識的強者朋友一次拿到5~10個 offer,一畝三分地上一些牛人一次拿到矽谷各大科技公司 offer ,我的經驗不算是特別厲害。可能也因為我不那麼順利的一些經驗,讓我有更多體悟的寶貴機會。
如果你對找工作系列有興趣的話,可以參考我之前的系列文章:
1. 程式語言- 到底學哪個好?我想進Google,我沒學OOO,他們會接受我XXX語言背景嘛?
2. 簡介美國軟體工程師面試流程
3. 等待機緣- 我要如何被人資或獵人頭發現? 我要如何脫穎而出? LinkedIn重要嘛?
4. 主動出擊- 我要找工作了,現在美國都用什麼找工作?哪個網站平台能讓我有較多面試機會?
5. 軟體工程師面試準備- 面試要練習什麼? 找工作和練習的時間要如何平衡拿捏?
6. 被錄取了- 我該注意什麼,我可以談判要求多一點薪水、股票或假期嘛?
7. 我還有問題!矽谷找工作之常見問題 FAQ
我在2015年瘋狂面試的時候,有時候一天最多會有5個電話面試, 一些是 HR第一關電話面試,有些是技術電話面試,要用 CoderPad 之類的網站來寫 code。一開始的很長一段時間我大部分的結果都是被拒絕。為此我找了一些朋友來幫我檢視我的面試技巧,而在 SolarCity 及 Facebook 也有一些面試別人的經驗,反思總結後一些心得分享給大家。
1. 英文表達: 所有的面試一定會請你自我介紹,這是一個暖身,讓你講你自己的經驗及故事,進而平靜下來回答好接下來的其他問題。這題是個送分題,一定要好好準備。我提到英文表達是說你不需要很難的英文能力,只要能讓面試的人了解就好。我一開始常常緊張會講話不自覺的變快或是字都糊在一起,我後來做了一個大字牌寫 “Slow down!”,在電話面試時放在前方提醒自己每個問題要慢慢清楚的表達,不要緊張搶快。
2. 自信,並且不要刻意提半路出家: 我在一開始會提到我半路出家。在拿到許多 rejection 後,一個朋友建議我不需要刻意提我半路出家的事實。 你不會聽到牙醫師說他是半路出家才學牙醫的,就算有,也可以從履歷上看出來。在面試過程中,我應該要表現出 what I can offer/bring to the team/company 。因為我的能力比我的出生背景重要,有自信的展現出我的能力,並且實際上從回答內容展現出來。
3. 溝通步調,先簡答,再依情況詳答: 每個問題面試官都有預期大概的步調,有些問題面試官希望簡答就好,有些則是想多了解細節。我在當面試官的時候發現有些候選人在一些小問題上花了很久的時間講細節並舉例,因此壓縮了他更重要 coding challenge 的時間。 我覺得好的作法是對問題先有個簡單的回答,並且表達如果面試官有興趣可以再說明多一點細節,讓面試官依時間上及面試步調決定是否要聽細節,你也不會因此損失寶貴的時間回答更重要的問題。
4. 展現對任何變化有彈性的心裏素質: 有些時候面試會遇到特別艱難的題目,這時候其實不要驚慌,許多面試官其實會想觀察你是如何面對高壓及不確定的難題,如果你可以有邏輯的分析問題,並且開始慢慢的提出想法,構思解法,很多時候其實就可以達到面試官的要求,而不是說一定要有完美的答案才可以過關。
5. 準備最大一兩項你過往的最大成就: 許多面試的問題其實都可以帶到在你過往的成就上。面試常常會問到:你工作遇過什麼難題,你喜歡什麼工作,你覺得你的優缺點是什麼,你有過什麼類似的經驗嗎?舉例來說:如果被問到你遇到過什麼難題, 你可能會說,我參與一個跨部門的大型合作計畫,一開始因為不同部門的時程及目標不一致,讓計畫進度緩慢,而我為此和不同部門的領導持續溝通,並且幫忙制定可順利執行的方案,讓不同部門的人全部 onboard,最後讓計畫順利在時限內完成,並且帶給公司500萬元的新收入等等。用佐證及數字說明你的成就,進而用這個例子來回答一些難題。
6. 白板面試 coding challenge: 聽到面試官說完題目之後,先確定input與output,不要馬上說怎麼做,也不要寫程式。input與output必須非常明確,不要幾句話帶過去,在白板上寫出來,並和面試官溝通確認是否正確。 確認完後可以先把你的解題思路講出來,並且溝通後再開始寫解法。 而開始寫程式之後,要不時的和面試官溝通,為什麼你這樣寫,如果是第一個初步解法,可能寫完後可以 optimized也要提出, 面試其實是一個看你技術上是否合格,同時也看你是不是個能和 team member 溝通的 team player。我看過好幾個面試開始就埋頭寫程式,都不太溝通,有一些錯誤也都因為沒有溝通,在解題時沒被發現,最後也因此沒過關。
以上6點是我過往經驗的心得總結,你覺得面試中還有什麼部分你會想了解呢? 歡迎留言或回信和我討論。
6月份是「同志驕傲月」(Gay Pride Month),我認識前Facebook員工的台灣人強者大神在 Grindr (全球LGBTQ市場移動社交服務平臺)是技術骨幹, 而他們要在台灣成立辦公室了(FB 消息)。目前Grindr在全球近200個國家和地區擁有近4000萬註冊使用者和超過380萬日活使用者, 公司月銷售額超過1000萬美元。 預計2019年將成為全球第一個在美國上市的LGBTQ社交服務平臺。他們在台灣預計要招高级運維工程師 、高级Java工程師、資深android工程師、資深iOS工程師,如果你因為一些原因想出國工作而還沒實現,我覺得這是個很好的經驗體驗美式公司文化及做事方法,當然還有就是搭上起飛的火箭體驗和公司一起成長及拿到很有競爭力的薪水(年薪150萬 - 300萬,如果你超強,往上還有空間)。 For disclosure,我幫忙宣傳並沒有得到任何好處,今天看到這個消息想要分享給半路出家部落格的讀者們及幫朋友宣傳好機會。詳情請看這裡的 Grindr台灣徵才頁。
另外最近有讀者詢問贊助打賞的事,所以我設立了我的 Patreon贊助頁,如果你覺得我的文章讓你有所學習成長,歡迎你打賞鼓勵我,贊助我買好書,讓我思維精進,寫更多更好的文章分享給你。
https://brianhsublog.blogspot.com/2018/06/blog-post.html
同時也有1部Youtube影片,追蹤數超過3萬的網紅趣脆學,也在其Youtube影片中提到,你的小朋友喜歡各類的汽車、交通工具- 「車車」嗎?他們能分辨出不同工程作業車的外形,名稱嗎? 在這段學習影片,我們會展示各種的不同工程作業車模型, 讀出它們的英文和中文名稱,以及配上汽車的聲音。 所以你的小朋友看完影片後,便可以分辨出不同交通工具的外表,英文和中文名稱。 這影片包括以下交通工具︰...
google site是什麼 在 半路出家軟體工程師在矽谷 Facebook 八卦
最近是畢業季,你和許多畢業生一樣在找美國軟體工程師工作嗎?你了解美國軟體工程師的面試流程嗎?請看本篇介紹,祝福大家都找到理想工作。
簡介美國軟體工程師面試流程
https://brianhsublog.blogspot.com/2015/08/blog-post_9.html
美國的面試流程一般來說,你準備好你的履歷 (resume) 及求職信 (cover letter) 後,你就可能會用各種管道申請工作(履歷、求職信及找工作會在下篇多做介紹─主動出擊,我要找工作了,現在美國用什麼找工作?哪個平台能讓我有較多面試機會?)我的經驗中軟體工程師的面試流程大致如下:
1. 你的履歷通過公司/平台/人資的軟體篩選,被仔細看過(從我美國人資朋友描述,一篇履歷他們不會花超過30秒,所以履歷的內容及排版十分重要!)並決定和你聯絡邀請你進入面試流程。
2. 第一關電話面試:人資和你約好時間打給你,大概15~30分鐘的這關主要重點有幾個,一是他們想確定你會說英文,可以溝通。二是他們會問你技術背景,別小看現在科技公司的人資,他們對很多科技及語言也都是有簡單涉獵的,他們可能也會考你一些簡單的語言問題。三可能是最重要的,想問你有沒有需要工作簽證。有鑑於美國現在經濟榮景,每年四月的工作簽證 H1B抽中率大概只有3成,今年一週申請人數就爆滿,所以如果你是現在八月要申請Google,他們最快只能幫你辦明年的四月的工作簽證了!四是詢問為什麼你有興趣到這家公司工作,想要確認你認同公司產品及文化。五是詢問你擅長或是偏好的語言是什麼(詳情可見前篇),他們會安排會這領域的工程師幫你面試下一關。
3. 如果通過第一關人資電話面試,人資會和你約第二關電話技術面試,時間可能是45~60分鐘,很多公司會用 collabedit 或 coderpad 這類線上協做的 code editor 來給你面試,Google 很有趣,是用 Google Doc 來考你,我想這樣是可以避免有任何程式語言上 syntax highlight的輔助功能幫忙你,你就只能多注意細節別寫錯字了。這關工程師打給你後會大概介紹一下公司,稍微了解一下你做過的 projects,就考你問題了。這類問題很多時候都是演算法及資料結構方面的問題,可以參考後篇的準備方法(軟體工程師面試準備- 面試要練習什麼? 找工作和練習的時間要如何平衡拿捏?)。
4. 每家公司情況不同,有時候公司會有第二輪電話技術面試,或者是寄給你 coding challenge (技術難題挑戰),要你限時內完成寄回去。
5. 如果通過電話技術面試,公司的人資會邀請你去公司實地面試 (on-site interview),時間從2個小時到8個小時都有可能,做好預留一整天的準備。一整天的面試可能是45分鐘或60分鐘一關,每關每個工程師都會問你一道問題,通常8成時間他們會希望你在白板上解答,關於白板面試應答技巧,我的英文部落格有專篇。有少部分時間他們會要你上機直接做題,看你的實際 coding 習慣及風格。
6. 完成實地面試後,就等公司人資給你消息了,新創公司通常蠻快就會有結果,我 Uber 實地面試後,隔天下午人資就告訴我結果了!大公司像 Google 會比較慢一些,和你的人資確認一般等待時間定期追蹤進度吧!
7. 通過實地面試後,如果有幸公司要給你工作了,人資通常會先打電話告訴你消息,和你確認你手邊正在面試的其他公司及你的預計上班行程規劃,就會發正式的 offer (工作合約)給你了。在美國,公司預期你會 negotiate (談判),你合約中任何有問題或想改變的都可以談,詳情請見後篇─被錄取了- 我該注意什麼,我可以談判要求多一點薪水、股票或假期嘛?
從我的 Blog 閱讀更多
google site是什麼 在 紀老師程式教學網 Facebook 八卦
新一代網站伺服器架構:MEAN
(加贈 MEAN 免費電子書)
最近國外科技網站頻頻出現一個新名詞:「MEAN」。而且該名詞只會出現與「網站開發(Web Site Development)」相關的論壇。看著大家「卑鄙」來「卑鄙」去的(Mean 在英文是「卑鄙、小氣」的意思),彷彿這個名詞技客(Geeker)們都已經熟到不用解釋到底在卑鄙個什麼。擁有嚴重資訊焦慮症(笑)的我,眼睛怎能容忍一個不知道全名的縮寫,動不動就從畫面「立體突出」來恥笑我呢!... :-D 稍微用點技巧查了 Google,並且把結果分享給大家。
原來 MEAN 講的是架設網站時,所使用的四套軟體:MongoDB、Express、AngularJS、Node.js。早個十年,那時開發網站流行使用 LAMP (Linux, Apache, MySQL, PHP) 這四套軟體。近年來,由於「大數據(Big Data)」、「分散式架構(Distributed Architecture)」、「非同步函數呼叫(Asynchronous Calls)」流行,傳統的 LAMP 已經無法應付上述三個需求,因此,網站開發環境就從「檯燈(LAMP)」換成「卑鄙(MEAN)」了... :-D 。皆下來我就一一介紹「卑鄙會的會員們」有哪些特色。
MongoDB 是一款以「檔案」做為儲存媒介的資料庫(Database)。有別於用傳統資料庫伺服器儲存資料、得把資料集中在後端單一機器上,使用檔案來存資料,不必硬是把資料集中在後台的一部機器上。你可以把一筆資料「碎屍萬段」,人名與電話的基本資料放在一台機器內的檔案,學經歷資料放在另一台機器內的檔案,達到「分散儲存,平行存取」的效果。這類用檔案做為儲存媒介的資料庫,我們通常稱為 NoSQL Database。近來 Facebook、Google...等網站,都積極使用 NoSQL Database 來做為後端儲存媒介。不但能「分散儲存」資料來預防一台機器掛點、整個網站就不能動的窘境,還能藉由「平行存取」位於數十台機器上分散儲存的資料,達到「秒取」所需的數據。關於 NoSQL 的介紹,可以看這篇「NoSQL 入門指引」: http://www.openfoundry.org/tw/news/9040
接下來我會介紹 Node.js,因為它比 Express 或 AngularJS 都來得基本。什麼是 Node.js 呢?簡單來說,就是執行於伺服器端的 JavaScript。拿 LAMP 時代的成員來比喻,Node.js 的地位就與 PHP 相同,只不過它採用 JavaScript 來當成語言而已。當然,Node.js 不是只有把 JavaScript 從客戶端搬到伺服端那麼簡單而已,還添加了不少功能。最著名的,當屬「非同步呼叫(Asynchronous Calls)」機制了。想瞭解「非同步呼叫」,得先瞭解什麼是「同步呼叫」。當主程式呼叫副程式時,在副程式還沒執行完前,主程式會「卡住」,等待副程式完成返回後,主程式才會繼續下一列程式碼的執行。這種函數呼叫方法稱為「同步呼叫」。但若副程式執行時間長,主程式在等待時就會因螢幕凍結、讓使用者體驗到類似「當掉」的情況。所以另外一種作法,就是主程式呼叫副程式、副程式開始運作後,主程式不等待副程式完成,逕行執行下一道指令。此時主副程式處於「平行運作」的狀況。等待副程式完成,就會「通知」主程式說:「我做完了」,主程式再予以反應即可。這種函數的呼叫方法,就稱為「非同步呼叫」。Node.js 並非三言兩語可以講完,有興趣的朋友,可以參考這本免費的 Node.js 電子書「Node 入門」: http://www.nodebeginner.org/index-zh-tw.html
再來是 AngularJS。它是 JavaScript 的「函式庫(Library)」,地位比較偏「前端」,負責 UI 的建置。如果說 JavaScript 是「無敵鐵金剛」,那 AngularJS 就類似「金剛飛翼」。與無敵鐵金剛結合後,就能讓本來不會飛的鐵金剛,遨翔在天際。AngularJS 有兩大特色:「單一網頁」與「MVC 模式」。「單一網頁」就類似你查詢「Google 圖片」時的感覺相同。網站一開始只提供一部份資料,隨著你往下捲,網站會動態載入剩下的部分。所有內容只要一直捲動,就會完整呈現,不必按「下一頁」,這就叫「單一網頁」。至於「MVC 模式」比較難懂,完全不瞭解它是什麼的版友,就等您實際研讀 AngularJS 再去學吧!Facebook 這邊實在不適合我長篇大論地講「何謂 MVC」。真的求知若渴的朋友,或可參考這篇「MVC 淺談」: http://luvit.me/1GzNxqN。最後,對 AngularJS 有興趣的朋友,可以參考這篇「我的前端 AngularJS 初體驗」: http://upvot.es/1C6W9qd
Express,一稱 ExpressJS,是一款 JavaScript 的「框架(Framework)」。所謂框架,就是協助你快一點寫出你想要的程式碼的工具。如果 JavaScript 是無敵鐵金剛,Express 就是幫忙你快速產生一架無敵鐵金剛的工具(以便讓你快去跟 AngularJS 這個金剛飛翼結合)。如果你是 PHP 的老手,我說 Express 就像是 PHP 內的 PEAR,不知道您是否能更有體會呢?關於 Express 的簡單介紹,中文的不多,不過我還是勉強找到這一篇 OK 的:「使用Node.js + Express建構一個簡單的微博網站」( http://upvot.es/1E4MGQT )。
不知這樣介紹,大家知道怎麼「卑鄙」(MEAN)地建構一個網站了嗎?最後送大家一本「卑鄙入門 XD」免費電子書。點擊後,找尋「eBook」這個關鍵字就能免費下載囉:
"MEAN Web Development", Packt Publishing, 2014
http://www.it-ebooks.info/book/4849/
期待大家也開始在網站開發這一塊,越來越「卑鄙」....
參考資料:
MongoDB(維基百科): http://zh.wikipedia.org/wiki/MongoDB
用 Express 和 MongoDB 寫一個 todo list: http://upvot.es/17ER5vU
AngularJS(維基百科): http://zh.wikipedia.org/wiki/AngularJS
使用 Node.js、Express、AngularJS 和 MongoDB 构建一个实时问卷调查应用程序: http://upvot.es/187BAwj
精通 MEAN: 当 MEAN 遇到 Meetup.com 和微数据: http://upvot.es/1E4Mili
google site是什麼 在 趣脆學 Youtube 的評價
你的小朋友喜歡各類的汽車、交通工具- 「車車」嗎?他們能分辨出不同工程作業車的外形,名稱嗎?
在這段學習影片,我們會展示各種的不同工程作業車模型, 讀出它們的英文和中文名稱,以及配上汽車的聲音。
所以你的小朋友看完影片後,便可以分辨出不同交通工具的外表,英文和中文名稱。
這影片包括以下交通工具︰
推土機,水泥車,吊機車,雙臂挖掘機,泥頭車,挖土機,叉車,前端裝載機,壓路機,掘進機
整段影片的教學過程有別於一般的「這是什麼」「那是什麼」的沉悶教學方法。我們把汽車擺放得就像小朋友平時玩玩具的時候一樣,
再加上特別汽車聲音,能夠有效引小朋友的注意力和集中力,從而很快便學懂了工程作業車的名稱。
不少家長告訴我們,他們的小朋友不單很喜歡看我們的影片,而且很快便學懂了不同工程作業車的名稱和讀音,這點我們是感到很鼓舞的!
我們希望你的小朋友能夠享受這段學習影片、學懂不同交通工具的名稱、就像我家的小朋友一樣!
Does your kid love construction vehicles? Do they know how to pronounce the different type of construction vehicles names and their major function in a construction site?
Let’s learn about construction vehicles and its function with Tomica and Siku toy cars.
In this video, we will show the real construction figure ( pics of cars ), pronounce the name and demonstrate how it works in a construction site.
The construction trucks list
Bulldozer, Roadheader,
double arm working machine, road roller, forklift, excavator, dump truck, crane truck, cement mixer, front loader
This video is also suitable for someone who want to learn Cantonese as second language.
如果你們想看我們更多的學習影片的話,請
-「訂閱」我們的youtube頻道
http://www.youtube.com/channel/UCdFdlixR5K4HiONkmcZs64w?sub_confirmation=1
-請「按讚」like 和 「分享」這段影片給你的朋友和其他小朋友、例如facebook, whatsapp, tweeter, google+....etc
學習動物名稱和聲音的播放清單:
https://www.youtube.com/playlist?list=PLwLmWfV_FjAkSD723YfwpUZDeU93I32nc
學習汔車和交通具的播放清單︰
https://www.youtube.com/playlist?list=PLDQjcD7DJPwkk7wqGzd0qV9XCc8PTndDM
學習水果和蔬菜的播放清單︰
https://www.youtube.com/playlist?list=PLDQjcD7DJPwkcfWoKnQXBvpvTriMF5L7i
學習數目字的播放清單:
https://www.youtube.com/playlist?list=PLDQjcD7DJPwk05uDW8MNPGdIrY8tHvNz5
學習顏色和其他的播放清單︰
https://www.youtube.com/playlist?list=PLwLmWfV_FjAlgH38aIiBz9qBkEqNxxtBB
