地平線提前批 一面涼:
投遞簡歷過程:官網投遞9月份之前投的都是提前批,投了北京、上海、南京地區的嵌入式軟件研發崗,北京和上海的都被篩掉了,南京的撈了我,hr小姐姐打電話邀約面試。
一面涼:
電話面試,第一次收到面試通知十分痛苦,面試AI芯片獨角獸,完全沒有一點點准備,知識也沒有撿起來,十分緊張,面試官很好,不停開導。
1、自我介紹
2、解釋register關鍵字
3、字節對齊
4、數據庫查詢左連接和右連接的區別(跪了,數據庫全忘了)
5、static關鍵字在函數中、源文件中、頭文件中有什么區別(涼)
6、數據結構和算法了解不,分治法、貪心法(涼)
7、項目介紹
8、你還有什么要問的
總結:面試表現太差,17分鍾結束,自己太菜,面試基礎很重要,牛客上說地平線嵌入式的面試考的很廣。
小米提前批 二面涼:
投遞簡歷過程:官網投遞9月份之前投的都是提前批,投了嵌入式工程師,地平線面試完晚上突然接到小米公司的電話,面試官邀約面試。
一面 27min:
牛客網視頻面試,心想又完了,還沒復習又來面試,而且是世界五百強公司的面試,作為米粉異常痛苦(對自己恨鐵不成鋼),好在小米的面試官也十分和善。
1、自我介紹
2、項目介紹
3、項目中的總線解釋一下
4、線程同步
5、編程題:冒泡排序、鏈表逆置(面試官說,我考一下你的編程能力吧,要簡單的題目還是要難的題目?答:簡單的)
6、談談你對小米的了解
7、你還有什么想問的
8、工作地點選一個(深圳,選完面試官解釋北京負責小米系列,南京負責MIUI,深圳負責紅米系列)
二面 30min:
小米深圳的面試官打電話邀約面試
1、C/C++程序 內存分布情況 常量所在的區(沒回答好)
2、STM32 GPIO(沒有認真復習,細節全記錯了,比如開漏輸出)
3、什么是倒灌(本來很能理解電流倒灌的原理,因為學習FPGA時了解到線與邏輯會導致倒灌而損壞器件,當時沒回想起來,用自己的話表述的,不甘心)
4、深挖項目(沒回答好,自己的項目也必須好好復習)
5、問了一下小米的培訓機制,導師制,最好實習6個月左右(大佬肯定不用,還有幾萬的簽字費)
總結:小米基本會給很多人面試的機會,只怪自己太菜,無准備之戰,必敗無疑。
廣州視源(CVTE)一面涼:
投遞簡歷過程:官網投遞,選擇筆試場次(20多道選擇題,2道編程題),筆試通過后選擇面試場次。
一面 60+min:
去面試酒店掃碼排隊,酒店人超多,一定要提前去
1、自我介紹
2、項目介紹,畫出硬件拓撲圖
3、解釋一下中斷 中斷處理時間過長(中斷下半部) 中斷觸發方式 中斷處理函數注意事項(有參數和返回值嗎,為什么)
4、編程題 1)給出寄存器的地址和位寬,讀寫寄存器 2)字符串處理,大小寫轉換
5、對嵌入式的了解
6、我們是996,對加班的看法
7、有什么職業規划,什么原因會讓你離開公司(巨坑)
總結:面試官的暗語是一面和二面面試官都是我,回去等涼了的消息吧。
浙江大華 一面涼 20min:
網申投遞,通過篩選后筆試,筆試通過,面試官發短信讓我當天選擇時間,感覺自己是被隨便撈起來看看,面完第二天收到辭謝信。
1、項目介紹,IIC總線說一下。
2、C語言分哪幾區,static修飾的局部變量在哪里?
3、Linux有用過哪些,干了什么事?(我說Debian系列、Centos都用過)
4、NOR Flash 和 NAND Flash 文件系統(忘了,讓我補充了一下非嵌入式的文件系統)
5、Linux用戶態如何進入內核態?
6、看看你的筆試題,解釋一下棧的特點。
7、有什么想問我的?(問了一下 視頻會議C嵌入式的工作內容,面試官說有ARM單片機的,也有Linux的驅動開發,也有我做過的服務器和數據庫的部署,感覺超級符合)
8、什么時候能夠實習,畢設怎么辦?
總結:面試表現最好的一次,我說我在學習《Linux設備驅動程序》和《UNIX環境高級編程》,面試官說這兩本書要好好看,我想我還是表現太平庸了,大華投的人很多,優秀的人都不缺。
綠米聯創 三面 offer:
網申后,宣講會筆試,筆試內容非常基礎,考察對C/C++的基礎,C++的全忘了,筆試完當天晚上收到面試邀請。
技術面 約50min:
面試官比較nice,十分和善。
1、復盤筆試題
1)高內聚低耦合什么意思,為什么要這么做
2)寫一個“標准”的宏,比較兩個數的大小(有什么需要改進的,為什么這么改,如果是i++怎么做,不知道,面試官告訴我應該用臨時變量)
3)反轉鏈表的編程題寫錯了
2、IIC總線時序
3、寫出計算機網絡 五層模型 每一層對應的協議 解釋ICMP DHCP
4、HTTP 從瀏覽器輸入域名的全過程
5、項目架構畫一下,項目中的無線模塊是怎么回事 因為我投的無線組,問的比較深
6、寫個程序判斷CPU字節序,寫對了(小米的面試官也問過,當時不記得了,巨難受)
7、項目中的難題
8、你知道哪些加密方式,非對稱加密?
9、進入Linux內核態,為什么要分為用戶態和內核態
10、想搞哪個方向?(我作死,說想搞Linux,后面有了leader加面,因為這個方向是網關組的,當時沒意識到面試官是無線組的leader)
11、深圳壓力很大,為什么想來深圳?
12、有什么要問的,問了一下綠米產品的IoT安全。
hr面:
0、比較考察個人綜合素質,考察你對行業的認識,對公司的了解,臨場反應能力等,hr沒有給人壓力。
leader加面 30min:
1、IIC總線(?)
2、項目中類似於IFTTT的解釋了一下
3、給我一個硬件工程師做好的人體感應模塊,如何用zigbee對接網關(答的不好)
4、C++多態
5、自動控制原理中的PID
總結:我感覺我什么的可以說一下,但是回答的可能不是很讓面試官滿意,無論是對知識的理解正確度上、深度上,都差那么一口氣,還是要多學,學精學專一點。
秋招總結:
1、基礎!!!基礎!!!基礎!!!
2、不要盲目自信,自己的項目也要通透,能夠對答如流。
3、問一答十,准確且全面,不要擠牙膏,不會的問題一定要找個相似的補上,面試官想看到你知識體系,深度和廣度。
4、心態一定要調整好,瘋狂投遞刷題筆試面試,有機會就上,失敗了就多多復盤。
5、一定要好好准備,看面經啥的,可惜了提前批(學霸批)大廠獨角獸的面試機會,不過對於我一個菜鳥大廠只能是幻想。
附面試代碼:
1、字節對齊與大小端

1 // 2 // Deepc.cpp 3 // Study -- C的深入 4 // 5 // Created by Admin-X on 2019/10/6. 6 // Copyright © 2019年 Admin-X. All rights reserved. 7 // 8 9 #include "Deepc.hpp" 10 #include <iostream> 11 using namespace std; 12 #pragma pack(4) //改變對齊字長 13 14 void byteSize(){ // 4-byte 8-byte 15 struct fun{ // Address offset Address offset 16 int a; // 0x6EFE7C +0 0x6EFE78 +0 17 double b; // 0x6EFE80 +4 0x6EFE80 +8 18 char c; // 0x6EFE88 +8 0x6EFE88 +8 19 char d; // 0x6EFE89 +1 0x6EFE89 +1 20 int e; // 0x6EFE8C +3 0x6EFE8C +3 21 }F; 22 cout << sizeof(F) << endl; 23 //printf("0x%X\n0x%X\n0x%X\n0x%X\n0x%X\n",&F.a,&F.b,&F.c,&F.d,&F.e); 24 //printf("0x%X\n",&F.k); 25 } 26 27 void checkCPU() //檢測CPU大小端字節序,小端字節序:低位的地址存儲低位的字節 ,大端反之 28 { 29 union w // Big-endian/Little-endian 30 { //(Address) 0x00 0x01 0x02 0x03 // 0x00 0x01 0x02 0x03 31 unsigned int a ; //(Data) 0x87 0x65 0x43 0x21 // 0x21 0x43 0x65 0x87 32 char b; 33 }c; 34 c.a = 0x87654321; 35 if(c.b == 0x21){ 36 printf("little-endian\n"); 37 }else{ 38 printf("big-endian\n"); 39 } 40 }