本文目錄一覽:
- 1、Java工作3年是什麼水平呢?
- 2、我3年java工作經驗,想去天陽科技就職,這家公司值得去嗎?
- 3、java三年經驗要會redis嗎
- 4、工作3年的Java程序員應該掌握哪些技能
- 5、java 3年工作經驗應具備什麼能力和技能
Java工作3年是什麼水平呢?
這個因人而異,我分享下我周邊一些朋友的情況,按照3個等級優秀、普遍、較差
以下先做如下定義:
優秀:在人群中表現突出,有閃光點/競爭力標籤,佔20%
普遍:能夠獨立做事,有總結意識,大概佔60%
較差:停留在CRUD,總結意識較低,自我認知不夠,過於浮躁/迷茫,20%
例子
優秀:
有可以根據第三方優秀的框架進行二次封裝/優化的能力
有過高流水(如月流水過千萬)或高數量級(日PV超過千萬)或高複雜度(流程/場景複雜)的項目經驗
自我驅動非常良好,表現為有自己的作品,或參與創業,取得不錯的結果
普遍:
能夠完成工作安排的事情,項目中出現的問題/挑戰,也可以在1-2天內解決,能夠主動想自己想要的並且去嘗試
較差:暫不舉例
最後,說一個題外話,衡量一個人的技術水平不能針對工作年限,或者是會的框架的數量,框架/語言只是幫助我們解決問題的一個工具,最重要的是思維,在什麼工作年限會什麼東西也不提倡,不一定要按部就班,有些東西不一定要等到到了特定的年限才應該會,多學習,多總結最重要,希望我的回答能夠令你有所思考觸發,觀點不一致的也歡迎溝通。
我3年java工作經驗,想去天陽科技就職,這家公司值得去嗎?
值得。這家公司總部在北京,全國很多大中城市都有團隊。你說的Java可能是對於天陽科技的主要業務方向來說,不算核心部分。但是如果有機會通過這種方式去進一步深入金融科技行業第一梯隊服務商的話,也很不錯。百度看下其他資料。
java三年經驗要會redis嗎
java三年經驗要會redis。
java是一門面向對象的編程語言。java語言具有功能強大和簡單易用兩個特徵,具有簡單性、面向對象、分散式等特點,可以編寫桌面應用程序、Web應用程序、分散式系統和嵌入式系統應用程序等。
工作3年的Java程序員應該掌握哪些技能
1、基本語法
這包括static、final、transient等關鍵字的作用,foreach循環的原理等等。
2、集合
非常重要,基本上就是List、Map、Set,各種實現類的底層實現原理,實現類的優缺點。
集合要掌握的是ArrayList、LinkedList、Hashtable、HashMap、ConcurrentHashMap、HashSet的實現原理,
(1)ConcurrentHashMap的鎖分段技術
(2)ConcurrentHashMap的讀是否要加鎖,為什麼
(3)ConcurrentHashMap的迭代器是強一致性的迭代器還是弱一致性的迭代器
3、設計模式
設計模式在工作中是非常重要、非常有用的,23種設計模式中重點研究常用的十來種就可以了,面試中關於設計模式的問答主要是三個方向:
(1)你的項目中用到了哪些設計模式,如何使用
(2)知道常用設計模式的優缺點
(3)能畫出常用設計模式的UML圖
4、多線程
假如有Thread1、Thread2、Thread3、Thread4四條線程分別統計C、D、E、F四個盤的大小,所有線程都統計完畢交給Thread5線程去做匯總,應當如何實現?
聰明的網友們對這個問題是否有答案呢?不難,java.util.concurrent下就有現成的類可以使用。
另外,線程池在面試中也是比較常問的一塊,常用的線程池有幾種?這幾種線程池之間有什麼區別和聯繫?線程池的實現原理是怎麼樣的?實際一些的,會給你一些具體的場景,讓你回答這種場景該使用什麼樣的線程池比較合適。
最後,雖然面試問得不多,但是多線程同步、鎖這塊也是重點。synchronized和ReentrantLock的區別、synchronized鎖普通方法和鎖靜態方法、死鎖的原理及排查方法等等,關於多線程,
5、JDK源碼
要想拿高工資,JDK源碼不可不讀。總結一下比較重要的源碼:
(1)List、Map、Set實現類的源代碼
(2)ReentrantLock、AQS的源代碼
(3)AtomicInteger的實現原理,主要能說清楚CAS機制並且AtomicInteger是如何利用CAS機制實現的
(4)線程池的實現原理
(5)Object類中的方法以及每個方法的作用
6、框架
老生常談,面試必問的東西。一般來說會問你一下你們項目中使用的框架,然後給你一些場景問你用框架怎麼做,比如我想要在Spring初始化bean的時候做一些事情該怎麼做、想要在bean銷毀的時候做一些事情該怎麼做、MyBatis中$和#的區別等等,這些都比較實際了,平時積累得好、有多學習框架的使用細節自然都不成問題。
7、資料庫
一些基本的像union和union all的區別、left
join、幾種索引及其區別就不談了,比較重要的就是資料庫性能的優化,如果對於資料庫的性能優化一竅不通,那麼有時間,還是建議你在面試前花一兩天專門把SQL基礎和SQL優化的內容準備一下。
8、數據結構和演算法分析
數據結構和演算法分析,對於一名程序員來說,會比不會好而且在工作中絕對能派上用場。數組、鏈表是基礎,棧和隊列深入一些但也不難,樹挺重要的,比較重要的樹AVL樹、紅黑樹,可以不了解它們的具體實現,但是要知道什麼是二叉查找樹、什麼是平衡樹,AVL樹和紅黑樹的區別。
9、Java虛擬機
Java虛擬機中比較重要的內容:
(1)Java虛擬機的內存布局
(2)GC演算法及幾種垃圾收集器
(3)類載入機制,也就是雙親委派模型
(4)Java內存模型
(5)happens-before規則
(6)volatile關鍵字使用規則
java 3年工作經驗應具備什麼能力和技能
我認為三年對於程序員來說是第一個門檻,這個階段將會淘汰掉一批不適合寫代碼的人。這一階段,我們走出校園,邁入社會,成為一名程序員,正式從書本上的內容邁向真正的企業級開發。我們知道如何團隊協作、如何使用項目管理工具、項目版本如何控制、我們寫的代碼如何測試如何在線上運行等等,積累了一定的開發經驗,也對代碼有了一定深入的認識,是一個比較純粹的Coder的階段
1、語言要求:精通java,j2ee
2、框架要求:springMVC,mybatis或類似框架開發經驗
3、頁面技術要求:熟悉 js,ajax,xml,jquery等技術;
4、資料庫要求:熟悉oracle,mysql等資料庫開發;
5、工具要求:熟練eclipse等開發工具
以上是我ITjob導師跟我分享過的,希望對你有所幫助!
原創文章,作者:SXDD,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/131778.html