整體感悟
?目標
找工作首先要有一個目標,這個目標盡可能的明確,比如我要字節、拼多多之類的公司,還是要去百度、滴滴這樣的,或者目標是創業公司。但是這個目標是會動態調整的,有可能我們的心態發生了變化,一開始想去字節這樣的公司,但后來了解可能需要大量的加班+okr匯報,覺的不是自己想要的。 結合自己的實際情況定一個目標,然后朝著這個目標去做學習計劃、去面試。
當有一個目標時,可能學習的內容相對就能定下來。比如我這次想去的公司有兩種,一個是滴滴這樣的,去相對不卷的部門, 一種是大模型創業公司,感覺是風口。面對這個目標,我的算法可能就比較好固定,就刷hot100的簡單中等題,然后重點放在codetop第一二頁。八股文也相對范圍比較小,比如go的話,gmp、gc、channel、內存分配、slice、map等 mysql就是事務與鎖 再加上索引相關。redis就是底層數據結構,淘汰機制,持久化、集群方式再加上高并發常見緩存穿透、熱key等問題。kafka內容比較多,但是其實面試常考的內容感覺不是很多,尤其對于后端研發, 一般就考順序性、消息不丟失、消息堵塞, 一致性都比較少考,
面試總結
面試總結要抓重點, 我覺得可以三個方面, 通用八股文、針對自己的項目的提問、自己的表達。
通用八股文,每一次面試,要對面試做技術的總結, 面試是查漏補缺的過程,但是不要讓一次的面試就極大的改變學習計劃,有些面試官只是按照自己的想法或者自己會的內容進行考察, 有時候學習這些東西其實不具有性價比,比如有些面試官問tcp相關的滑動窗口、擁塞控制等概念,這些東西可能絕大部分公司都不問,問tcp也只是問一下tcp三次握手,四次揮手,再難一點最多問下timewait的存在原因,所以不要把自己的學習清單越列越長,最終沒法抓住重點。
針對自己項目的提問:
比如說 你項目中用了分布式鎖, 那分布式鎖你還了解哪些實現,當時為什么用這個來解決。你項目中的難點是什么,如何解決的, 項目中問過的問題,下一個面試官很可能還會問,如果提前利用deepseek等工具做了處理,那下一次問到類似的問題就像開卷考試
自己的表達:(這部分僅代表自己觀點)
面試其實一直是證明自己實力、表達自己能力的過程。一般面試有4個部分, 第一部分 自我介紹,第二部分項目介紹 + 八股文 第三部分 leetcode 第四面試官給予提問的機會。(有些面試官先問八股文、有些面試官不問八股文)
自我介紹方面, 這個部分要盡可能短的時間讓面試官抓到自己的優勢和 崗位的匹配對,提前對jd做個拆分 ,如果內推的話找同學了解下這個崗位要做的內容。 然后針對做一個自我介紹,時間要控制在1分鐘左右, 語氣要從容,盡可能發音要清楚, 內容的話介紹自己過去的工作經歷和一些成就,還有就是比如哪一方面自己有過深入研究,也可以直接說出來,有些面試官可能 愿意接你的招,直接順著你的自我介紹讓你開始介紹 項目或者自己深入研究的內容。 一個好的開始,很有可能就是這場面試的成功。
項目介紹方面:
這方面首先要對自己的項目了如指掌,盡可能就是真實的自己負責的,即使有些水分也要做到有深刻的理解。介紹項目時建議遵守小學寫作文的套路,總分總結構,一開始先計劃從哪些方面介紹下這個項目,并且提示面試官如果有問題可以隨時打斷,顯示自己對項目的掌握與自己的自信。在介紹的過程中每一個點舉一個比較詳細的例子,比如介紹我對某一個功能進行了性能的優化,我采用什么樣的手段,達到了什么樣的結果。最后在項目介紹完后,整體做一個收尾,可以說這個項目整體達到了什么效果,或者從這個項目中有了什么樣子的成長。
八股文:
八股文我理解有兩種,一種是直接可以說答案性, 比如innodb事務是如何實現的,原子性是如何實現的。這種更多就是看我們的記憶里還有對這些八股的理解了。但是現在更多考八股文是比較寬泛的,比如說 redis為什么快? kafka為什么吞吐量高? go在支持高高并發做了哪些事情。針對這種類型的問題 答案就不那么標準,或者說不要求全說出來,我們就可以盡可能地想一下 這個東西是什么,我們對應的八股文都背了哪些,為啥總考這些,很可能就是答案。比如redis為什么快,我們總說redis是基于內存的,這是快的原因,我們常考redis的底層數據結構,這些數據結構也是他快的原因。所以八股文盡可能多準備,但要靈活的應變。
Leetcode
這方面 ,如何能夠直接寫出來,就沒什么了,如果碰到自己有思路,但是寫不出來, 可以直接和面試官說自己的思路,說自己對此題的理解,如果面試官覺得不滿意,詢問是否可以換一題。
心態:
我這次面試心態經過了幾個歷程,首先覺得沒什么 ,不能踏實準備面試,一直刷boss直聘, 然后開始面試接收到一個個的負反饋 開始否定己,想著要不要降低標準,自己能力是不是不行。 這個階段是每個人走向不同薪資或者級別的分叉口。如果能夠在這個階段一直相信自己,對自己進行合理的學習計劃,可能找到一份比較好的滿意的工作,如果拿到負反饋就一直降低標準,或者給自己找各種退路,可能就找到一個相對不那么滿意的工作。
我是屬于降低自己標準,找退路那種, 但慶幸的是 家人給了我足夠的關懷給予我時間去充分準備工作,另外也在刷抖音時 刷到拉勾CEO的一段錄音,這段錄音介紹了一個大廠被裁員的朋友 ,幾個月沒找到工作就進了外包,后來經過他的勸學辭去了外包,又漲薪不少 去了另外一個大廠的故事。 通過這個故事,我覺得我還是要調整自己的心態,努力去向著理想的工作奮斗。
成長
向上的路是艱難的, 是需要我們有所付出的,同時我們也在成長。找工作是一個讓人成長很快的階段,我們可以在目標設計、調整計劃、溝通表達、技術實力、心態調整等多個方面進行自我的提升。每一次找工作都讓我們得到了快速的成長, 所以不管是被動裁員找工作、還是我們去尋找更好的機會、還是只是工作中無聊了想去看下自己的市場價值, 當我們經過多少年后,回首這一階段的努力,可能都算是我們人生的一次里程碑式的成長。
結果
謀事在人、成事在天。我們針對一家公司的面試可能經過了很大的努力、也覺得和每一輪面試官都聊的很不錯,但是最終也沒拿到offer, 也有可能我們只是抱著試試的態度,最終卻拿到了offer。
不管拿沒拿到offer,其實都不能絕對的說是好事或者壞事, 就拿我自己來說,我上一份工作拿到了自己多年夢寐以求的offer, 放棄了相對好的工作毅然加入了,但是呢沒多久業務調整,我又需要重新找工作, 也失去了之前的工作。
所以一切都不要太放在心上,為了成功,可以努力去朝著夢想去努力,但是失敗了也不要灰心,賽文失馬,焉知非福。當我們到了回頭看自己走過的路的時候, 能做到問心無愧不后悔 就是最大的成功了。
go學習內容建議(普通公司P5-P7)
1.將自己的項目進行打磨, 宏觀要有體系化的思考,微觀為什么選擇這樣的手段去解決問題, 項目的重點難點
2.leetcode
這方面,很多人都說看運氣,或者看準備。以我自己體驗, leetcode絕大部分不會考那么難, 是要花時間準備,但是熟練掌握hot100中的簡單中等題基本就可以應付面試了。 如果愿意花時間可以多刷,但是總體感覺性價比不如被八股文的高。
3.八股文
對某些方面有深刻的理解, 常考的可以只了解一層表面的內容, 但是也要有幾個方面做到不怕剖析, 感覺可以推薦 go相關內容或者redis相對內容,相對簡單。 kafka和mysql感覺適合長線學習