從走出校門到Java實(shí)習(xí)生生活
序
男,95年,這個(gè)學(xué)期就大四了,非計(jì)算機(jī)專業(yè)(數(shù)字媒體)。目前在二線城市做Java實(shí)習(xí)生,待遇一般,應(yīng)該算一個(gè)正常的實(shí)習(xí)生水平吧:租的一個(gè)約10平米的小單間,實(shí)習(xí)工資-衣食住行-雜七雜八的小消費(fèi)差不多結(jié)余100塊左右,一般般,勉勉強(qiáng)強(qiáng)能養(yǎng)活自己。
技術(shù)的基礎(chǔ)大概是這樣,從去年4月開始學(xué)技術(shù),從jsp開始一直學(xué)到 MVC、這樣的技術(shù)棧,中間做了幾個(gè)小項(xiàng)目(CMS、管理系統(tǒng)等)。從去年10月開始轉(zhuǎn)做了,水平也就是四大組件+藍(lán)牙/NDK+一些庫的技術(shù)以及稍微了解了一些什么事件機(jī)制、OOM優(yōu)化。嗯,這樣隨手列出來感覺自己水平一般般,就是能做一些J2EE和項(xiàng)目的水平。
寫簡歷
因?yàn)閺?去年10月~出校門的7月 這一段時(shí)間一直在做開發(fā),我自己也一度認(rèn)為我出來后也只是做開發(fā)的,所以投了很多的簡歷,簡歷上除了寫的技術(shù),還寫了一大堆的Web開發(fā)中的、上去,項(xiàng)目經(jīng)驗(yàn)也是臃腫的不行,2個(gè)Web,2個(gè)的,看上去內(nèi)容挺多的,但是兩個(gè)方面的開發(fā)都不突出,于是我就想了一個(gè)策略,分簡歷,做一份Java簡歷,做一份簡歷。兩者各突出其重心,投簡歷的時(shí)候分別投不同的崗位。大概效果可以看下面區(qū)別
Java簡歷
熟練Java開發(fā),良好的代碼風(fēng)格以及IOC/DI、AOP、OOP、高內(nèi)聚、低耦合等編程思想與設(shè)計(jì)模式
掌握//等服務(wù)器的基本配置與使用。
掌握/// MVC等主流后端開發(fā)框架,具備相關(guān)經(jīng)驗(yàn)
熟悉、、等關(guān)系型數(shù)據(jù)庫的使用,熟練編寫SQL語句,了解緩存技術(shù)
掌握微信公眾號(hào)開發(fā)技術(shù),XML與JSON的解析技術(shù),.0技術(shù)等
掌握 App開發(fā)技術(shù)
掌握/CSS3//等前端技術(shù),能夠編寫PC/移動(dòng)/響應(yīng)式頁面
掌握的使用與常用腳本的編寫,掌握、、Git等工具使用
簡歷
熟練Java開發(fā),良好的代碼風(fēng)格以及IOC/DI、AOP、OOP、高內(nèi)聚、低耦合等編程思想與設(shè)計(jì)模式
熟練的四大組件、常用與第三方UI控件與布局的使用、了解View機(jī)制與自定義控件
了解 IPC機(jī)制、圖片緩存、NDK技術(shù)、 es、藍(lán)牙開發(fā)技術(shù)
熟悉 SDK的開發(fā),了解、、等第三方框架的使用
掌握等Java后臺(tái)開發(fā)框架的使用,與服務(wù)器的配置
熟悉、等關(guān)系型數(shù)據(jù)庫的使用,熟練編寫SQL語句
掌握微信公眾號(hào)開發(fā)技術(shù),XML與JSON的解析技術(shù),、.0技術(shù)等
掌握/CSS3//等前端技術(shù),能夠編寫PC/移動(dòng)/響應(yīng)式頁面
掌握的使用與常用腳本的編寫,掌握、、Git等工具使用
投簡歷
因?yàn)樵谀橙木€城市,當(dāng)?shù)鼗ヂ?lián)網(wǎng)產(chǎn)業(yè)不是很發(fā)達(dá),準(zhǔn)備去網(wǎng)上投遞一些二線城市的公司的簡歷,我試過的工具有51、智聯(lián)、拉勾、BOSS直聘。前兩個(gè)不是純IT招聘的,上面投的全部沒消息了;拉勾上投的比較多,但是最后可以說99%的簡歷直接被拒絕了,BOSS直聘上面的比較多,性質(zhì)不同,這里比較推薦的是后面兩個(gè)。
入職后,發(fā)現(xiàn)拉勾上的簡歷實(shí)在是太多了,對(duì)于“Java實(shí)習(xí)生”這個(gè)崗位來說,每天HR都能轉(zhuǎn)3~8份簡歷到技術(shù)經(jīng)理這邊,平常工作時(shí)間都在敲代碼,沒時(shí)間看,一般都是下班前或者吃飯的時(shí)候看幾個(gè),不通過的也不和一個(gè)個(gè)的去跟HR反饋,就丟到郵箱里,所以反饋的速度比較慢的,但一般來說投了簡歷之后過了一周還沒動(dòng)靜的就代表沒什么希望了。
BOSS直聘這邊聊天的人大多是HR,所以聊技術(shù)問題是沒有用的,所以大多數(shù)都是隨便聊一下,然后要簡歷,給技術(shù)VP看看,如果可以的話就安排你的面試時(shí)間。
做個(gè)比較來說:拉勾的一整套機(jī)制很符合公司的招聘流程,在互聯(lián)網(wǎng)行業(yè)也是比較知名的從走出校門到Java實(shí)習(xí)生生活,競爭比較大,安排面試的幾率比較低。BOSS直聘這邊因?yàn)檎衅甘峭ㄟ^聊天進(jìn)行的,簡歷表現(xiàn)的東西有限,通過聊天的方式能快速了解一些個(gè)人經(jīng)歷方面的東西,還不錯(cuò)。另外一些大一些的公司自己公司網(wǎng)站上也有招聘入口也可以關(guān)注一下。
面試
坐了通宵的火車從學(xué)校來到這個(gè)城市后,剛到的第一天下午就有一個(gè)面試,舟車勞頓的我一晚上不僅沒睡,而且不敢睡,臨時(shí)安置在學(xué)長家,然后急急忙忙的搜面試資料,畢竟是第一次面試,搜資料的過程中都睡著了1次,然后中午隨便找了一家店吃了點(diǎn)東西就去面試了。HR先拿了一張個(gè)人信息表給我填,然后找了個(gè)技術(shù)人員給我面試,記錄大概如下:
1、你的項(xiàng)目里用到了,這個(gè)是普通的嗎?
不是,用的是它封裝好了的
2、簡單的說一下你知道的設(shè)計(jì)模式
單例、、責(zé)任鏈、觀察者、工廠……反正一大堆,看了一本設(shè)計(jì)模式的書,幾十種想不起來了
3、那你說一下模式的最廣泛的應(yīng)用
當(dāng)然是生成對(duì)話框啦
4、模式的鏈?zhǔn)接惺裁磧?yōu)點(diǎn)
代碼更加優(yōu)雅
5、除了優(yōu)雅呢,還有什么優(yōu)點(diǎn)?
呃。。。(沒答上來,應(yīng)該是根據(jù)實(shí)際的需求可以執(zhí)行不同的方法,更加靈活。比如說生成的對(duì)話框有幾個(gè)按鈕,這些都很好控制的。雖然能理解這個(gè),但是沒有答上來)
6、同一個(gè)中之間如何進(jìn)行通信,什么時(shí)候執(zhí)行會(huì)空指針
我在項(xiàng)目里面都是操作同一個(gè),沒有通信過,要我想的話應(yīng)該可以先從碎片傳到中,再傳到碎片中去;第二種方法應(yīng)該是可以用AIDL實(shí)現(xiàn)的(面試官:一般不這么弄)。
7、簡單說一下你知道的有幾種以及他們的特點(diǎn)
不知道(我只用過這個(gè)類,其他的子類沒用過)
8、說一下線程池把
不知道(回去立馬學(xué)了一遍)
9、說一下中的IOC把
是在說注解式把,我一般不用的,用注解開發(fā)降低運(yùn)行效率,服務(wù)器端開發(fā)一般就不需要考慮這個(gè)問題
10、為什么用注解會(huì)降低效率
因?yàn)樯婕暗筋惖募虞d器與反射……效率比較低
11、有沒有注解是不降低效率的?
的注解是在編譯的時(shí)候生成Java文件,僅在編譯時(shí)需執(zhí)行,執(zhí)行后就和普通代碼一樣了
12、OOM的解決方案?
用更小的圖片、壓縮圖片、使用、回收。(這個(gè)答的特別爛)
水平有限,只能回答成這個(gè)樣子,他問的問題也是按照我簡歷寫的以及他們公司的項(xiàng)目問的,可能有些也答錯(cuò)了,不過半個(gè)小時(shí)的聊天和答問還是挺愉快的,技術(shù)面試應(yīng)該算是通過了吧。然后HR來談待遇,我報(bào)了個(gè)我現(xiàn)在(寫這個(gè)文章的時(shí)候)實(shí)習(xí)的工資,她覺得有點(diǎn)高,說他們這邊招實(shí)習(xí)生一般是給3500左右的,不過剛剛面試的人說我技術(shù)很成熟,然后要我回去聽消息,他們還要對(duì)去他們公司的其他實(shí)習(xí)生面試,對(duì)比一下再?zèng)Q定。這是在BOSS直聘上投的,整體感覺還好,但是最后并沒有要我:)。
面試這家后出門沒幾分鐘就收到另外一家的面試電話,通知我明天上午11點(diǎn)到公司面試,嗯,對(duì),這次又是Java崗位,面試完后,又回學(xué)長家開始搜Java面試題(雖然第二天一個(gè)都沒問到),通宵的站票加上到處跑,實(shí)在是太困了,6點(diǎn)鐘就睡了。第二天算好時(shí)間出發(fā)去面試,有點(diǎn)遠(yuǎn),要1個(gè)多小時(shí),結(jié)果我坐公交車坐反了!!坐反了!!坐反了!!我就說怎么就到終點(diǎn)站了?!!眼看著就趕不上面試了,我掏出了現(xiàn)代文明利器——滴滴打車,然后40分鐘跨了2個(gè)區(qū)就到了。
第二次面試底氣足了一點(diǎn),先去做了一套Java選擇題,30道,主要考的是Java 基礎(chǔ)部分(多線程、IO、、計(jì)算、集合、泛型)的,以及、等框架,大概弄清楚了公司用的技術(shù),然后就開始面試了,先告訴我這筆試題錯(cuò)了5個(gè),還不錯(cuò)。(入職之后發(fā)現(xiàn)很多別的來面試的錯(cuò)一大半,20的大有人在,我應(yīng)該是得益于考了一個(gè)的Java證吧,雖然沒什么用,但是的的確確是把Java基礎(chǔ)給弄的挺牢固的)后面正式開始面試,結(jié)果因?yàn)槲乙呀?jīng)大半年沒做開發(fā)了,一直在做開發(fā),面試官要我舉幾個(gè)開發(fā)中碰到的難點(diǎn)問題,我居然一個(gè)Web開發(fā)的難點(diǎn)都沒想起來!!光想著開發(fā)中碰到的NDK驅(qū)動(dòng)編程與修改安卓系統(tǒng)觸摸屏的c代碼了……,硬著頭皮的和面試官說了一下開發(fā)中的難點(diǎn)以及一次碰到的金融信用評(píng)分系統(tǒng)的軟件結(jié)構(gòu)設(shè)計(jì)問題,然后機(jī)智的加了一句
不管是開發(fā)還是Java開發(fā),雖然他們是不同方向的開發(fā),但是我覺得本質(zhì)上都是編程的邏輯和業(yè)務(wù)思維在不同程序中的不同體現(xiàn)而已。
雖然公司用的和我都沒學(xué)過,但是我會(huì) MVC和,有了這種編程思維從其他框架轉(zhuǎn)用這些也是很快的。編程最重要的其實(shí)也不是這些框架,而是編程的邏輯和思想。
(說的好亂,亂到我自己都不知道我想表達(dá)的東西表達(dá)出來了沒有)
雖然比第一次面試有底氣,但是這次10分鐘左右就結(jié)束了,感覺表現(xiàn)的沒上一次的好,然后HR來和我談待遇,說了一下我的學(xué)習(xí)經(jīng)歷和項(xiàng)目經(jīng)歷,然后我就把我的“創(chuàng)業(yè)”經(jīng)歷拿出來“吹”,然后說了一下自己申請(qǐng)到的創(chuàng)業(yè)基金和項(xiàng)目資金什么的,然后按著招聘啟事上的報(bào)價(jià)說了一個(gè)價(jià),也是感覺HR覺得我報(bào)的略高,但還是說要我回去等,一周內(nèi)出結(jié)果。送我走的時(shí)候我,她突然問我要不要先參觀一下公司?WHAT??這代表是要了我嘛?雖然內(nèi)心很激動(dòng),但是強(qiáng)行裝作很淡定的樣子。然后我把公司三層樓參觀了個(gè)遍,然后我就回來了。
那天很高興,但是擔(dān)心是不是因?yàn)閳?bào)價(jià)太高了。然后問了一下群里學(xué)長,二線城市的實(shí)習(xí)工資大概什么水平?群里的學(xué)長一報(bào)價(jià),我就覺得果然是我報(bào)價(jià)報(bào)高了……可是真的很想進(jìn)今天面試公司,晚上很忐忑,想著第二天和HR詢問情況提一下降個(gè)500的報(bào)價(jià)什么的,真的很希望能進(jìn)那個(gè)公司。然后第二天我還再糾結(jié)投下家的簡歷是哪一家的時(shí)候HR就直接打電話給我說我通過了……
入職
公司用的開發(fā)環(huán)境是,嗯,作為一個(gè)學(xué)習(xí)全家桶的多媒體設(shè)計(jì)類的專業(yè)來說,表示根本用不習(xí)慣啊,第一天勉勉強(qiáng)強(qiáng)學(xué)了一下什么apt-get之類的命令,把STS\\之類的軟件都安裝好了,第二天丟了個(gè)SSH項(xiàng)目給我,然后花了三天的時(shí)間把、學(xué)好了,因?yàn)橛谢A(chǔ)學(xué)起來還挺快,(偷偷看的視頻學(xué)的,用了x2的速度)并把項(xiàng)目看的差不多了,這是一個(gè)小項(xiàng)目,大概也就8張表的大小。
第一周就這么過了,然后第二周跟我說了有好多個(gè)優(yōu)化的地方要我優(yōu)化一下,然后我就一個(gè)個(gè)模塊的改,還有好幾個(gè)SQL的優(yōu)化,這個(gè)項(xiàng)目雖然不大,但數(shù)據(jù)量是百萬級(jí)別的,然后我就打開慢慢讀,發(fā)現(xiàn)還真有很多可以優(yōu)化的地方,然后就把提出的問題全部弄好了。嗯,半個(gè)月的時(shí)間就這樣過了,很快,也就兩個(gè)星期。
第三周就安排了我和PM聯(lián)系開發(fā)一個(gè)新的模塊,然后給我預(yù)估2周的時(shí)間開發(fā)完,然后我就開始設(shè)計(jì)程序的流程,和PM確定好了之后,差不多3天就開發(fā)完了,就跑去和PM交付,結(jié)果測試了一下,使用這個(gè)系統(tǒng)的人覺得有些功能設(shè)計(jì)的不好,要變,然后就又變了需求,就開始新的需求的開發(fā)。
第四周這個(gè)功能就發(fā)布投入使用了。這個(gè)一周又接了一個(gè)微信掃碼對(duì)接的接口功能,然后我又開發(fā)了2天弄好了。這個(gè)系統(tǒng)基本上就比之前要優(yōu)化不少了。看安排給我的項(xiàng)目都做的ok,就拿公司對(duì)外的一個(gè)項(xiàng)目給我看,拿到SVN后,一看項(xiàng)目我傻眼了,我用搜索統(tǒng)計(jì)了一下java文件900+,數(shù)據(jù)庫的表格200+張。先隨便看了一下,發(fā)現(xiàn)看不懂,然后去看web.xml,根本就沒有熟悉的的,用了一個(gè)什么見都沒見過,搜也搜不到的框架(后來閱讀代碼發(fā)現(xiàn)這個(gè)框架居然是公司自己基于寫的),然后硬著頭皮看xml文件一點(diǎn)一點(diǎn)的看業(yè)務(wù)邏輯,最后終于看通了。
然后開始讓我寫一個(gè)給Ajax的接口,熟練后差不多1天就寫好了,然后第二天和前端一起調(diào)試,又接了一個(gè)Ajax接口,然后第三天寫接口,也寫的很快,然后繼續(xù)和前端調(diào)試,嗯感覺很順利的時(shí)候就是出問題的時(shí)候,上線后的系統(tǒng)不正常了,因?yàn)榍岸藢懥艘粋€(gè),但是沒有賦值!因?yàn)檫@個(gè)值是后端賦的,然后我不知道應(yīng)該是我來做的,上線后的系統(tǒng)表單不能提交,因?yàn)槟莻€(gè)值沒有獲取到。產(chǎn)品、前端、都急的不行,然后我急急忙忙的fix后,新的接口和以前的一個(gè)接口在使用的時(shí)候又有Bug了,導(dǎo)致頁面上什么數(shù)據(jù)都不顯示……然后一行人又的去找問題,發(fā)現(xiàn)是另外一個(gè)系統(tǒng)的前端的問題。反正就是這類大型網(wǎng)站涉及到多個(gè)系統(tǒng)的對(duì)接,我剛?cè)肼氝€不了解這些接口分別對(duì)應(yīng)的是什么系統(tǒng),所以出了Bug,急急忙忙的一周的最后一天就這樣結(jié)束了……
批評(píng)
新人入職不免被批評(píng),雖然不愿意聽,但還是要接受,批評(píng)的再多,也是為我好,為項(xiàng)目好,整理如下:
1. 在環(huán)境下,你必須要會(huì)用vim,不要用那個(gè)什么
2. 代碼縮進(jìn)要對(duì)齊、對(duì)齊,等號(hào)前后的空格也很重要,你這樣誰看到都煩
3. 注釋要簡單明了,你這注釋自己讀一遍試試?
4. 代碼前要檢查,每一個(gè)修改的地方再看一下,這種代碼還要提交到線上的服務(wù)器的嗎?!
5. 獲取到的值要先自己判斷空指針,再使用
6. 開發(fā)使用模式,不要用什么
感受
公司里的項(xiàng)目比在學(xué)校做的要復(fù)雜的多的多的多,學(xué)校里最多做5~8張表的項(xiàng)目,這里這個(gè)200個(gè)表的涉及到的業(yè)務(wù)比較寬,但是細(xì)細(xì)讀下來還是能理解的,大項(xiàng)目和小項(xiàng)目都是由一個(gè)個(gè)板塊堆積起來的,更多的是要一顆能靜下來的心
2. IT行業(yè)加班是常態(tài),但在我在的公司感覺氛圍不是很明顯,6點(diǎn)就可以走,但是我一般是10點(diǎn)回去的,畢竟沒有必要回去那么早。前幾周是為了加班補(bǔ)充知識(shí)缺陷,后幾周穩(wěn)定下來了就用晚上的時(shí)間做做畢業(yè)設(shè)計(jì)了,做完后就好好按15k的標(biāo)準(zhǔn)補(bǔ)充自己知識(shí)點(diǎn)
3. 出來之前以為就是ssh或ssm的框架寫一些業(yè)務(wù)邏輯,現(xiàn)在看自己的知識(shí)短板真的很多。而且了解到知乎上有很多應(yīng)屆生把源碼什么的都弄的特別熟,而我只了解的特性和API的調(diào)用,任重而道遠(yuǎn)
4. 在學(xué)校我這個(gè)非計(jì)算機(jī)專業(yè)其實(shí)我技術(shù)還算是挺好的,但在公司,不僅每個(gè)人的技術(shù)都比我好,而且其他的實(shí)習(xí)生還是純種的軟件工程或計(jì)算機(jī)專業(yè)的,用的比我熟,而且專精開發(fā),不像我野生生長還去學(xué)移動(dòng)端和前端開發(fā),雖然并沒有壞處,但是應(yīng)屆生專精一塊能找到更好的工作
5. 在公司低調(diào)做事,認(rèn)真完成手頭工作,能力范圍內(nèi)幫助他人
6. 人與人的差別,在八小時(shí)之外
7. 兩年內(nèi)不理財(cái),用于個(gè)人提升
8. 入行后鍛煉身體很重要
9. 保持長期的學(xué)習(xí)心態(tài)
版權(quán)聲明:“并發(fā)編程網(wǎng)”所推送文章,除非確實(shí)無法確認(rèn),我們都會(huì)注明作者和來源。部分文章推送時(shí)未能與原作者取得聯(lián)系。若涉及版權(quán)問題,煩請(qǐng)?jiān)髡呗?lián)系我們,我們會(huì)在24小時(shí)內(nèi)刪除處理,謝謝!^_^
免責(zé)聲明:本文系轉(zhuǎn)載自其它媒體,版權(quán)歸原作者所有;旨在傳遞信息,不代表本站的觀點(diǎn)、立場和對(duì)其真實(shí)性負(fù)責(zé)。如需轉(zhuǎn)載,請(qǐng)聯(lián)系原作者。如果來源標(biāo)注有誤或侵犯了您的合法權(quán)益等其他原因不想在本站發(fā)布,來信即刪。