{eval=Array;=+count(Array);}
從字面來說,正常的面試流程一定是在半個小時左右,五分鐘說明你要么準(zhǔn)備的質(zhì)量不好,要么遇到的公司不太規(guī)范(沒機(jī)會給你展示能力的時間)。
個別現(xiàn)象不代表大體環(huán)境,不用太在意。
另外目前Java的要求確實(shí)越來越高,要求能力越來越高,這個是一個必經(jīng)之路,你要有自知之明
個人介紹:首先介紹下我面試時的自身?xiàng)l件情況,我把自己的情況分為優(yōu)勢和劣勢來說可能更有利于你們比較自身情況。劣勢:1.15年7月畢業(yè)后開始到上海工作,面試的時候是17年3月到4月,一年多的經(jīng)驗(yàn),勉強(qiáng)算兩年經(jīng)驗(yàn)。分析:一年多經(jīng)驗(yàn)我認(rèn)為是比較尷尬的,處于一個不上不下的位置,很多公司比較喜歡招三年經(jīng)驗(yàn)的,或者直接招應(yīng)屆生來培養(yǎng)。 2.畢業(yè)于一個非985/211,勉強(qiáng)上一本的高校。分析:這個相對影響較小,因?yàn)橛泄ぷ鹘?jīng)驗(yàn)后,公司對學(xué)校的要求就沒那么高了,只要是本科就基本沒問題,但是還是有個別叼毛公司只要985/211。 3.前一家公司是傳統(tǒng)電信行業(yè),加入項(xiàng)目組時,項(xiàng)目已經(jīng)上線有段時間了,我們的任務(wù)就是有需求就開發(fā),有bug就優(yōu)化,其他時間就聊騷,各干各的,工作一年多跟在養(yǎng)老一樣,用一句話說就是編程5分鐘,扯淡2小時,項(xiàng)目經(jīng)驗(yàn)嚴(yán)重不足,沒開發(fā)過很難的需求。分析:這一點(diǎn)是最傷的,公司招有經(jīng)驗(yàn)的就想看你都干了些什么牛批的東西,結(jié)果你告訴面試官我寫的需求都是垃圾。優(yōu)勢:1.大學(xué)時拿過比較多的獎,每年都是校級優(yōu)秀學(xué)生,畢業(yè)時是市級優(yōu)秀畢業(yè)生,拿過省級ACM二等獎等。分析:大學(xué)的榮譽(yù)對一個有工作經(jīng)驗(yàn)的人來說,公司不一定會看重,但是可能會對面試官產(chǎn)生微妙的影響,特別是ACM獎,我碰到過有的面試官也是搞過ACM的,有共同的話題聊起來總是比較容易的,但是也要注意不能把這一欄篇幅寫的過于多,只能當(dāng)作點(diǎn)綴用,我當(dāng)時是放在簡歷最后一欄,簡要的寫了最主要的幾個獎。 2.良好的溝通交流能力。分析:這個能力不會是關(guān)鍵性的,但是可以加分。 3.較強(qiáng)的學(xué)習(xí)能力和邏輯思維能力。分析:有些公司和面試官還是比較看重一個人的學(xué)習(xí)能力的,經(jīng)驗(yàn)代表著你現(xiàn)在在什么級別,而學(xué)習(xí)能力則代表著你將來能到達(dá)什么級別。學(xué)習(xí)過程:看了我的優(yōu)劣勢介紹,你會發(fā)現(xiàn)我的優(yōu)勢相對于我的劣勢來說,簡直不值一提。我自己對此也有清晰的認(rèn)識,因此從過完年之后,我就開始抓緊空閑時間學(xué)習(xí)。學(xué)習(xí)的過程如下:1.看面試題正常人第一步肯定都會看面試題,我也不例外,在看的過程中,我發(fā)現(xiàn)有些文章寫的不錯,對我?guī)椭恍≈档猛扑],如下: Java面試題全集(上)很多基礎(chǔ)的東西,建議先看。 各大公司Java后端開發(fā)面試題總結(jié) 面試心得與總結(jié)—BAT、網(wǎng)易、蘑菇街 關(guān)于Java面試,你應(yīng)該準(zhǔn)備這些知識點(diǎn)2.深入學(xué)習(xí)在看面試題的過程,你會遇到一些自己沒接觸過的或者以前沒深入學(xué)習(xí)過的知識,例如最常問的HashMap內(nèi)部實(shí)現(xiàn)原理,這就促使你得開始去看jdk的源碼或者是學(xué)習(xí)一些新的東西??丛创a是很重要的一步,起步很難,但是會讓你收益良多,看源碼的過程如果碰到無法理解的地方,可以百度看下別人的理解。我學(xué)習(xí)源碼的過程中,看過幾個人的關(guān)于源碼的文章寫的很不錯,如下: 五月的倉頡 占小狼 zhangshixi的Core java系列3.熟悉項(xiàng)目找出自己工作以來開發(fā)過的最叼的功能,將整個功能的流程和涉及的東西吃透。項(xiàng)目是面試中必問的環(huán)節(jié),一般是以一個功能點(diǎn)為基礎(chǔ)展開問,因此你必須對這個功能有很深的認(rèn)識,不能有模糊的地方。如果有時間,能把涉及到的知識點(diǎn)也搞懂最好。4.做面試題有不少公司是有面試的,如果你沒有準(zhǔn)備過,很容易在各種小地方犯錯,建議去一些面試題網(wǎng)站多做些題目,我自己是用的牛客網(wǎng)。5.學(xué)習(xí)記錄把自己每天的學(xué)習(xí)時間和學(xué)習(xí)內(nèi)容記錄下來,可以讓自己更有動力的學(xué)習(xí),學(xué)習(xí)是一個枯燥的過程,你必須讓自己時刻保持有動力。投簡歷、約面試環(huán)節(jié)1.在哪些網(wǎng)站投?拉勾網(wǎng)、BOSS直聘、獵聘網(wǎng)。2.是否該海投?投簡歷分為兩個情況。 1)沒有社招面試經(jīng)驗(yàn):建議采取海投的方式,只要職位要求跟自己比較匹配都可以投,累計面試經(jīng)驗(yàn)。這個環(huán)節(jié)可以把投簡歷的網(wǎng)站增加兩家:智聯(lián)和無憂。 2)自認(rèn)為社招面試經(jīng)驗(yàn)已經(jīng)足夠:投那些職位匹配、公司滿意的職位。公司評價可以去看準(zhǔn)網(wǎng)、百度、知乎等查詢。3.一天約幾家面試合適?最理想的情況為2家面試,上午一般在10點(diǎn)左右,下午一般在2點(diǎn)左右。建議把理想的公司放下午,因?yàn)橄挛绲臅r間比較充足,可以讓公司更充分的了解你。我開始面的時候,每次都是上午面的不好,下午面的不錯。4.投簡歷經(jīng)常沒下文?我當(dāng)初也沒想到簡歷篩選這關(guān)有這么難,可能是我的簡歷確實(shí)亮點(diǎn)不多,再者HR很多都不是行內(nèi)人,因此他們看得最直接的就是你上家的公司和你畢業(yè)的學(xué)校,如果你不是從牛逼的公司/學(xué)校出來,可能會碰到和我一樣的情況,應(yīng)對的辦法就是多投。5.是否該裸辭?我一開始是邊上班邊投,然后利用調(diào)休時間,或者請假去面試。后來,面試機(jī)會越來越多,請假太頻繁了,自己都不好意思了,并且自己也已經(jīng)有足夠的信心,這個時候我選擇了裸辭。裸辭還有一個原因是,在面試過程中你會發(fā)現(xiàn),有的公司要人要的緊,如果你的辭職流程過長可能會導(dǎo)致你錯過這個公司。6.注意事項(xiàng)1)面試前一天把路線和時間算好,最好別遲到。 2)背個書包,帶好簡歷、充電寶、紙巾、雨傘。面試環(huán)節(jié)1.筆試常見的問題?面試常見的問題上面給的面試題鏈接基本都有。我只提幾點(diǎn):1)寫SQL:寫SQL很??疾靏roup by、內(nèi)連接和外連接。2)手寫代碼:手寫代碼一般考單例、排序、線程、消費(fèi)者生產(chǎn)者。我建議排序算法除了冒泡排序,最好還能手寫一種其他的排序代碼。試想:如果一般面試者都寫的冒泡排序,而你寫的是快速排序/堆排序,肯定能給面試官留下不錯的印象。2.面試流程?1)讓你自我介紹 2)問Java基礎(chǔ)知識 3)問項(xiàng)目 4)情景問題,例如:你的一個功能上了生產(chǎn)環(huán)境后,服務(wù)器壓力驟增,該怎么排查。 5)你有什么想問面試官的3.面試常問的知識點(diǎn)?1)集合相關(guān)問題(必問): HashMap、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList的底層實(shí)現(xiàn)。 HashMap和Hashtable的區(qū)別。 ArrayList、LinkedList、Vector的區(qū)別。 HashMap和ConcurrentHashMap的區(qū)別。 HashMap和LinkedHashMap的區(qū)別。 HashMap是線程安全的嗎。 ConcurrentHashMap是怎么實(shí)現(xiàn)線程安全的。 2)線程相關(guān)問題(必問): 創(chuàng)建線程的3種方式。 什么是線程安全。 Runnable接口和Callable接口的區(qū)別。 wait方法和sleep方法的區(qū)別。 synchronized、Lock、ReentrantLock、ReadWriteLock。 介紹下CAS(無鎖技術(shù))。 什么是ThreadLocal。 創(chuàng)建線程池的4種方式。 ThreadPoolExecutor的內(nèi)部工作原理。 分布式環(huán)境下,怎么保證線程安全。 3)JVM相關(guān)問題: 介紹下垃圾收集機(jī)制(在什么時候,對什么,做了什么)。 垃圾收集有哪些算法,各自的特點(diǎn)。 類加載的過程。 雙親委派模型。 有哪些類加載器。 能不能自己寫一個類叫java.lang.String。 4)設(shè)計模式相關(guān)問題(必問): 先問你熟悉哪些設(shè)計模式,然后再具體問你某個設(shè)計模式具體實(shí)現(xiàn)和相關(guān)擴(kuò)展問題。 5)數(shù)據(jù)庫相關(guān)問題,針對Mysql(必問): 給題目讓你手寫SQL。 有沒有SQL優(yōu)化經(jīng)驗(yàn)。 Mysql索引的數(shù)據(jù)結(jié)構(gòu)。 SQL怎么進(jìn)行優(yōu)化。 SQL關(guān)鍵字的執(zhí)行順序。 有哪幾種索引。 什么時候該(不該)建索引。 Explain包含哪些列。 Explain的Type列有哪幾種值。 6)框架相關(guān)問題: Hibernate和Mybatis的區(qū)別。 Spring MVC和Struts2的區(qū)別。 Spring用了哪些設(shè)計模式。 Spring中AOP主要用來做什么。 Spring注入bean的方式。 什么是IOC,什么是依賴注入。 Spring是單例還是多例,怎么修改。 Spring事務(wù)隔離級別和傳播性。 介紹下Mybatis/Hibernate的緩存機(jī)制。 Mybatis的mapper文件中#和$的區(qū)別。 Mybatis的mapper文件中resultType和resultMap的區(qū)別。 Mybatis中DAO層接口沒有寫實(shí)現(xiàn)類,Mapper中的方法和DAO接口方法是怎么綁定到一起的,其內(nèi)部是怎么實(shí)現(xiàn)的。 7)其他遇到問題: 介紹下棧和隊(duì)列。 IO和NIO的區(qū)別。 接口和抽象類的區(qū)別。 int和Integer的自動拆箱/裝箱相關(guān)問題。 常量池相關(guān)問題。 ==和equals的區(qū)別。 重載和重寫的區(qū)別。 String和StringBuilder、StringBuffer的區(qū)別。 靜態(tài)變量、實(shí)例變量、局部變量線程安全嗎,為什么。 try、catch、finally都有return語句時執(zhí)行哪個。 介紹下B樹、二叉樹。 ajax的4個字母分別是什么意思。 xml全稱是什么。 分布式鎖的實(shí)現(xiàn)。 分布式session存儲解決方案。 常用的linux命令。一些經(jīng)驗(yàn):1.先投一些普通公司,等面出了心得再去投理想的公司。 2.不熟悉的技術(shù)不要主動提。 3.對于那種實(shí)習(xí)期6個月還打8折的公司,除非你沒有其他選擇了,否則不要去。 4.小公司喜歡在薪水上壓你,開的時候適當(dāng)提高。 5.不要去參加招聘會,純粹是浪費(fèi)時間。 6.把面試當(dāng)作一次技術(shù)的交流,不要太在意是否能被錄取。 7.公司一般面完就決定是否錄取了,讓你回去等消息這種情況一般沒戲,無論你自己覺得面的有多好。 8.盡量少通過電話面試,效果不好。 9.在面試的日子里,要保持每天學(xué)習(xí),無論是學(xué)習(xí)新東西還是復(fù)習(xí)舊東西。 10.拿到offer了,問問自己這個公司讓自己100%滿意了嗎,如果不是,請繼續(xù)努力找更好的。 11.通過面試官可以大概判斷這家公司的情況。 12.拉勾投的簡歷很多會被篩掉,但是拉勾還是面試機(jī)會的最主要來源。 13.理想的公司可以多投幾次,我有好幾次都是第一次投被篩掉,多投幾次就過的經(jīng)驗(yàn)。 14.問到自己有深入研究過的知識,抓住機(jī)會好好表現(xiàn),不要輕易放過。
JAVA崗面試越來越難,是企業(yè)對JAVA人員的要求越來越高。
一個行業(yè)在發(fā)展初期是非常需要人力物力各種資源的填充,前景好的擴(kuò)張更快更大,也可以稱作是野蠻生長吧,而在互聯(lián)網(wǎng)行業(yè)這塊尤為突出?;ヂ?lián)網(wǎng)在咱們國家發(fā)展起來不過20幾年時間,但是目前我國互聯(lián)網(wǎng)普及率達(dá)已經(jīng)達(dá)到了67.0%,網(wǎng)民規(guī)模達(dá)9.40億,可見它的擴(kuò)張速度有多快,市場有多大。由于互聯(lián)網(wǎng)計算機(jī)行業(yè)的吃香,加之行業(yè)發(fā)展初期入行門檻要求不高,無數(shù)的計算機(jī)專業(yè)或非計算機(jī)專業(yè)轉(zhuǎn)行的人才都投身進(jìn)來,無論技術(shù)高低,都有適合而充足的崗位源源不斷的出現(xiàn)?;ヂ?lián)網(wǎng)行業(yè)一度是大家想盡辦法,通過大學(xué)科班,或參加社會培訓(xùn),或是自學(xué)等方式,都想進(jìn)入的高薪行業(yè),但是主要都是填充了基礎(chǔ)類的技術(shù)崗位,比如碼農(nóng),初級開發(fā)工程師。
而發(fā)展到這兩年,整個互聯(lián)網(wǎng)行業(yè)趨于相對穩(wěn)定的狀態(tài),開發(fā)技術(shù)體系成熟完整,各崗位分工更精細(xì),崗位要求也更高,而低技術(shù)崗位日漸飽和,企業(yè)更多的是需要中端和高精尖人才。其次是市場變化越來越快,技術(shù)的更新,用戶對軟件質(zhì)量的要求越來越高。在市場和行業(yè)發(fā)展的大環(huán)境下,就要求了開發(fā)人員要有過硬的技術(shù)和較高的職業(yè)素質(zhì),才能滿足客戶不斷變化的需求。現(xiàn)在已經(jīng)不再是會寫代碼就能做好開發(fā)的時代,要求更加系統(tǒng)全面性人才,過硬的技術(shù)和好的學(xué)習(xí)能力,學(xué)歷層次。
其次從Java開發(fā)人員自身職業(yè)發(fā)展出發(fā),進(jìn)入了互聯(lián)網(wǎng)行業(yè),并不代表崗位永久穩(wěn)定,尤其絕大部分人初期基本都是碼農(nóng)崗位,Java初級開發(fā)工程師,還需要咱們繼續(xù)學(xué)習(xí)看書,請教技術(shù)大佬,才能穩(wěn)定下來甚至有崗位晉升。技術(shù)本身是不斷更新?lián)Q代的,就要求我們開發(fā)人員在已掌握的技術(shù)上不斷的學(xué)習(xí)新的技術(shù),一方面提升自己,另一方面是更好的滿足市場和用戶需求,做出更好的產(chǎn)品。其次從個人出發(fā),誰也不愿意一直待在一個崗位上,也都想提升薪資待遇,尤其是在熱門的行業(yè),不斷有新鮮的血液進(jìn)入,優(yōu)勝劣汰,不學(xué)習(xí)終將會被淘汰,而且Java開發(fā)技術(shù)崗位,就是需要開發(fā)人員集中更多的精力和時間,說白了就是需要年輕人,如果你原地不動,就只能被替代。
Java語言依然是目前使用最廣的開發(fā)語言,本身邏輯思維要求高,需要從業(yè)人員有一定的學(xué)習(xí)能力,初學(xué)者如果學(xué)歷層次太低,基本都很難掌握好,一般能學(xué)個初級的出來做碼農(nóng)。長遠(yuǎn)來看,如果學(xué)歷不夠 ,沒有什么學(xué)習(xí)能力的話,發(fā)展并不會很好,可以考慮換個技術(shù)含量低一點(diǎn)的方向。開發(fā)不比測試,測試崗位干得越久越吃香,開發(fā)崗位要長久就是要做中高端技術(shù)人才?,F(xiàn)在不僅是企業(yè)對開發(fā)人員要求高,我們自己更要對自己高要求,才能跟上企業(yè)的發(fā)展,用戶的需要。
所以,時代在發(fā)展,技術(shù)在進(jìn)步,還僅僅只是掌握了初級技能就想高薪的,那能力還是遠(yuǎn)遠(yuǎn)不夠的,覺得面試越來越難,那是時候該提高一下自己了。
確實(shí)需要不打無準(zhǔn)備的仗,但是你并沒有辦法理解公司招崗位的真正需求,很多原因都會導(dǎo)致重新招崗,另外就是看基礎(chǔ)也就是基本功,很多人功底好,幾句話就打動了面試官,有人入行不深準(zhǔn)備再久也GET不到那個點(diǎn)!
0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答