很久沒寫東西了,近一個多月天天都在外面跑,宣講會筆試面試等等,成天累的跟狗同樣,不過收穫仍是頗多的。java
歷程:從九月下旬到如今,找工做前我其實根本就沒複習過,只看過數據結構中簡單的一些東西,寫在個人數據結構那一類裏面,都是很淺顯的東西。傳說中的面試必讀之奇書《程序面試寶典》我壓根就沒看過,因而形成了我後面一系列的悲劇,因此找工做前仍是有必要複習下基礎的的知識,作軟件開發要看的知識:C/C++或者java基礎知識,網絡,操做系統等,其中多線程和網絡編程問的不少,基本上IT和互聯網的公司中作軟件的沒有哪個不用多線程和網絡編程吧,惋惜我這二者都不熟悉,仍是在後來抽空惡補了一下,勉強知道個概念。剛開始C++的不少東西也不懂,畢竟我搞應用的,平時關注的多的是怎麼用,至於說原理是怎麼回事,那就不太清楚了。舉個例子雖然用了大半年qt,可是別人問我信號與槽的機制原理時我就是答不出來的(不過如今瞭解大概了,吃一塹長一智嘛),不少知識都是筆試或面試中遇到本身不熟悉的回來再看書或網上查資料解決的,9月初我還不是很清楚static,const等關鍵字是怎麼回事,以及C++中繼承與多態,如今我基本上能說出個大概了。軟件如今封裝的愈來愈兇,底層原理性的東西都實現好了,咱們都是把接口拿來用就能夠了,因此不多關注底層原理,而公司的一些技術官卻很關注這些東西,喜歡拿這些考求職者,我也作過網絡編程,你說我怎麼作的,用qt裏面封裝的TCP或UDP類庫,每當我這樣說時(其實我就是用的封裝好了的庫,我也知道搞網絡編程有本奇書叫《UNIX網絡編程》,不過我沒關注,沒有時間關注底層啊),人家每每投來不屑的眼光而後就再也不問了(這意思估計就是庫誰不會用,你能實現它才證實你牛逼),好吧,只能說他們牛逼了,誰叫我水呢。之後作項目時得多注意了,知其然,之氣因此然。linux
做爲一個碼農,本身仍是太年輕了,懂的太少了,被鄙視的跟狗同樣也在所不免,技術面都過不了,雖然面了近20 家公司(我是海投黨,今年形勢很差,投簡歷(含筆試)與面試比例大概5:1的樣子,很悲催是吧),但公司的技術面沒有一個經過的(真心的,求別黑)。還好最後有公司收留,我也就從了。面試
歷經一個多月,雖然累但仍是學到了不少東西,也讓我知道了本身的缺點和短板,在這過程當中,我不斷完善提升本身,揚長補短,不過有些東西不是短期能提升的,但有些東西是能夠避免在犯錯的,因此必定要好好總結經驗教訓。所謂失敗是成功之母,好吧,雖然N屢次的失敗換來一次成功,不過最後能成功也值啊,不是嗎,嘿嘿算法
寫一下容易考到的問題(針對C++開發):數據庫
編程語言類(C/C++):static,const的用法和做用;指針(這學問大了,各類考法);結構體和類的區別;public,private和protected各自的用法和區別;拷貝構造函數;賦值函數;運算符重載;構造函數和析構函數問題(常見於看代碼寫輸出的題中);繼承虛函數(這裏面知識就多了,儘可能掌握全面,以不變應萬變)編程
QT/MFC類:問的不多,如今不多有作客戶端軟件的,即便是作客戶端軟件的,最關注的仍是C++基礎知識和網絡編程及多線程。要問的話比較多的是各自的核心機制api
網絡:OSI七層模型和TCP/IP模型;各層有哪些哪些協議;分組,路由,交換等概念;具體的協議內容(這就要具體學習了,沒有相關經驗的話就跪了)網絡
操做系統:進程死鎖;進程和線程區別;內存管理數據結構
多線程:這個很喜歡問,好比多線程的api,線程同步有哪些方法,線程間的通訊等多線程
數據結構算法:最基本的就是鏈表,排序,查找;而後是二叉樹,圖還有各類算法,互聯網公司尤爲喜歡算法
以上幾乎是必考的,有時會問下stl的東西,其餘的好比數據庫,linux甚至更高級的軟件技能看職位狀況。總之掌握的知識越多越好,越深越好。