后端開發技術面試指南

工作10多年,每年都會幫組里面試一些新同學校招社招的都有,下面我就從一個面試官的視角來給大家拆解一下如何淡然應對后端開發技術面試。

1.一面多為電話面試

(1)問七問八

①簡歷要注重內容,形式上不丑沒有錯別字即可。之前收到過一個工作5年的簡歷,內容只有一面,因為他一直在一個公司的一個項目組,他就寫了一個大項目。這種簡歷很有問題,如果你確實沒項目可寫,

②換工作不能太頻繁。如果你跳槽的頻率是半年到一年,相信我,沒有大廠敢要你,因為大廠流程復雜,半年相當于剛把你培訓上道,你卻要跑了。

③不要說自己是被優化掉的。你自己不承認,面試官懷疑也沒有用,如果你面試狀態很不錯,其實沒有影響。但是如果你上來就說自己是被上家優化掉的,很多大廠都不會考慮。

(2)自我介紹免不了

①下面是個不好的例子:我告訴他進行一次簡短的自我介紹,結果他聊了15分鐘也不停歇,嘗試打斷他,沒說幾句,他又開始聊起來自認為很牛x的項目。

(3)背八股。你說你精通c++,剛好我也懂。。

①面試官很喜歡問一些底層實現之類的問題以彰顯他們的智慧,比如虛函數是怎么實現的?如果你能條理清晰的虛函數表的內存布局就差不多了。還有比如STL的hashmap是如何實現的?其實這些東西在工作中鮮有實際用途,但是能判別一個人是不是真的一天到晚CRUD,從不學習底層技術。你也知道大廠都是招聘火箭專家進來打螺絲。

(4)系統設計侃大山

①一般電話面試不會要求做題(也有那種給你一個共享文檔讓你來做題的情況),但是系統設計是可以不用寫寫畫畫就能聊的,比如面試官會讓你設計實現一個限流器,碰到這種問題,你不要一上來就給答案,你需要先跟面試官溝通問清楚需求,比如問面試官如下問題:你是要給什么東西限流,面試官會說后端API接口;然后再問是給單機服務限流還是集群API限流;然后再問需求是否是只需要限制每秒少于N個請求即可還是說要盡可能的平滑請求等等;你把需求問清楚了,思路基本就出來了,比如你給出了一個用redis實現的令牌桶。

(5)你有什么問題?

①理論上你可以問面試官任何問題,但是最好不要問,你們組卷不卷,加班多不多之類的問題,你問了,面試官會覺得你不喜歡加班,而且這種問題你在面試官那里也得不到真實的答案,這個問題你最好問給你內推的人。

2.二面/三面

二面三面基本都是硬核的做題類型的面試。

(1)自我介紹,請開始你的表演。注意時長(5分鐘以內),重點說難度說亮點。什么叫難度?高并發高可用低延遲,往這上面靠就行。

(2)八股文你能背出來嗎?

①所有你簡歷上的內容,你都需要提前準備,尤其是你精通的,比如你說你精通Redis,面試官可能就會問你,redis為什么這么快?你如果只回答了一句因為redis是存內存的,你可能這次面試會掛,即使你作對了兩道題。而如果你說了很多點,比如非阻塞I/O多路復用,以及哈希表優化等等,即使你兩道編程題只做對了一道,一般還會有下次機會。

(3)先做一道入門級別的編程題熱熱身.

①這里一般面試官會讓你用自己最擅長的語言寫一道基本的編程題。比如將一個數1234轉成中文一千二百三十四,拿到這種題目切記不要大意,面試官考察的是你能否編寫干凈整潔和正確的代碼,干凈整潔需要你邏輯清晰不寫垃圾代碼,正確需要你想清楚各種邊邊角角的情況比如4000,0等,并寫好單元測試。

(4)工作5年,并發編程應該小菜一碟吧。

①比如讓你寫一個多線程壓測工具,給你一個url,需要你開多線程對這個網站發送http請求,并打印出來當前壓測的QPS是多少。你如果用java,拿到這個題,你至少需要知道如何開thread,如何發http請求,如何線程安全的記錄QPS,可以看出這種題目并不難,但是如果你寫代碼不多,很容易寫不滿足要求的代碼。

(5)重頭戲來了:算法和數據結構

①這一塊可能很難,如果你面試的職級比較高,碰到比較難的題例如某些復雜的動態規劃題目的概率就比較大,?還有一般女生碰到難題的概率相對較小,以及特別牛X轟轟的人碰到難題的概率相對較大。

②正常都是leetcode上中等難度的題,比如對常見的數據結構二叉樹,就會出一道這樣的題,給你一個二叉樹,驗證它是否是一個二叉搜索樹,什么?你連二叉搜索樹是啥都不知道?這時候你不要慌,你就說平時編程時沒有用過二叉搜索樹,5年前學過的,現在忘記了,讓面試官提醒你一下二叉搜索樹的特性;面試官心情不差的情況下應該會告訴你;要是你剛好刷過這道題,你應該竊喜,并且不露聲色的做思考狀,“嗯,這道題沒做過,遞歸不好搞啊,遍歷一下怎么樣,左中右,BST遍歷之后應該是升序啊,然后裝作問面試官,是升序就是BST?”。如果你很誠實,也可以告訴面試官我剛做過,請換一道。。

3.終面

(1)不清楚,等我當上領導了再說吧。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/717866.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/717866.shtml
英文地址,請注明出處:http://en.pswp.cn/news/717866.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

經典語義分割(一)利用pytorch復現全卷積神經網絡FCN

經典語義分割(一)利用pytorch復現全卷積神經網絡FCN 這里選擇B站up主[霹靂吧啦Wz]根據pytorch官方torchvision模塊中實現的FCN源碼。 Github連接:FCN源碼 1 FCN模型搭建 1.1 FCN網絡圖 pytorch官方實現的FCN網絡圖,如下所示。 1.2 backbone FCN原…

為raspberrypi編譯bpftrace調試工具

基于eBPF的嵌入式應用調試 筆者之前寫過幾篇有關于使用eBPF調試Linux內核和應用的博客,其中提到,在嵌入式設備上使用BCC或bpftrace是不可行的;主要原因在于嵌入式設備的資源有限,而這兩個調試工具依賴python/clang/llvm等庫&…

Scratch 第十六課-彈珠臺游戲

第十六課-彈珠臺游戲 大家好,今天我們一起做一款彈珠臺scratch游戲,我們也可以叫它彈球游戲!這款游戲在剛出來的時候非常火爆。小朋友們要認真學習下! 這節課的學習目標 物體碰撞如何處理轉向問題。復習鍵盤對角色的控制方式。…

STL-內存的配置與釋放

STL-內存的配置與釋放 STL有兩級空間配置器,默認是使用第二級。第二級空間配置器會在某些情況下去調用第一級空間配置器。空間配置器都是在allocate函數內分配內存,在deallocate函數內釋放內存。 第一級空間配置器 第一級配置器只是對malloc函數和fre…

【自然語言處理】BitNet b1.58:1bit LLM時代

論文地址:https://arxiv.org/pdf/2402.17764.pdf 相關博客 【自然語言處理】BitNet b1.58:1bit LLM時代 【自然語言處理】【長文本處理】RMT:能處理長度超過一百萬token的Transformer 【自然語言處理】【大模型】MPT模型結構源碼解析(單機版)…

如何在 Mac 上成功輕松地恢復 Excel 文件

Microsoft Excel 的 Mac 版本始終略落后于 Windows 版本,這也許可以解釋為什么如此多的用戶渴望學習如何在 Mac 上恢復 Excel 文件。 但導致重要電子表格不可用的不僅僅是 Mac 版 Excel 的不完全穩定性。用戶有時會失去注意力并刪除錯誤的文件,存儲設備…

2024-03-03 c++

🌸 MFC進度條控件 | Progress Control 1。新建MFC項目(基于對話框、靜態庫) 2。添加控件,刪除初始的3個多余控件 加1個progress control,修改其marquee為true,添加變量:變量名為test_progress。…

Angular基礎---HelloWorld---Day1

文章目錄 1. 創建Angular 項目2.對Angular架構的最基本了解3.創建并引用新的組件(component)4.對Angular架構新的認識(多組件)5.組件中業務邏輯文件的編輯(ts文件)6.標簽中屬性的綁定(1) ID的綁定(2) class…

String和String Builder

String和StringBuilder的區別 String類 String類代表字符串。java程序中所有字符串文字(例如“abc”)都被實現為此類的實例。 String類源碼是用final修飾的,它們的值在創建后不能被更改。字符串緩沖區支持可變字符串。 String對象是不可變…

STM32 (2)

1.stm32編程模型 將C語言程序燒錄到芯片中會存儲在單片機的flsah存儲器中,給芯片上電后,Flash中的程序會逐條進入到CPU中去執行,進而CPU去控制各種模塊(即外設)去實現各種功能。 2.寄存器和寄存器編程 CPU通過控制其…

Apache POI的簡單介紹與應用

介紹 Apache POI 是一個處理Miscrosoft Office各種文件格式的開源項目。我們可以使用 POI 在 Java 程序中對Miscrosoft Office各種文件進行讀寫操作。PS: 一般情況下,POI 都是用于操作 Excel 文件,如圖: Apache POI 的應用場景&…

SQL無列名注入

SQL無列名注入 ? 前段時間,隊里某位大佬發了一個關于sql注入無列名的文章,感覺好像很有用,特地研究下。 關于 information_schema 數據庫: ? 對于這一個庫,我所知曉的內容并不多,并且之前總結SQL注入的…

設計模式-橋接模式實踐案例

橋接模式(Bridge Pattern)是一種結構型設計模式,用于將抽象與實現分離,使它們可以獨立地變化。這種模式通過提供一個橋接結構,可以將實現接口的實現部分和抽象層中可變化的部分分離開來。 以下是一個使用 Java 實現橋…

【數據結構】_包裝類與泛型

目錄 1. 包裝類 1.1 基本數據類型和對應的包裝類 1.2 (自動)裝箱和(自動)拆箱 1.2.1 裝箱與拆箱 1.2.2 自動(顯式)裝箱與自動(顯式)拆箱 1.3 valueOf()方法 2. 泛型類 2.1 泛…

【深度學習筆記】計算機視覺——目標檢測和邊界框

目標檢測和邊界框 前面的章節(例如 sec_alexnet— sec_googlenet)介紹了各種圖像分類模型。 在圖像分類任務中,我們假設圖像中只有一個主要物體對象,我們只關注如何識別其類別。 然而,很多時候圖像里有多個我們感興趣…

某大型制造企業數字化轉型規劃方案(附下載)

目錄 一、項目背景和目標 二、業務現狀 1. 總體應用現狀 2. 各模塊業務問題 2.1 設計 2.2 仿真 2.3 制造 2.4 服務 2.5 管理 三、業務需求及預期效果 1. 總體業務需求 2. 各模塊業務需求 2.1 設計 2.2 仿真 2.3 制造 2.4 服務 2.5 管理 四、…

在vue中對keep-alive的理解,它是如何實現的,具體緩存的是什么?

對keep-alive的理解,它是如何實現的,具體緩存的是什么? (1)keep-alive有以下三個屬性:注意:keep-alive 包裹動態組件時,會緩存不活動的組件實例。主要流程 (2&#xff09…

數字化轉型導師堅鵬:證券公司數字化營銷

證券公司數字化營銷 ——借力數字化技術實現零售業務的批量化、精準化、場景化、智能化營銷 課程背景: 很多證券公司存在以下問題: 不知道如何提升證券公司數字化營銷能力? 不知道證券公司如何開展數字化營銷工作? 不知道…

胎神游戲集第二期

延續上一期 一、海島奇胎 #include<bits/stdc.h> #include<windows.h> #include<stdio.h> #include<conio.h> #include<time.h> using namespace std; typedef BOOL (WINAPI *PROCSETCONSOLEFONT)(HANDLE, DWORD); PROCSETCONSOLEFONT SetCons…

Linux 安裝pip和換源

一 配置文檔 Linux和macOS&#xff1a; 全局配置&#xff1a;/etc/pip.conf 用戶級配置&#xff1a;~/.pip/pip.conf 或 ~/.config/pip/pip.conf 二 下載 和 安裝 # pip 安裝 wget https://bootstrap.pypa.io/get-pip.py python get-pip.py 三 查看和升級 pip -Vpython -m…