提前批直投了兩個:一個樂鑫、一個諾瓦科技,皆卒
物聯安全開科技(技術面+HR面)
(1)自我介紹
(2)問專案,還是那些專案,但是由於技術官對微控制器瞭解不多,因此問的不夠深入
(3)然後問用過linux嗎
(4)TCP協定、UDP協定,TCP三次握手四次分手,TCP與UDP的區別
(5)利用UDP的優點,加強UDP的可靠性怎麼改進
(6)I/O複用瞭解嗎(poll、select、epoll區別以及用法)
(7)然後面試官介紹公司做的東西:偏linux應用層程式設計,驅動層和核心層用的不多
(8)對應用層感興趣嗎,知道程序間通訊嗎,方法,共用記憶體瞭解嗎
然後HR問的幾個問題:
(9)大學/研究生期間做的比較好的決定是什麼?(加入工作室。。。。。。。。)
(10)我看你寫過部落格,還挺多的,我也去看了一下,都是你自己寫的嗎?
(11)什麼時間可以實習?實驗室規定,不可以,,,,,,,,
國光電器
1、一面(群面)
(1)常規的自我介紹
(2)大學裡面學的比較好的課程?
(3)你所理解的裝置驅動程式的設計流程是什麼?
(4)I2C協定介紹一下;
還有幾個不是技術的問題,家庭情況,為什麼想來廣州,之類的
1、二面(技術面)
(1)給定一個字元陣列,求它的 sizeof 的大小,位元組對齊之類的;
(2)linux核心原始碼看過嗎?linux核心啟動流程,敘述一下;
(3)uboot原始碼看過嗎?uboot的載入引導過程;
(4)linux核心移植做過嗎,當時做的是哪一塊的移植?
(5)linux檔案系統有哪些?
(6)linux核心目錄結構,linux檢視記憶體的命令。
(7)自旋鎖和互斥量的區別;
(8)還有一些比較簡單的C語言知識,氣泡排序之類的
(9)在linux核心裡怎麼分配動態記憶體(kmalloc,核心中怎麼建立執行緒:kthread_create)
大華
1、一面
(1)自我介紹時候提到了linux下字元裝置驅動程式的編寫,然後面試官第一個問題就是字元裝置驅動程式的程式設計流程,裡面重要的 file_operations 結構;
(2)程序間和執行緒間的通訊方式;
(3)TCP/UDP協定了解嗎?介紹一下兩者區別(然後就背起來了),linux下的TCP程式設計實現過嗎?(然後就接著介紹socket程式設計);
(4)平時開發用的是C還是C++呢?寫的程式碼量有多少行?(這個我哪裡記得,粗略說了一下)
(5)大學時候學的比較好的課程是什麼呢?數學好嗎?
(6)平時有看過什麼專業的書籍沒有?(有啊,巴拉巴拉巴拉…)
(7)然後我這麼問的差不多了,你那邊還有什麼問題嗎?
得到面試官認可,面試官也很nice
1、二面
(1)自我介紹
(2)我看你簡歷裡有學過自動控制原理,講一下自控學的主要內容(我真是全部記得了,都還給老師了,就把還有點影響的PID控制講了一下),然後面試官追著問:如果給你一個溫度控制系統,怎麼控制溫度在變化不大呢,怎麼降低超調量呢?還有動態響應什麼的。然後還有其他大學和研究生課程的問題(內心:一度懷疑自己是不是投錯簡歷了)
(3)跟面試官說,我主要學的是C/C++,linux系統之類的,C語言終於開問了:陣列連結串列的區別,陣列連結串列插入的時間複雜度;
(4)結構體和字元陣列的sizeof;
(4)uboot移植做過嗎?介紹一下你做的吧
(5)多執行緒程式設計會嗎?(瞭解的比較少)
本來以為涼涼,大概一週之後接到HR面談薪資
中科曙光
技術面:
(1)linux核心空間和使用者空間的通訊;
(2)linux程序間通訊方式:共用記憶體自己實現過嗎;
(3)串列埠協定懂嗎,我說我瞭解,但是用的比較多的還是I2C協定,然後把I2C協定講了一下,還有linux下I2C程式設計介紹了一下;
(4)uboot的相關知識,uboot流程(stage1和stage2),uboot移植做了哪些測試,除了字元裝置驅動程式,你還做過什麼驅動程式:塊裝置,網路卡裝置
(5)然後問專案:mqtt協定介紹一下,你在專案中負責什麼,你都做了什麼工作,專案中的難點問題;
(6)c語言中動態分配記憶體,怎麼避免記憶體漏失呢?
(7)然後針對研究生期間的論文問了一些,介紹一下K-Means演演算法,你都是怎麼進行演演算法改進的呢?
(8)你有什麼問題問我們嗎?
後來在兩天之後,收到HR面的訊息,談薪資待遇;
博觀智慧
筆試做完之後,三輪面試,(一輪技術面,兩輪HR面吧,三天時間,效率很快),拿到offer,在濟南,薪資待遇還可以,因為個人原因拒了
1、一面
(1)萬年不變的自我介紹
(2)C語言中記憶體分配幾種方式(區域性、全域性、靜態、動態?)
(3)棧和佇列
(4)給定一個結構體,求 sizeof (考慮位元組對齊);
(5)大端小端通過程式判斷(聯合體,指標)
(6)C++學過嗎,智慧指標的作用並且介紹一下;
(7)STL瞭解過嗎,vector容器和list容器的優缺點;
(8)linux系統瞭解嗎,介紹一下你知道的命令(把我能想到的全都說了),後來面試官問了一個網路命令,不記得了,尷尬
(9)uboot命令介紹一下
2、二面和三面都是HR面,基本都是容易回答的HR問題,還有就是談薪資
天融信
1、一面(技術面)
(1)自我介紹
(2)linux核心啟動流程(start_kernel 函數裡面的內容)
(3)在linux系統中查詢檔案主要有什麼命令(find,whereis,whichis,locate,grep等)
(4)TCP/UDP協定會嗎?兩者區別,linux下的 tcp 程式設計實踐過嗎(簡單的介紹了下socket 程式設計:建立socket,bind,listen等之類的),然後有問使用者端連線伺服器,三次握手發生在什麼函數中。I/O 多路復ni用瞭解嗎?(poll,epoll和select)
(5)演演算法:怎麼判斷連結串列中有環,並且計算出中間環的個數(劍指offer原題):我按劍指offer上的思路說了一下:快慢指標,面試官說有沒有時間複雜度更小的計算方法,思考了一下回答:還是兩個指標,只要有指向同樣的地址說明是有環的,然後面試官把這個思路也告訴了我一下,就是指向同樣的地址空間。
(6)單向連結串列會嗎,那寫一個雙向連結串列和迴圈連結串列的資料結構;
(7)gdb用過嗎,用過(真的只是用過,列舉了一些gdb偵錯命令),然後面試官問:怎麼偵錯多執行緒呢? (對不起,這個我真的不記得了)
(8)你有什麼問題問我?(工作內容。。。。)
2、二面(技術面)
二面全程圍繞專案:mqtt 協定解釋一下吧,你是怎麼用 C 實現的,你在專案中有遇到過最大的困難是什麼?怎麼解決的?
我看你研究生期間做的是演演算法,那你解釋一下這個K-Means是怎麼實現文字聚類的呢?你的論文是基於什麼專案呢?還有如果給你一堆協定,你怎麼通過機器學習演演算法去識別出哪個是mqtt協定的資料包文呢?
給我的感覺就是天融信二面就是深挖專案,看你是不是真的懂你做的東西,所以呢,寫在簡歷上的東西是一定要負責任的!
3、三面(HR)
聊工作地點,薪資情況
六方雲科技
1、一面(技術面)
(1)常規性自我介紹
(2)我看你專案做的嵌入式微控制器的比較多,linux下的程式設計瞭解嗎?瞭解
(3)linux 下TCP程式設計說一下吧(這個問題真的遇到好多次)
(4)linux閘道器設定怎麼操作呢(可以用命令,也可以在組態檔中寫)
(5)還問了linux下的其他命令,時間太久記不得了
(6)繼續問第一個專案中 mqtt 協定(我發現只要問專案,第一個問的一定是這個問題:mqtt 協定)
(6)C語言功底怎麼樣?答:還行(內心祈禱,別問演演算法),然後問了一下一道 struct 結構體(成員變數包含位域)的 sizeof 是多少,還好當時有複習到。
(7)我看你之前用過BP神經網路,現在有這樣一個問題:你不是懂 mqtt 協定嗎,現在有別的協定的封包和 mqtt 協定包混在一起,你怎麼用BP神經網路進行區分呢?還有在好多好多資料包文中,你怎麼找到包含攻擊型別的網路報文呢?可以用你懂的別的機器學習演演算法做。(然後我就按BP神經網路的原理去做分類了,開放性的題目,有合理的理由就行)
(8)你有什麼問題要問我的嗎?(工作內容。。。)
2、二面(HR面)
(1)為什麼要來北京?(真的是北漂情懷驅使的我)
(2)家庭情況
(3)大學/研究生期間最有意義的一件事,最後悔的一件事。
(4)自己的優缺點是什麼
9月經歷的事情很多,大概自己十一之前面試了這麼幾家公司,也做的其他公司的筆試,十一之前的一週很忙,基本上每天都有筆試、面試(當時真真正正的體會到原來筆試面試多了也會那麼煩躁),當時自己也一直在思考還要不要去武漢,但是後來也算是不讓自己後悔吧,算是給自己一個交代吧,毅然決然在10月6號,帶著要坐一次南湖大道的538到終點站南湖大道茶山劉的願望(但是在寫這篇秋招記錄部落格之前,依舊還是沒有去坐538,原來實現自己文藝的願望還真是難啊)坐上了去武漢的飛機,來到了自己心心念唸的英雄武漢
武漢—
在武漢的正式秋招,應該是8號或者9號正式開始的,全部是在武漢理工的校招
拓邦股份
1、一面(技術面,群面)
一共6個人,不同的崗位
(1)常規性的自我介紹
(2)linux核心啟動流程知道嗎(總是相似的問題)
(3)linux下的字元裝置驅動程式程式設計(申請裝置號,註冊,實現 file_operation 結構體(read,write,open,ioctl等))
(4)函數指標和指標函數
(5)c語言熟練嗎?知道string庫函數裡的部分函數嗎,字串拼接函數,字串查詢函數,字串拷貝函數之類的
(6)在C語言中,動態分配記憶體用的是malloc函數,釋放記憶體用free,一般在使用時候釋放完記憶體還應該做什麼?(我回答的是把指標指向為空,為了防止出現野指標)
(7)其他人有面試JAVA開發的,就記得兩個問題:協程和執行緒池
2、二面(HR,群面)
(1)家庭情況
(2)為什麼要來深圳
(3)自己的優缺點
(4)大學期間做過比較滿意的事情
(5)導師時怎麼評價你的(優點和缺點)
(6)手裡的offer情況
還有一些常規性的HR問題,都比較容易回答,總體面試體驗
深圳奮達科技(就一面技術面)
當時就隨便去聽了一下宣講會,莫名其妙就去面試了,面的是軟體開發,我還是想做驅動
(1)沒有自我介紹
(2)你程式設計用的C多還是C++多呢,回答C。那用C語言實現一個把一個暫存器的bit3位置1,算是比較容易
(3)開始問專案,氣象檢測板,mqtt 協定,I2C協定之類的
(4)成績咋樣,四六級過了嗎?
武漢恆為科技
這個面試完真的是自我感覺都涼涼了,後來很快就收到感謝信了,我是去的他們公司,現場做筆試然後直接面試
(1)自我介紹
(2)針對筆試題,使用者空間和核心空間的通訊
(3)資料庫會嗎(瞭解過,不深入,確實沒學過)
(4)計算機網路咋樣(我只是有點基礎),TCP報文是怎麼組成的?
(5)linux系統懂嗎(還行),那怎麼判斷一個linux系統是32位元還是64位元的呢
檢視linux系統是64位的還是32系統:
getconf LONG_BIT
uname -a
cat /proc/cpuinfo
c語言編寫函數,輸出指標大小,為4則是32位,為8則是64位
這是面試完百度的,當時只想到一種方法
(6)給定一個超大的文字檔案,有很多行,怎麼用C語言實現把這個檔案按行倒序輸出呢?(當時想的是棧,後來被面試官否定)
(7)給定四張撲克牌,怎麼通過四則運算得到值24呢,判斷可以不可以,然後輸出任意一個結果(當時想的是用回溯,但是還是沒有做出來)
(8)你還有什麼問題問我的嗎?
湖南神鋒電子
(1)自我介紹
(2)瞭解大小端嗎?講一下原理,然後怎麼判斷一個機器是大端還是小端呢?(聯合體或者指標)
(3)然後聊專案,幾個專案都講了一邊,主要問的還是mqtt協定和自己寫的論文,相關的機器學習演演算法;
(4)I2C協定,SPI協定懂嗎?介紹
(5)還有C語言中的一些 字元陣列 strlen 和 sizeof 的大小長度,還有 strlen 和 sizeof 分別是在程式執行的哪個期間計算值的?
(6)然後問了一個演演算法:給定兩個遞增排序好的陣列,然後把陣列合併成一個也是遞增的陣列(我說的是用遞迴)
(7)然後問了一個非程式設計題:給定一個天平,10瓶藥,但是10瓶藥中有兩瓶一個90g一個110g,其他的都是10g,怎麼一次就可以找到這兩瓶不同的藥呢?(當時想了比較久,沒答出來)
(8)然後面試官開始介紹公司,他那邊給的是一個客戶技術支援的崗位。
傑發科技
1、一面(技術面)
(1)自我介紹
(2)介紹一下你的專案,氣象檢測板,mqtt 協定,板子是怎麼和阿里雲平臺進行通訊的,你在專案過程中遇到的什麼困難,怎麼解決的,一面主要問的就是專案的問題,這是我遇到的對專案挖的最細的一個公司吧。
(3)然後另一個女生面試官問:TCP,UDP協定的區別,三次握手和四次分手的過程;linux下的TCP以及UDP程式設計;TCP使用者端和伺服器傳資料用到的什麼函數(read,write);
(4)你有什麼要問我們的,一面主要問的是專案,微控制器型別以及微控制器最小系統這塊的。
1、二面(技術面,也算是+HR面)
(1)自我介紹
(2)用到的程式語言是C嗎,那C++瞭解嗎(瞭解一點),然後開始問C++的一些基礎知識;
(3)C++中類和結構體的區別
(4)動態繫結是什麼?
(5)virtual關鍵字的作用是什麼?(我開始聽錯了,聽成volatile了,英語不好的尷尬)
(6)虛擬函式定義以及作用?
(7)vector容器和list容器優缺點?
(8)我看你的專案上基本上都是裸機開發的,你用過作業系統嗎?用的什麼開發板?
(9)另一個面試官:你能講一下K-Means演演算法嗎,你是怎麼對他進行優化的呢,文字聚類是怎麼實現的呢,感覺這個面試官比較對論文感興趣。
(10)還有一些HR常問的問題:家庭情況,抗壓能力,自己的優缺點,愛好,期望薪資之類的。
中間也有其他面試,也可能有的問題記不起來了,都怪當時有些公司沒做記錄,問的問題感覺都比較相似,排版很醜,以後學一學如何排版。