HR 作業 & 測驗
● 在官網投遞後,會收到 mail,首先要完成一份作業
・email 裡有附上一個 Notio
n,有寫公司想找的人的特質,和公司文化
・作業問題有 2 個:
- 為什麼想加入 AmazingTalker?
- 您的職涯目標和人生目標是什麼?為什麼定這些目標?
● 作業送出後,會收到一個 SEO 測驗。這個測驗裡會提供 SEO 相關的知識,也可以自己上網查。然後要你在 30 分鐘內,吸收了解 SEO 的知識,並完成測驗(但這 30 分鐘感覺也沒計時)
・聽說不管面 AmazingTalker 的任何職位,現在都要做這測驗,目的是想要測試這個人聰不聰明。網路上查蠻多人在抱怨這個測驗,挺妙的
技術作業
● 如果 SEO 測驗通過,會寄來一份技術作業。總共有 4 題,90 分鐘內完成,寫完把程式碼打包,填表單送出。雖然說 90 分鐘但也完全沒有計時,不知道為什麼要這樣寫,我沒管時間儘量把答案寫到最好。題目分別為:
・解 Fixed Point 程式題,在 leetcode premium 裡面有
・解 Two Sum Less Than K 程式題,在 leetcode premium 裡面有,但稍微不同
・Unit test 相關題目
・重構相關題目
一面
▌面試過程
● 技術作業寄出後,先收到了 HR 面試邀約,mail 裡又提供了一次公司文化的 notion,並說會就這些內容進行討論
● 沒有請我自我介紹,一開始先問我有做什麼專案的經驗?我回答交易比賽風控的服務,接著不斷追問:
・當初做這個專案時,有設定什麼目標嗎
・如果只能改進一個功能,你會選擇什麼功能?為什麼?那為什麼不在做的時候就改?
● 軟體工程師有這麼多領域,為什麼會選後端?
● 為什麼想要投遞 AmazingTalker 的職缺
● 中間先讓我問問題
● 問我一個情境題:公司原先老師和學生教學的視訊工具是用 Zoom,但用 Zoom 無法收集使用者資料,也不能開發客製化的功能,所以想要開發一個視訊平台。你會怎麼規劃這件事情?
・你要怎麼確保這個視訊平台開發出來,是真的有成效的?
● 接著講一些公司的狀況,問我能不能接受:
・公司是新創,組織架構很扁平,都能直接跟 C-level 的主管互動到。有時候自己提的一些想法或方案不一定能被接受,有可能會直接說不行,你可以接受嗎?
・公司是新創,變動速度很快,有時候手上正在做的案子可能突然會先暫停,插入其他的案子先做,你可以接受嗎?
● 最後有講一些 notion 裡的公司文化的東西,跟我分享
● 5 天內會通知我有沒有下一面,如果 5 天內沒通知可能是漏了,可以寄信去問他們
▌其他補充
● 最擔心的就是這關 HR 面試。得到的情報是會問很多抽象、很難回答的問題,然後不斷追問,蠻會刁難人。有被提醒說公司文化一定要熟讀,回答要儘量引用公司文化的內容,展現積極且接受度高的態度
● HR 面試沒有預期中刁難自己,但確實要把公司文化讀熟,比較好回答
二面
▌面試過程
● 這關是和技術長面試,主要針對作業內容做討論。作業內容寫得好,沒有太多要討論的話,才會有 live coding 題目和其他問題
● 技術長請我開之前寫的技術作業,分享畫面,先就作業內容進行討論:
・問我作業第二題 Two Sum Less Than K 的解法思路是什麼?
・假如第二題的需求變成取 3 個數字加總,你會怎麼調整做法,時間複雜度會是多少?
● 接著貼給我 leetcode 的 56. Merge Intervals 的連結,難度 medium,我直接在上面做題,最後沒有真的跑程式碼,程式碼他滿意了之後就結束這題
● 再回到作業,請我分享作業第 4 題的畫面,針對重構的部分進行討論:
・可能是想要問我軟體架構的部分,但我沒聽清楚問題。後來直接問我 MVC 是什麼?
・如果現在想要把 cache 的 function 抽出來,讓不只取得老師的 API 可以使用,之後取得學生或課堂的 API 也能使用,我會怎麼設計這個 function?
・如果想要把取得 cache 和寫入 cache 的功能合併成一個 function,我會怎麼設計?
→ 這邊跟技術長確認需求,討論了一下,可能一直沒有講到技術長想講的點。他最後說可以寫一個 GetOrSetCache 的 function,然後把從 DB 取資料的操作當作 call back function 傳進 GetOrSetCache 這個 function 裡,這樣可以把從 DB 讀資料的 function 繼續留在原本的地方。
● 接著請我自我介紹,講一下我的經驗,針對經驗問問題:
・我有提到交易比賽的風控服務,問我這個專案規劃和進行的流程長什麼樣子?合作的情況?有沒有遇到什麼問題?如何解決?
・我平常是怎麼學習技術的?
● 最後讓我問問題,結束前有給我一些蠻正面的回饋
面試建議
整體而言,單純技術面試的部分沒有特別難,反而是技術面試以外的東西不確定性比較高,比較難準備。公司的優點為工程師工時非常彈性、可以遠距、假給的蠻多,就工程師而言工作不會到很累。但缺點很明顯,如果不積極要求想做一些專案,可能學到的東西有限;以及公司管理和決策非常混亂,基本上是以老闆為中心在運作,朝令夕改的狀況很常見,進來要有心理準備。建議先去打聽清楚公司現況,思考這是不是自己要的環境