題主某末流985水碩一枚,磕鹽不會,偶然接觸了下編程,而後又稍微學了學Java,後面就走上了程序猿的道路,今年四月僥倖去菊廠實習了一波(雖然沒學到東西)。css
秋招拿了幾個通常的offer(大佬們別見笑):去哪兒、海康威視、招銀網絡科技,最後簽約招銀(四川人,想天天下班吃火鍋)。前端
去年的時候比較迷茫,不知道自學到底須要準備什麼,在牛客上看了不少面經,很是受益,今天也分享一下供參考。本篇文章主要講講自學的歷程及找工做須要注意的地方。java
題主去年四、5月開始決定學習Java,最開始主要看《Head First Java》(該書配有大量插圖及段子,入門佳選,入門切忌《Java編程思想》),而後看了大量的培訓班視頻學習了Java基礎知識,數據庫,Java經常使用框架(不少人看不起培訓班,培訓班的質量確實良莠不齊,可是因爲針對基礎薄弱的童鞋,因此老師講的特別清楚,以我校學子來看學着確定很是輕鬆,我通常開1.6倍到1.8倍的速度聽)。在8月份的時候開始接觸算法和數據結構,剛開始一頭霧水,這算法和數據結構到底學習誰先誰後啊,作題看不懂,看書不太好理解。這裏推薦《算法第四版》,配有大量的圖,讓你詳細理解數據結構設計的過程(入門切忌《算法導論》)。搞完這些以後,有幸加入了一個工做室,(工做室因爲剛成立事情很少後面也解散了,東西沒有學到太多可是認識了幾個朋友)在工做室期間,看了《程序員面試金典》、《劍指offer》,在牛客網上刷了劍指offer上的題(剛開始作題基本上作不了,先想而後看別人的解答仔細思考,再本身慢慢敲,作多了可能就有感受了)。後續又看了《高性能MySQL》(大部頭,有時間必看,時間少選看)、《深刻理解Java虛擬機》(必看,忘了就看,主要是垃圾回收算法、類加載那一塊,其它章節能夠選看)、《併發編程的藝術》(必看,主要了解一下鎖的原理)、《圖解HTTP》、《圖解TCP/IP》(日本人寫的書,結合大量插圖,看着很淺顯易懂)、《Java程序員面試寶典》(徹底的面試知識點羅列的書,評分較低,可是對於梳理知識點是很是適合的)、《數據結構與算法分析 Java語言描述》(以爲算法第四版少了點什麼的話能夠看這個補充)。這些書再結合大量的博客能夠基本覆蓋校招的知識點。mysql
在今年三月份時各大公司開始招聘實習生,題主水平有限去了華爲實習,方向也是Java軟開。因爲所在小組全棧式開發,在裏面耗費了大量時間學習了前端知識(前端依然菜的摳腳),因此總體感受上實習提高不大。實習了四個月以後,在八月底結束實習,因爲部門緣由通知無法轉正。當時內心很氣然並卵,以爲本身在裏面提高不大又耽誤了不少準備的時間,不如在圖書館看書(這也是個教訓,實習不必定有優點,若是實習打雜轉正概率小的話不如在學校夯實基礎準備校招)。所幸題主在華爲實習的時候每晚回去繼續看書,同時在實習時有幸認識北研所一位實習老哥,天天用內部聊天工具跟他交流Java基礎,基礎尚不算太差。(這裏想說一點的是,8月初不少公司就開始了內推招聘,如今內推特別氾濫,基本都要求筆試,筆試難度高於校招,沒有準備的話基本gg,但最好都投一下試試水,題主當時因爲在實習算法沒練好就網易過了筆試。。。)linux
ps:這裏說點我的感悟,當初在準備實習時,覺得刷完劍指offer、程序員面試金典,實習的題應該沒啥問題了。實際狀況是:實習題型基本全是動態規劃(尤爲是揹包問題)、圖搜索,若是早作準備,那徹底沒問題。而等到正式校招時你纔會動態規劃基本題型,這時候的題的難度又上升了,因此算法題得早作準備。c++
校招在九月初的時候各大公司就開始集中網申了,須要提早作好簡歷。題主大概投了40多家公司(題主以爲必定要多投多練,不必定只投本身想去的公司,在面試初期能夠拿幾家公司先練練手,若是運氣好有幸拿了offer更佳。多投能讓你有更多的選擇,若是你只投了幾家公司,而後都掛了,那麼你後面基本只能投小公司了),整個九月上半月天天基本都在考試、投簡歷、作測評,印象最深的是有一天考了四個筆試,當晚投了一個公司簡歷,又作了倆小時新華三的測評,當時大概凌晨一點,整我的都噁心了。git
在面試初期好幾家面試都沒過,加上被菊廠拒了,內心仍是很不爽的,直到九月中旬去哪兒三面直接發了offer,當時有點柳暗花明的感受。後面又面了招銀、海康以內的好幾家公司,在拿到這幾家以後基本就沒找了(期間常常天天四五個面試邀請衝突,拒絕的感受仍是挺爽的,以爲本身以前作這麼多筆試仍是有效果的)程序員
下面講講幾個公司的面試問題:github
酷家樂(一家創業作家裝的創業公司,面試體驗很是好,但二面約的時間和一個現場面試衝突了沒面)web
電面:
遠景能源(新能源的土豪公司,招偏執狂,感受面試官是有那麼點特點的,抓着一個點死問)
電面:
電信IT研發(電信的互聯網公司,有編制,待遇也不錯,前面二十分鐘基礎感受答的基本滾瓜爛熟的,問到架構不太會了)
58同城(面試最差的體驗,酒店超級差,悶的要命,安排還噁心,過去等了三小時,一面面的還不錯,二面沒問多少就掛了,好像都是c++崗,面試官不用Java)
一面:
二面
去哪兒網(面試最好的體驗,第一天上午機試,下午就接到通知明天去面試。在一個去哪兒合做的小清新酒店面試的,全部面試官都特別好,遇到答不上來的會給你解答,三面完直接現場發offer,只要在十月三十一號以前把三方寄給他們就行,簡直不要太良心。當時一面完的時候我說我計算機網絡和操做系統方面不是特別好,一面面試官笑着說:沒事,路還長呢,你去等二面吧。待遇呢給的確實偏低,不過仍是由衷粉一波去哪兒)
一面:(30來分鐘)
二面:(40來分鐘)
三面:(20來分鐘)
順豐科技(最懵逼的一次面試,在品學樓一個教室面的,感受極不正規。一個估計三十來歲可是看着可能四十多歲的大叔面的,徹底get不到他的點)
一面:
招銀網絡科技(招商銀行下面的子公司,之前叫融博,負面新聞較多,今年在成都剛成立分部,因爲是銀行,筆試和麪試都比較強調sql,面試偏重於數據庫和項目。現場面在軟件園那邊的招商銀行面的,當天直接三面,基本每一個人都有三面。面試的感受只有一個:不愧是銀行,太壕了。在七樓面試,層高竟然有五、6米高)
一面(電面15分鐘)
二面(現場面30多分鐘)
三面(現場面30多分鐘)
四面(現場面40多分鐘)
OPPO(廣告部的工程師面的,面試官自我介紹時有個很是騷氣的花名,總體問的比較開放,二面聊着聊着就掛了)
筆試題比較簡單
一面(現場面20來分鐘):
二面(現場面20分鐘):
海康威視(今年擴招特別多,面試相對偏水,面試官感受技術很不錯,問的問題徹底不按套路來)
一面(現場面20分鐘)
二面(現場面5分鐘)
京東(投的成都崗結果北京的面試官面的,一面面試官以爲我還不錯,結果二面面試官在某天晚上深夜11點打電話來講面試一下,說本身還在公司裏面。我和他都很意外我投的成都崗,但倒是他們部門面試,估計特別缺人,問我能實習不,我說要作畢設不能實習就涼了。有點惋惜,留成都京東仍是很不錯的)
一面(50多分鐘)
二面(10來分鐘)
總的來講。面到後面才發現了不少套路,可是好的公司已經基本結束了。因此建議提前準備,即便不能實習,也去投幾個公司練一練,每次把面試問題總結一下,發現裏面的套路,而後本身準備一套吹點。
關於轉行,之前評論宣稱學了幾個月Java隨便找好工做。在如今的面試難度來看,軟件也不是想象中那麼好找工做,一個崗位要的人多可是競爭的人也特別的多,並且,編程最大的驅動力仍是興趣,若是不敢興趣的話,這份工做不會長久。若是以爲本專業不太適合本身或者本身之後不太想去工廠那些地方上班,轉行請趁早,也不必定非的學計算機,能夠選本身方向相近的方向來自學。
若是想轉學計算機,也請早點明確本身的方向,而後在這個方向上深耕一下。不少概念性、全局性的知識,在短時間內可能本身是沒法理解的,須要一段時間、一個過程來理解(我的感受這是科班和非科班主要的差距),不少基礎性的知識可能會在你之後運用某個知識點時才察覺到原來是這樣。在自學了一段時間後,能夠開始接觸數據結構和算法及計算機的一些基礎知識,刷題要趁早,平時多看一些技術博客(CSDN、簡書、博客園),多逛逛GitHub、Stack Overflow,有機會的話儘可能找個工做室或者實習,若是實習不太靠譜,建議在校招前夯實本身的基礎。
關於校招,找工做運氣和實力是46開的,面試掛了不必定是本身不行,也頗有多是和麪試官不太聊的來。並不太過沮喪,面完一個反思總結面好下一個。簡歷上的東西力爭全都會,摸索一套屬於本身的吹點。面試官大部分狀況下不會問框架的基本使用,都喜歡問點底層的東西(面試造火箭,工做擰螺絲),因此會點基本的CRUD是沒有太多做用的,建議深挖底層,好比題主比較擅長吹Spring MVC、HashMap和ConcurrentHashMap1.7和1.8的源碼,面試的時候引導面試官,在一張紙上給他詳細畫本身的思路。好比項目中常常用的Redis,那最好知道Redis的底層的單線程模型和持久化的方式,再深刻一點本身模擬實現一個簡單的Redis能夠嗎(LRU算法,再本身想一想時間複雜度)。使用Mybatis,能夠本身運用JDBC模擬一下Mybatis的實現。這些好多都是題主校招後期才慢慢體會到的(然鵝工做都找完了)。
終於寫完了,排版亂見諒了,祝各位找到心儀的工做,但願本身順利畢業(求善良的導師放過)。
若是以爲有些幫助~歡迎加java學習交流羣,分享面試、求職、提高自個人方法,Q羣:282711949。