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