|
近三年,其實都是在做一個項目,項目是一個大型的多節(jié)點部署的項目,做了好幾個版本,中間用到了很多技術(shù)和框架, 也用了一些管理工具和敏捷實踐。我這里不是來說項目的,因為最近看了一些招聘信息,結(jié)合項目中用到的一些知識和 管理措施,作為一個程序員,需要去實時評估下自己當(dāng)前的能力是否能跟上時代的步伐,所以,總結(jié)了下作為一個中高 級Java開發(fā)人員或架構(gòu)師,到底需要掌握哪些技能。
當(dāng)然,下述所列都是自己的看法,有興趣的參考下,沒興趣的,就當(dāng)看笑話了吧。
1、對于Java基礎(chǔ)技術(shù)體系(包括JVM、類裝載機制、多線程并發(fā)、IO、網(wǎng)絡(luò))有一定的掌握和應(yīng)用經(jīng)驗。 JVM內(nèi)存分配、JVM垃圾回收; 類裝載機制; 性能優(yōu)化: 反射機制; 多線程; IO/NIO; http://developer.51cto.com/art/201112/307172.htm 網(wǎng)絡(luò)編程; 常用數(shù)據(jù)結(jié)構(gòu)和相關(guān)算法:
2、對面向?qū)ο蟮能浖_發(fā)思想有清晰的認(rèn)識、熟悉掌握常用的設(shè)計模式; 設(shè)計模式:單例模式;工廠模式;代理模式;模板方法模式;責(zé)任鏈模式等
3、熟練掌握目前流行開源框架(spring/springmvc/ibatis),并且對其核心思想、實現(xiàn)原理有一定認(rèn)知; 開源框架:spring; 開源框架:hibernate;
4、熟悉Oracle、MySQL等數(shù)據(jù)庫開發(fā)與設(shè)計以及緩存系統(tǒng)Redis或 Memcached的設(shè)計和研發(fā); 關(guān)系數(shù)據(jù)庫:oracle 關(guān)系數(shù)據(jù)庫:PostgreSQL 緩存系統(tǒng):redis(Nosql) 緩存系統(tǒng):Memcached
5、熟悉底層中間件、分布式技術(shù)(包括緩存、消息系統(tǒng)、熱部署、JMX等) 底層中間件: 應(yīng)用服務(wù)器:Jetty(Tomcat) 消息中間件:ActiveMQ、RabbitMQ 事務(wù)處理中間件: 數(shù)據(jù)訪問中間件:ODBC 工作流中間件:JBPM 分布式技術(shù): 緩存系統(tǒng): 消息系統(tǒng): Restful: 熱部署: JMX: 6、至少一種Java 應(yīng)用服務(wù)器如tomcat Jetty:
7、精通shell編程,熟練應(yīng)用awk、sed、grep、strace、tcudump、gdb等常用命令; 分布式:(多節(jié)點部署) 高并發(fā): 高負(fù)載(大數(shù)據(jù)量): 高穩(wěn)定: 高可用:
9、對配置管理和敏捷研發(fā)模式有所了解 配置管理工具: SVN: Github: 系統(tǒng)升級、雙機、部署、容災(zāi)、備份恢復(fù)、DFX
加分技術(shù): 腳本語言:Python 遠(yuǎn)程調(diào)用: 精通Internet基本協(xié)議(如TCP/IP、HTTP等)內(nèi)容及相關(guān)應(yīng)用 有一定安全意識并了解常見的安全問題解決方案 熟悉常見的一些解決方案及其原理:單點登錄、分布式緩存、SOA、全文檢索、消息中間件,負(fù)載均衡、連接池、 nosql、流計算等; 原文地址:http://blog.csdn.net/gokeibi/article/details/40958303 |
|
|