很多面試,很多人員能力要求都有“Java高級工程師的字眼”,如果您真心喜歡Java,并且您剛起步,那么我今天簡單分享一個Java高級工程師所應該具備的特質(zhì),希望能給你帶來幫助。
1、平靜的心態(tài)
和所有程序員一樣,要寫一手好的程序,沒有好的心態(tài)是不行的。
遇事不可急躁,不可輕言放棄。
在程序開發(fā)過程中,尤其是初中級程序員,寫出的程序或架構(gòu)會遇到很多問題,其中一些問題比較弱智,而有些問題根本沒有碰到過,于是不可太過急躁,應該逐個排查問題的最初源泉,將其干掉。急躁的心態(tài)去開發(fā)系統(tǒng)是對項目的一種不負責。急躁會讓人學會將就,讓人學會逃避。而我個人北京兩年的簡單生活,給我其中一個最大的歷練也就是:我的心態(tài)更加平靜了。
相信,這樣的心態(tài)也會有助于你其他方面的處事能力。
為什么將心態(tài)列入其中,我是想說明:它不同于銷售的職能,需要很大激情澎湃,而是需要靜靜的思考。
2、一套爛熟于心的問題解決思路
曾經(jīng)有位程序開發(fā)的同事在QQ簽名中寫到:每解決一個bug,就給自己一個提升。的確,沒有真正解決過無數(shù)的bug或問題的程序員,談不上專家,談不上高級程序員。而一個高級程序員正是從這種解決問題的過程中不斷地歷練自己,形成一套爛熟于心的問題解決思路,讓自己強大的。
我也簡單說說Java程序員成長過程中經(jīng)常遇到的一些問題,如果你一個也沒遇到或很少遇到,那么您就是兩個極端的人:要么初級入門,要么高級了,哈哈。
基礎(chǔ)扎實,熟悉 Java 編程,熟悉 Spring、MyBatis 等框架優(yōu)先;
熟悉 SQL 語句,熟練使用 MySQL 數(shù)據(jù)庫;
良好的溝通、表達、協(xié)調(diào)能力,富有激情,學習能力強;
1、先自我介紹
2、什么是多態(tài)?哪里體現(xiàn)了多態(tài)的概念?
3、HashMap 源碼分析,把里面的東西問了個遍?最后問是不是線程安全?引出 ConcurrentHashMap
4、ConcurrentHashMap 源碼分析
5、類加載,雙親委托機制
6、Java內(nèi)存模型(一開始說的不是他想要的,主要想問我堆和棧的細節(jié))
7、垃圾回收算法
8、線程池,自己之前看過,所以說的比較多,最后面試官說了句:看你對線程池了解還是很深了
9、事務的四種特性
10、什么是死鎖?
11、樂觀鎖和悲觀鎖的策略
12、高可用網(wǎng)站的設(shè)計(有什么技術(shù)實現(xiàn))
13、低耦合高內(nèi)聚
14、設(shè)計模式了解不?你用過哪幾種,為什么用,單例模式幫我們做什么東西?有什么好處?
15、你參與什么項目中成長比較快?學到了什么東西,以前是沒有學過的?
16、項目中遇到的最大困難是怎樣的?是怎么解決的?
17、智力題(兩根不均勻的香,點一頭燒完要一個小時,怎么確定15分鐘)
18、你有什么問題想要問我的?
19、問了菜鳥網(wǎng)絡(luò)他們部門主要做什么?
20、登錄從前端到后端整個過程描述一遍?越詳細越好,說到密碼加密,網(wǎng)絡(luò)傳輸,后臺驗證用戶名和密碼,Cookie
設(shè)置等。具體問我密碼加密是前臺還是后臺加密,說了在后臺加密?面試官說,那你做這個項目有什么意思?密碼傳輸都是明文的,默認 HTTP
傳遞是明文傳輸,當時被面試官帶進前臺加密還是后臺加密的溝里去了,沒想到用 HTTPS
,后來后來的路上查了些資料才知道的,面試過程中他很想我說前臺加密,但是前臺加密算法那代碼就擺在那里,很容易就給破解了吧,也沒給點提示說 HTTPS,我只好投降
21、寫一個查詢的 sql 語句
22、線程同步的方法?Synchronized、Volatile、(面試官好像覺得 Volatile 不可以做到同步,我和他說了半天的 Volatile
原理 ,他竟然不認同,我開始懷疑他的實力了)、ThreadLocal、Atomic。
說到這些了,我當時竟然沒把他帶進我我給他挖的坑里去(線程池,之前好好研究過呢,可惜了)
23、Spring IOC 和 AOP 的理解?叫我寫 AOP 的代碼,我沒寫
24、JDK 動態(tài)代理和 Cglib 代理區(qū)別?
25、你覺得項目里面你覺得哪些技術(shù)比較好?我指了兩個,然后他也沒有問下去。
26、解釋下 XSS 攻擊
27、Spring 和 SpringBoot 的區(qū)別?
28、JVM 垃圾回收算法?分代中為什么要分三層?
29、OOM 是什么?什么情況會發(fā)生?
30、你覺得你有啥優(yōu)點?
如何系統(tǒng)學習,讓你月入30K?
主要用到的技術(shù)棧
程序員學習交流群:878249276,獲取往期Java高級架構(gòu)資料、源碼、筆記、視頻
Dubbo、Redis、設(shè)計模式、Netty、zookeeper、Spring cloud、分布式、
高并發(fā)等架構(gòu)技術(shù),獲取以上資料
面試大公司基本都會問的技術(shù),也是大公司經(jīng)常用到的一些技術(shù)
性能調(diào)優(yōu)
性能優(yōu)化如何理解
* 性能基準
* 什么是性能優(yōu)化
* 衡量標準
JVM調(diào)優(yōu)
* jvm虛擬機的內(nèi)存解析
* 垃圾收集器
* 實戰(zhàn)調(diào)優(yōu)案例與解決方案
* JVM運行時區(qū)
Java程序員性能優(yōu)化
* 優(yōu)雅的創(chuàng)建對象
* 注意對象的通用方法
* 類的設(shè)計陷阱
* 泛型需要注意的問題
* java方法的那些坑
* 程序設(shè)計的通用規(guī)則
Tomcat
* 線程模型分析
* 生產(chǎn)環(huán)境配置及調(diào)優(yōu)
* 運行機制及框架
Mysql
* 探析BTree機制
* 執(zhí)行計劃深入分析
* Mysql索引優(yōu)化詳解
* 慢查詢分析與SQL優(yōu)化
應用框架源碼解讀
* Spring IOC
* Spring Aop
* Spring MVC
* Spring5的新特性
* Mybatis
Spring IOC
* SpringFrammework體系結(jié)構(gòu)
* 源碼分析
* BeanFactory源碼分析
* BeanDefiniton源碼分析
* Bean生命同期
* 依賴實現(xiàn)
Spring Aop
* Aop源碼分析
* transaction事物分析
* Springcache框架源碼分析
Spring MVC
* MCV簡介與設(shè)計思想
* SpringMVC組成
* 源碼解讀DispatchServlet
Spring5新特性
* 容器增加
* 函數(shù)式編程
* webFlux模塊介紹
* kotlin介紹
* Testing改進
* 兼容性問題
Mybatis
* mybatis組成
* 核心源碼分析
* 手寫Mybatis
分布式架構(gòu)
互聯(lián)網(wǎng)分布式架構(gòu)是非常重要的一個技術(shù),基本上所有的大公司都會用分布式
分布式架構(gòu)思維
* 大型互聯(lián)網(wǎng)架構(gòu)演進過程
* 架構(gòu)師應具備的分布式知識
* 主流分布式架構(gòu)設(shè)計詳解
架構(gòu)開發(fā)基礎(chǔ)
* 多線程開發(fā)
* 高性能NIO框架
架構(gòu)核心服務層技術(shù)
* 服務的前世今生
* 深入理解通訊協(xié)議
* 基于 分布式RPC解決方案
* dubbo全解析
架構(gòu)關(guān)鍵基礎(chǔ)設(shè)施
* 分布式環(huán)境指揮官zookeeper
* 分布式消息通訊異步與MQ
* 分布式緩存
* 數(shù)據(jù)存儲SQL&NoSQL
* 高并發(fā)分流技術(shù)Nginx
分布式解決方案
* 分布式解決方案
* Session跨域共享實戰(zhàn)
* 分布式事物解決方案實戰(zhàn)
* 分布式鎖解決方案實戰(zhàn)
* 分布式單點登錄實戰(zhàn)SSO
* 分布式調(diào)度任務系統(tǒng)
* 分布式配置中心
微服務架構(gòu)技術(shù)
微服務這塊應該不用多說了,知道微服務技術(shù)的至少能多加5k薪資
* SpringBoot
* SpringCloud
* Docker虛擬化技術(shù)
SpringBoot
* 與微服務的區(qū)別于聯(lián)系
* 快速構(gòu)建SpringBoot工程
* SpringBoot核心組件剖析
* 快速集成mybatis實戰(zhàn)
* 快速集成Dubbo及案例實戰(zhàn)
* 構(gòu)建集成 redis及案例實戰(zhàn)
* 構(gòu)建Swagger插件實現(xiàn)API
* 管理及接口測試體系
SpringCloud
* Zuul路由網(wǎng)關(guān)詳解源碼探析
* Ribbon客戶端負載均衡原理
* Feign聲明式服務調(diào)用方式
* Eureka注冊中心構(gòu)件
* Config配置服務中心
* svn、git快速集成
* Sleuth調(diào)用鏈路跟蹤
* BUS消息總線技術(shù)
Docker虛擬化技術(shù)
* 介紹、安裝與使用
* compose部署腳本
* service服務編排
* redis分布式集群部署
* docker file構(gòu)建
* 通過maven插件打包鏡像
* 部署及運行應用程序kubernetes編配
* 構(gòu)建Mysql集群實戰(zhàn)
* 高可用SpringCloud微服務與docker集成實現(xiàn)動態(tài)擴容實戰(zhàn)
團隊協(xié)作開發(fā)
這個是常用的開發(fā)工具類的,提升團隊效率
* Git
* Maven
* Jenkins
* Sonar
程序員學習交流群:878249276,獲取往期Java高級架構(gòu)資料、源碼、筆記、視頻
Dubbo、Redis、設(shè)計模式、Netty、zookeeper、Spring cloud、分布式、
高并發(fā)等架構(gòu)技術(shù),獲取以上資料,合理利用自己每一分每一秒的時間來學習提
升自己,不要再用"沒有時間“來掩飾自己思想上的懶惰!趁年輕,使勁拼,給未來的自己一個交代!
架構(gòu)師視頻資料
熱門工具 換一換