talent program CMS部門
這是為了培養新人的program, 專收5年以下經驗的
面試接觸到的部門
前三面: Core Team: CMS, 其他還有vip等等也在core team...
四面: 人資
五面: AI Compliance
六面: KYC
一面(中國人):
1. 瀏覽器緩存原理, 解釋強緩存跟緩存協商
2. ssr與csr差異
3. 你會怎麼設計一個下拉選單
4. 下拉選單選項欄位的座標, 怎麼確保跟標題對齊
-> getclientrect
5. 如果使用者快速滾動整個頁面, 滾動到下拉選單時造成lag, 怎麼解決?
(應該是要問打開選單 而選項欄位太多 要怎麼優化
->debounce
6. 問了一些css position的基本觀念
手寫題一題
1.一個array裡面放3個promise, 設計一個function, 讓這3個promise間隔wait秒數依序執行.
->用recursive, 或者for loop都行
30分鐘結束, 面試官人不錯, 蠻尊重面試者, 但感覺他很累
二面(中國人) cms小老闆:
1. ssr與csr
2.有一個call api的custom hook, 在兩個地方使用, 怎麼避免重複的api被call兩次
->我回答用ref或一個變數去判斷
3. node.js是單線程, 如果其中一個服務掛掉, 怎麼解決?
-> pm2
4. node.js的機制, 問洋蔥模型如A(B(C()))怎麼做出來的?
-> next function
5. 問webpack但我不會
6. 解釋debounce, throttle
7. 你用過什麼react hooks?
-> 所有的都講出來後, 根據你講的問他們的功用
8. promise常用的方法有哪些?
->我回答promise.all, .race...等, 但他說要回.then.catch.finally
接下來手寫三題
1. Promise.all
2. debounce
3. 用typescript實作一個react component, 功能是input element的debounce
-> 重點是要用useMemo或useCallback把 debounce function包起來
首先面試官遲到15-20分鐘, 手寫題會邊寫邊一直噴人, 沒有討論的機會,
我: "我想先確認, 我的想法是......, 想詢問是否這個思路值得進行下去"
面試官很兇地回: "問你自己啊, 幹嘛問我? 這不是很簡單的題目嗎?"
我就直接實作, 當然中間有些小錯誤
面試官:"你這全都寫錯了阿, 不要亂寫好不好? 你這樣亂寫有意義嗎?"
總之感受超級不好, 背景還有他小孩在哭鬧的聲音
你在回答問題時, 他還會邊哄小孩邊跟你面試
三面(中國人) core team大老闆:
1.為什麼要來binance
2.個人經歷
3.履歷上個人專案內容
4.怎麼判斷一個linked list裡面有環? two pointers
5.怎麼實作LRU Cache? DDL + map
6. 走迷宮的題目要用哪種算法? BFS
7. cors csp的問題, 忘了怎麼問的了
8. 有人模仿了一個跟你完全一樣的網頁, 最後付錢頁面是付到他自己的服務, 怎麼解決?
9. 有人把你的img.src改成惡意網址, 怎麼解決?
10. 你設計了一個檔案上傳頁面, 很多客戶在用但他們檔案太大, 造成伺服器lag, 怎解決?
-> 我先回答把檔案壓縮, 分成chunk上傳
11. 不能壓縮的情況呢?
-> 沒答出來, 面試官說用一個proxy server來處理
12. 有沒有ai協作經驗?
13. 有一個表單頁面, 你會如何與ai協作並做出來?
-> 偏向系統設計, 要先釐清有什麼功能
14. 有人在他的網站一直call你的api, 要用什麼防範?
16. 講解部門運作方式, 遠端工作要注意什麼等等
面試官人不錯, 是個講理之人, 但他問了一個蠻厲害的問題
"你同事都是噴子, 假如你被噴爆, 你有辦法承受的了嗎?"
"會這樣問是因為我們這邊的人講話都很直接的"
恩...經過二面當然了解
Core team幾乎都是中國人, 大部分在杜拜少數新加坡, 有台灣人
CMS是做內部系統, 工作loading應該普通不是血汗單位
四面人資(中國人):
用google meet約談薪水時間
但當天直接被放鳥,之後他自己加我微信談薪水, 講解福利,
聊天居多, 他不不錯
常常被他忽悠但他都可以靠話術讓你沒這麼不爽
五面(中國人) ai部門: (流程相當於二面)
可以用中文或英文面試
1. 問你經歷以及履歷上寫的內容
2. 我有寫到CI/CD以及測試經驗, 他對這個感興趣有往下問
3. 有沒有ai使用的經驗
4. 之後忘了問什麼了...反正偏聊天跟討論居多
手寫題兩題:
1. 給兩個object, output出他們不一樣的地方
如: obj1 = { a:1 } obj2 = { a:1, b:2}
output: {b: 2}
他給的範例有很多層nested object或array在裡面
-> 先確認是不是obj內只有primitive, array, object等數值, 沒有日期,set, map等其他
用recursive做, 如dfs(value1, value2)
先用object.is比較primitive, 如果一樣就reutrn
接下來判斷是否兩個數值都是array或都是object, 都不是就return 因為沒法比較
如果是其中一種情況, 就recursive繼續跑
2. 他打開一個表單填寫頁面, 有很多不同格式資料要填寫, 請定義component props的type.
不會很難, 而且也可以跟他討論
-> 重點是要把這些欄位都generalize, 用union type來做
這部門的人都在歐美, 大部分在溫哥華
面試就是歐美常見的模式
偏向引導、交流式討論, 最後解出答案, 不是中國那種快問快答不準討論還會噴人的方式
整體感受非常好, 唯一缺點是成員遍布全球, 各個時區都有, 開會時間會很硬
工作loading應該普通
六面(越南人) kyc老闆: (流程相當於三面)
唯一一場英文面試
簡單聊一下背景
直接手寫題三題
下面是原封不動的題目
1. 這個output順序會是怎樣?
function App() {
const [count, setCount] = useState(1)
console.log(1)
useEffect(() => {
console.log(2)
return () => {
console.log(3)
}
}, [count])
useEffect(() => {
console.log(4)
setCount(count => count + 1)
}, [])
return <Child count={count} />
}
function Child({ count }) {
useEffect(() => {
console.log(5)
return () => {
console.log(6)
}
}, [count]);
return null;
};
2.做一個custom hook只會render一次
function useIsFirstRender()
->我是用ref做
3. 這個output順序會是怎樣?
function App() {
const [state, setState] = useState(0)
const onClick = () => {
console.log('handler')
flushSync(() => {
setState(state => state + 1)
})
console.log('handler ' + state)
}
console.log('render ' + state)
return <div>
<button onClick={onClick}>click me</button>
</div>
}
中間過程每做一步, 面試官都會問為什麼要這樣做
包含用到了某個hook, 也會順便問這個hook的作用
最後這一面只能說我react觀念沒建立好, 所以後來沒上
主管人不錯, 即使我沒答好也會帶我一步步了解為什麼會這樣
而不是嗆人或者直接結束面試
這個部門的人程度都在mid-senior
工作loading非常大, 步調很快, 主管表示應該沒空帶junior
可能20個features兩個禮拜內要做完
或是某國法規改了, 兩個禮拜內要把更改的功能上線
面試建議
面試根據年資會問不同程度的問題
我年資只有1.5年,
有些東西沒實際碰過 如webpack或nodejs等, 他們就不會多追問
5年年資, 通常概率面20個只會錄取1個
面試自己要準備ide, 我是開codesandbox
只有ai部門有給我他們的環境
至於為何poential offer被取消
是因團隊還是想要找資深的
不知為何一開始不講, 浪費彼此超多時間
等待紙本offer時人資一直表明他們會錄用, 只是有上層請假, offer還在簽核中
過一週打來說不錄用, 詢問要不要面ai部門
面完後表明ai部門hc只有一個, 也只要資深的, 轉面kyc(那幹嘛面?
面完kyc, 雖說自己也沒答好, 但最後得知他們hc也只有一個, 感覺也是要找資深
總之陸資公司跑面試流程, 薪水流程, 談福利, 過程都很玄, 會被各種忽悠
每一刻都有變數
薪資:
底薪*12 + 0~6個月個人績效獎金
底薪只會根據你前一份+10%~20%, 其實不怎麼樣
獎金拿0個月通常會被資遣
1~3個月最多人拿
前10%績效拿4~6個月(忘了是不是這樣)
拿compete offer去談 他們還會開的比較低
例如compete offer年薪N, 他們會開N*0.8~0.9
並用"因為有很高的績效獎金" 來畫餅給你吃
這是陸資常有型態, 有聽過後來把KPI定很高讓你獎金拿0的(別間陸資
建議跟陸資談薪水 一定要把底薪談高
如果可以也不要透漏現職薪資, 直接拿compete offer去談
福利:
如果你成功拿到offer,
恭喜你!! 試用期6個月
也就是6個月後你才有特休
特休 - 第一年10, 第二年11, 第三年12, 之後不會再上升
國定假日照台灣, 基本上全年無休, 有事就要回
病假30天
商業保險
通勤補貼 2150台幣/月
健身補助- 會看你有沒有真的去
學習補助報帳
辦公設備報帳 - 電腦公司配
遠端工作-
一年一定要在台灣待6個月, 如果去國外, 同一個地方只能最多待3個月
我的5位面試官都沒有人在遊牧, 只有人資在游牧
不定期裁員, 但人資表示2023裁完後, 現在不會大規模裁員了
以這種面試強度, 薪資福利真的不怎麼樣,
優點:
1. 遠端工作
2. 公司招牌響亮, 對下一份履歷有幫助
3. 同事強
缺點:
1.裁員風險
2.同事可能有g8人
3.工作可能很操, 無時無刻on call
4.遠端工作沒加班費
5.失去在工作中大量建立人脈的機會
建議可以考慮一下是不是真的想進去