面試華為,歷時半個月,還是涼了...

這位小伙伴曾經(jīng)在字節(jié)跳動進行后端開發(fā)實習,并且在秋招提前批的時候,面試了深圳華為終端事業(yè)部,經(jīng)過過一面+二面+主管面,但是很遺憾,涼了...
為了能幫助到更多程序員朋友,他選取了其中比較有代表性的面試問題,整理出了自己的一面+二面+主管面的面經(jīng),既希望大家?guī)退艺覇栴}出在什么地方,也希望他的失敗經(jīng)歷給予更多的程序員朋友啟發(fā)。
投遞部門:華為終端事業(yè)部 深圳base
面試者背景:
本科:西安電子科技大學
碩士:哈爾濱工業(yè)大學(深圳校區(qū))
實習經(jīng)歷:字節(jié)跳動抖音電商實習6個月
面試輪數(shù):兩輪技術(shù)面+一輪主管面
一面面試過程
1. 面試官:同學你好,請你先做一個簡單的自我介紹吧!然后講一講筆試第一題的思路!
我:我本科畢業(yè)于西電,碩士就讀于哈工大深圳的計算機專業(yè),曾在字節(jié)跳動的電商部門做過6個月的后端研發(fā)實習。主要負責電商退款與流程購買相關(guān)的接口開發(fā)與調(diào)試。
筆試的第一題考察的是一個狀態(tài)壓縮數(shù)組的動態(tài)規(guī)劃題目,解題方法只需要建立狀態(tài)轉(zhuǎn)換方程,進行遍歷求得最優(yōu)解即可。
小結(jié):正常面試的自報家門介紹,同時在這里提一下,華為每一輪面試,可能也需要看面試官心情,一般來說,每一輪都會對筆試的算法題目進行思路復習與研討。
華為的筆試三道算法題,100分,200分,300分,共600分,100分以上才能進入面試!華為OD也是需要進行筆試的!
2.面試官:MySQL數(shù)據(jù)庫中的全局鎖、表鎖、行級鎖三種鎖的應用場景有哪些?
我:在MySQL數(shù)據(jù)庫中,全局鎖、表鎖和行級鎖是用于管理并發(fā)訪問和修改數(shù)據(jù)的不同鎖級別,它們各自適用于不同的應用場景。
全局鎖用于鎖定整個數(shù)據(jù)庫實例,通常用于數(shù)據(jù)庫備份、維護、升級等操作。在使用全局鎖期間,其他用戶無法對數(shù)據(jù)庫進行讀寫操作。
表鎖用于鎖定整個數(shù)據(jù)庫表。對整個表進行操作,而不需要鎖定單獨的行時,使用表鎖。當需要執(zhí)行大批量數(shù)據(jù)的加載、刪除或更新操作時,可以使用表鎖來防止其他事務同時干擾。
行級鎖用于鎖定單獨的數(shù)據(jù)行,當多個用戶需要同時訪問同一表的不同行時,行級鎖是必要的,以允許并發(fā)訪問。
小結(jié):問這個的主要原因是,由于在字節(jié)的實習項目主要基于Mysql數(shù)據(jù)庫相關(guān)的接口開發(fā),在聊到電商的訂單流數(shù)據(jù)同步的時候進行的提問,算是比較有含金量和難度的題目。
3. 請你談談分布式系統(tǒng)的設(shè)計中的CAP定理是什么?
我:CAP定理是在分布式系統(tǒng)中三個核心屬性之間的權(quán)衡關(guān)系。其定理核心在于一個分布式系統(tǒng)在這三個屬性之間無法同時滿足,只能選擇其中兩個。
一致性,在分布式系統(tǒng)中的所有節(jié)點上,數(shù)據(jù)復制必須保持一致。
可用性,分布式系統(tǒng)不能因為某個節(jié)點或部分節(jié)點的故障而導致整個系統(tǒng)不可用。
分區(qū)容忍性,分布式系統(tǒng)中必然會發(fā)生網(wǎng)絡分區(qū)或故障,導致節(jié)點之間的通信中斷。
4.手寫代碼實現(xiàn)LeetCode第93題:復原 IP 地址
小結(jié):面試官直接讓登錄LeetCode網(wǎng)站,選一道你沒做過的算法題目,現(xiàn)場要求手撕,回溯法,直接AC了。
面試結(jié)果:兩天后約了二面...
二面面試過程
-
面試官:同學你好,看了一下,一面面試官的面評還是不錯的,我這里有一道場景題:總共有四億不重復的int值,假如有源源不斷新來的int值,怎么設(shè)計數(shù)據(jù)結(jié)構(gòu)來判斷新來的int值是否已存在?
我:使用數(shù)據(jù)結(jié)構(gòu)布隆過濾器,將已有的四億不重復的int值插入到布隆過濾器中。為每個值計算多個哈希值,并將對應的位設(shè)置為1。
當新的int值到來時,你可以使用布隆過濾器來判斷是否已存在。將新值計算多個哈希值,然后檢查對應的位是否都為1。如果有任何一個位為0,那么新值肯定不存在。
小結(jié):如果所有位都為1,那么新值可能存在,但也可能是誤判。布隆過濾器的一個重要參數(shù)是誤判率,可以根據(jù)需求來調(diào)整該參數(shù)。增加哈希函數(shù)的數(shù)量可以降低誤判率,但也增加了存儲和計算的開銷。
2.面試官:Redis數(shù)據(jù)庫支持哪五種數(shù)據(jù)結(jié)構(gòu)?
我:字符串String,字符串數(shù)據(jù)結(jié)構(gòu)可以用于緩存、計數(shù)器、分布式鎖等應用;
列表List,有序的字符串元素集合,支持從兩端進行插入和刪除操作。它可以用于實現(xiàn)隊列、堆棧等數(shù)據(jù)結(jié)構(gòu)。
集合Set,Redis的集合是無序的字符串元素的集合,不允許重復元素。
有序集合Sorted Set,有序集合是集合的擴展,每個元素都關(guān)聯(lián)一個分數(shù),元素根據(jù)分數(shù)進行排序。
散列Hash,,它用于存儲字段和與字段關(guān)聯(lián)的值的映射關(guān)系。
小結(jié):基礎(chǔ)的八股文,多解釋一下內(nèi)容進行一下擴展,因為越來越多的面試官,不太喜歡“教科書”式回答的方法。
3.面試官:Redis緩存數(shù)據(jù)庫的數(shù)據(jù)結(jié)構(gòu)中Sorted Set的底層實現(xiàn)以及使用場景?
我:Redis的有序集合的底層實現(xiàn)主要依賴于跳躍表和哈希表(Hash Table)兩種數(shù)據(jù)結(jié)構(gòu)。Sorted Set的典型應用包括實時排行榜,通過分數(shù)排序,可以輕松實現(xiàn)游戲排行榜、社交媒體關(guān)注者排名等以及計分系統(tǒng),用于記錄用戶分數(shù)、評分或評級。
4.InnoDB存儲引擎使用的是B+樹的索引結(jié)構(gòu),其葉子節(jié)點大小是多少?
我:這個還忘了,隨便說了一個4KB... 面試官搖了搖頭。
小結(jié):對于InnoDB存儲引擎來說,它使用了16KB大小的數(shù)據(jù)頁(page),而葉子節(jié)點通常存儲在這些數(shù)據(jù)頁中。這并不是說葉子節(jié)點的大小限制是16KB,而是說一個數(shù)據(jù)頁的大小是16KB。因此答案應該是16KB。
5. 手寫代碼實現(xiàn)LeetCode第300題:最長遞增子序列
小結(jié):動態(tài)規(guī)劃+貪心,不難,直接秒了,以下是Java的解題代碼:
class Solution {
public int lengthOfLIS(int[] nums) {
int len = nums.length;
if(len==0){
return 0;
}
int[] dp = new int[len];
Arrays.fill(dp,1);
int Maxlen = 1;
for(int j=1;j<len;j++){
for(int i=0;i<j;i++){
if(nums[i]<nums[j]){
dp[j] = Math.max(dp[i]+1,dp[j]);
}
Maxlen = Math.max(Maxlen,dp[j]);
}
}
return Maxlen;
}
}
面試結(jié)果:當天約了主管面,但是主管出差了,一個星期后才能面試。
主管面面試過程
1、談談你對華為狼性文化的加班看法?
我:我覺得沒有問題,剛畢業(yè)奮斗幾年挺好的,只能努力才能進步。
2、你目前有沒有其他的Offer?
我:目前為止,有一家字節(jié)跳動轉(zhuǎn)正的Offer,不過我更想來華為,因為家是深圳的,更想來深圳。
3、部門主要人員是在東莞,是否考慮?主要從事鴻蒙系統(tǒng)的后端開發(fā),你有過安卓平臺開發(fā)的經(jīng)驗嗎?
我:有過,不過主要是從事web端的后端開發(fā),安卓開發(fā)只做過簡單的開發(fā)。
4、你的技術(shù)棧主要是Java,我們這邊C++語言用的更多一些?你愿意轉(zhuǎn)技術(shù)棧嗎?
我:可以的,不過還是想原生的Java后端開發(fā),更加擅長。
小結(jié):以上的三個問題算是關(guān)鍵采分點,剩下基本都是純聊天,基本保持著熱愛加班,支持狼性文化,就認準選定華為的原則進行回答,應該不會出現(xiàn)問題的,但是確實可能業(yè)務方向不太匹配,候選人多的話,就不好說了...
面試結(jié)果:可能真是業(yè)務方向不匹配,主管面面試完半小時,HR告知,對不起同學沒有通過...
整體面試總結(jié):華為的面試體驗還是挺不錯的,但是只說好的地方,就失去了面經(jīng)的意義。說說注意事項:
-
華為的筆試從19年之后,難度變得很大,三道筆試題目,有兩道都是hard難度
-
技術(shù)崗位的面試,很少刷人,主管面掛了,同一個流水線的部分都不能投遞了,看得出來主管的權(quán)利很大。
2023年還剩下最后幾個月的時間,祝愿大家都能找到滿意的工作,一起升職加薪!
歷史好文:
