做爲一名高級開發工程師,筆試題就不用作了,大多數是不用作的,都是約好後填一張表格,我的信息和教育培訓經歷,公司任職經歷,和期待薪資,我我的不留身份證號的,怕泄露信息,若是寫上家公司的聯繫方式必定要寫座機。面試要求再也不是簡單的crud,必須在某一起領域有本身更深的看法,由於面試你的人能力都會比較高,若是在能力上不能和他作一個深度的交流,天然不會獲得承認。我的以爲能夠從如下幾個方面注重經驗的積累。 Java虛擬機和內存優化 好比你對java虛擬機和源碼瞭解的比較透徹,建議你們有時間把jdk的源碼下下來,多看看裏面一些類的方法和實現邏輯,好比String類,List和Map集合,併發包等等,知道內部一些類的實現方式和原理,這個並非有太多人去問,本身這一方面比較精通的話能夠在面試過程當中把話題往這方面引導,若是能聊的來而面試你的人對這塊還沒你熟,天然成功的機會更大一些。java
設計模式 設計模式也是一個比較大的塊,好比本身十分了解設計模式這塊兒,熟練到能夠任意用設計模式寫出demo並理解其中的優缺點和使用場景。對此本身的瞭解是,大多數人僅限於瞭解一些經常使用設計模式,好比單例,工廠等,有好多人也是看完當時理解以後長時間不用又就忘記了,本身也有這樣的體驗,儘量仍是把經常使用一些模式的案例多寫幾遍,多體會體會才能理解其中的思想,寫代碼過程當中很難有機會用設計模式去重構或實現一些東西,若是有這些方面的一些寫代碼和優化經驗,那確定是加分的,其實即便是單例模式線程安全的也有好幾種寫法,怎樣最好用又是線程安全的,其它的寫法爲什麼不安全,都要去了解。程序員
工做職責和解決的難題 實際工做中擔負的責任和解決的難題,必定要有一兩個本身實際解決的生產環境的重大災難,問題故障怎麼發生的,致使的結果是什麼,針對這樣悲劇的後果,本身採起的什麼措施如何解決的,解決的效果若是很棒的話,那確定是加分的,若是實在沒有這方面的經驗,那在面試過程當中極可能就會被認爲經驗不足了。有些面試官的要求給人的感受很像是,你最好作出過一個優秀的產品,這個產品的運行穩定可靠甚至產生了很好的效益。面試
開發過程關鍵點總結 多總結,再厲害的程序員也是從初級到中級到高級一步步提高的,對本身參與過的項目要有很深的認識,實際工做中你們大部分都是模塊開發工做,有些庫表都是設計好的,甚至整個系統的框架搭建都是項目經理作的,本身只是在重複,可能更多的是設計一個簡單的表或改改表中的字段和屬性,添加邏輯功能,若是本身總結很少,那麼在面試過程當中問到簡歷上一些項目比較深的地方可能本身都說不清楚,最多回答本身沒負責這塊,業務不太熟悉,這天然是扣分的表現,所以在實際開發過程當中必定要多注意一些問題的積累,把一個問題研究的比較透徹和深刻,好比表中數據是Integer類型的,想拿表中的一個數據和一個大於128的數字比較時,二者數值相等,但始終不進if語句塊,針對這種問題本身深刻了解下去相信確定會有不小的收穫,我的感受面試過程就是聊這些經驗的過程,若是相似的這樣的經驗積累的比較多,那確定會加分的,面試成功率也會比較高。 積累一些開發工具,有些本身爲了提高開發效率親手打造的。 多整理和積累一些工具,好比本身寫的代碼生成工具,用於從表和實體中直接生成dao層和service和controller層甚至頁面也能夠生成,注重這些工具的積累,在面試中會有很大的優點,減小了簡單工做的重複,提高了工做效率會成爲加分項。 做爲一名中高級開發工程師不能僅僅停留在實現業務完成工做的層次上了,還要懂得深刻的原理和項目優化的經驗,事務甚至是分佈式事務管理,遠程方法調用事務處理,數據庫的redo和undo,各類數據庫使用場景和優化經驗甚至實現原理等等,集羣配置和實戰都要有一個比較深刻的瞭解。 本身工做以外會作什麼?除了學習以外要有本身的興趣愛好,多培養一些本身的興趣愛好並長時間的去作,不但要有愛好還要爲你的愛好付出過什麼,甚至獲得或失去過什麼,這樣會給人感受是比較懂生活有情趣的人,天然也會招人喜歡。儘量多體驗生活,給別人不同的觀點或有價值的建議和幫助,頗有助於快速融入團隊。 程序員要有終身學習的習慣,但也要兼顧工做和生活的平衡,但願經過不斷的學習和積累,最終都拿到本身一個比較期待和理想的職位。