这三个Offer,你怎么选?
前幾天,有讀者給我發信息,讓我幫他看一下offer的選擇:
字節、騰訊天美、阿里云,隨便一個都是羨煞旁人的offer,這家伙一下拿了三個,我都開始酸了起來。
于是我讓他總結一下面試過程中考察的知識點,給大家分享一下,這不秋招快到了,給大家復習提供一些參考。這里非常感謝這位反斜杠號同學(沒錯,他的微信名就是反斜杠號\)的分享。
面試經歷
拿到offer:
字節跳動今日頭條后端
騰訊天美服務器后臺開發
阿里阿里云C++研發
Momenta Deep Learning
大疆自動駕駛 測試開發
被調劑:
微軟蘇州SDE
掛掉:
網易雷火筆試
知識點總結
計算機網絡
TCP相較于UDP的優點,為什么有這些優點
設計一個FPS游戲聯網服務器架構(分布式,同步方式,包的選擇傳輸,主從模式容災)
TCP頭部組成,分別是干什么的
HTTP1.0、2.0、3.0的區別是什么
HTTP和HTTPS的區別
HTTPS的加密過程
操作系統
操作系統一頁的大小是多少
為什么一頁的大小是這么多
類似內存頁大小這些計算機中的常量,設計的時候考慮哪些因素
進程間通信方式,詳細介紹一下
對linux有多了解
C++
虛函數的實現方式
static關鍵字的多種用法
智能指針的了解和實現(boost或者C++標準庫,我答的C11標準庫)
多線程庫
STL底層實現
map為什么用紅黑樹不是B+樹
constructor和destructor是否使用virtual,為什么
四大cast轉換
struct和class的區別
C++的編譯鏈接過程和實現原理
inline function
inline和define的比較
函數默認值的實現
Name Mangling
數據庫
MySQL為什么用B+樹做索引而不是紅黑樹
MySQL的引擎,為什么要有這兩種,主要有什么區別
索引的實現原理
事務ACID和隔離等級
算法與數據結構
(可能是因為我是搞ACM的,問的不是特別多
大部分是思維題,難度不高,涉及到幾個很基礎的二叉樹
設計redo/undo功能使用什么數據結構
LIS,普通三維dp等基礎的dp
基礎圖論算法,最短路和最小生成樹
項目經驗
大一寫的一個Unity3D的FPS游戲
一個CV+AI的項目
聊幾句
總的看來,在校園招聘中,各個大廠都是非常看重大家的基礎知識掌握情況的。
像計網、操作系統、數據結構與算法、數據庫,這都是必考的東西,這幾門課程建議要全面復習一遍。
除此之外,不同語言方向的同學,對各自所學的語言方面的知識點也要進行全面的梳理,像文中的同學是C++方向的,對C++方面的基礎細節考察的還是非常細的。
很多同學戲稱面試題是背誦八股文,不過我不建議大家像高中那樣死記硬背這些知識點,我的建議是多動手,因為我的經驗是只有自己動手去驗證過的知識點,自己在面試遇到的時候就會立刻想起來,回答的時候有理有據,更加自信!
像計算機網絡方面的知識點,就多抓包分析,在抓包軟件下面學習數據包,理解協議的交互流程比看書更深刻有效。
像操作系統、C++相關的知識點,就寫一些代碼去驗證,什么虛函數實現原理,inline函數原理,寫個代碼在調試器下看一下就知道了,這些都是不用去死記硬背的東西。
像算法與數據結構相關的知識點,就多刷一些題,比如牛客網、LeetCode都去刷一刷,刷的多了就摸準了套路,一看到題目就知道要考察什么了,專業面試的時候感覺自然就來了。
除了復習和刷題,還有個很重要的環節就是去看面經,多看看別人的經驗,查漏補缺,看得多了,心里也就不虛了。
復習+編程+刷題+刷面經=Offer
最后問一句,這位同學遇到的題目,你能答出百分之多少?
總結
以上是生活随笔為你收集整理的这三个Offer,你怎么选?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Unity渲染管线详解
- 下一篇: 面试官问:malloc(0)时程序会返回