題圖:pixabay前端
轉服務端一年半有餘。主技術棧爲golang,不知道本身技術水平在什麼階段,以前沒有服務端的面試經驗,正好有小夥伴講說幫我內推試試。選了4家公司,某條、某手、一家C輪小廠、一家D輪小廠。java
某條:
一面:mysql
- 本身負責的項目、爲何那麼作、技術選型有哪些取捨
- golang基礎、Map原理、調度原理
- https通訊原理、mq
- mysql索引、事務、幻讀、MVCC
- 手寫兩道easy算法題
第一次服務端面試,算是摸摸套路。自我感受答得還行,不過仍是一輪遊。過後託朋友問面試評價:golang
某手(java崗):
一面:面試
- 手寫算法最長迴文子串
- 負責的項目
- 設計一個網絡客戶端
- 沒了
這個掛得有點尷尬。答得很差,有點沒搞清楚面試官的問題重點。redis
某C輪:
一面:算法
- 負責的項目
- golang基礎、Map原理、調度原理、Echo框架一些細節
- redis持久化、分佈式鎖
- mysql索引、redo log/binlog、mysql事務一致性
- 手寫一道easy算法題
二面:sql
- 負責的項目
- 系統設計《短視頻app、點贊功能熱度排名啥的》
- mysql持久化
- redis sorted set
- 分兩塊內存,適當冗餘
三面:數據庫
- 負責的項目
- 遇到的難點
- 爲何不用redis作mq?考察點:redis架構
某條掛了後惡補了mysql。數據庫這塊答得還行(學文科的背了再說)。二面在面試官引導下 基本答到面試官考察的點子上。一二面聊的比較愉快。負責的項目被三面面試官懟得一文不值,沒有技術難度。整體還好。次日來電hr面。網絡
某D輪:
一面:
- golang基礎
- mysql索引、間隙鎖
- redis持久化、應用場景
- 線上大量time wait怎麼解決?
二面:
- https通訊原理
- redis string底層實現
- go爲何快?go垃圾回收、go逃逸分析、
- mq重複消費怎麼作?怎麼儘量保證不丟消息?
- 一道easy算法題及其變種,分析複雜度。
三面:
- 負責的項目
- 前端負責的項目、作了哪些架構優化、...
- 前端知識
感受一面面試官不太專業。二面面試官挺好,會有一種一塊兒探討的感受。三面面試官說服務端的東西前兩面都面過了,純聊前端的東西。讓我把兩年前的項目拿出來講,忘得都差很少了。完事兒 當天晚上hr面。
總結:
- 拿到了後兩家的offer。其中一家漲幅超30%了。最後考慮了下,兩家都拒了。
- 不應第一次面試就拿某條試手。當時是想着先小公司面幾個再去試試的。不趕趟兒
- 基礎不夠紮實。系統架構設計能力偏弱
- 成套的技術體系不夠成熟
題外話:
今天看了公司11級大佬們主講的 【工程序列職級解讀】。。P7/ P8技術型工程師職級標準,包括專業能力、業務能力、軟素質、負責方向上的規劃和思考等等。審視本身,還有不少要學習和改進的地方。
新里程,新開始。