? ?
我在之前的面試過(guò)程中,一直會(huì)遇到這樣的問(wèn)題:比如我要面試架構(gòu)師,但我當(dāng)時(shí)工作時(shí),只有機(jī)會(huì)實(shí)踐高級(jí)開(kāi)發(fā)的技能,架構(gòu)師方面的技能,只能看理論,最多只能在自己電腦上搭建個(gè)腳手架項(xiàng)目。
? ?
這樣就進(jìn)入了一個(gè)兩難的循環(huán)等待:為了應(yīng)聘成功高級(jí)崗位,必須要在面試過(guò)程里證明有相關(guān)實(shí)踐經(jīng)驗(yàn),而相關(guān)經(jīng)驗(yàn)在面試成功前是沒(méi)機(jī)會(huì)實(shí)踐的。很多想通過(guò)面試換工作升級(jí)的同學(xué)都會(huì)遇到這樣的問(wèn)題,在本文里,就將講述相關(guān)的破局方法。
1 大公司里的面試官如何分辨實(shí)踐經(jīng)驗(yàn)和理論經(jīng)驗(yàn)
? ? 在跨越的過(guò)程中,戰(zhàn)略上一定要有信心,但戰(zhàn)術(shù)上一定不能有任何走捷徑的想法,因?yàn)榧夹g(shù)面試官絕對(duì)能通過(guò)面試衡量出候選人的能力。
? ?
比如我在面試Java初級(jí)和高級(jí)候選人的時(shí)候,我第一可以甄別出候選人的經(jīng)驗(yàn)是來(lái)自實(shí)踐還是理論,第二可以衡量出候選人綜合能力和崗位的匹配程度,我相信其它資深面試官也能做到這點(diǎn)。
? ?
有時(shí)候確實(shí)會(huì)睜只眼閉只眼,但絕對(duì)不是沒(méi)看清候選人的能力,而是項(xiàng)目緊招不到人,所以就招個(gè)態(tài)度好而能力尚有欠缺的人進(jìn)來(lái)。但在大多數(shù)情況下,如果候選人被甄別出關(guān)鍵技術(shù)沒(méi)實(shí)踐經(jīng)驗(yàn),或者說(shuō)容納必備技術(shù)的項(xiàng)目是學(xué)習(xí)項(xiàng)目,那很難通過(guò)面試。下面我就綜合諸多面試官,給出些甄別候選人項(xiàng)目的方法。
? ?
第一問(wèn)容納技術(shù)的項(xiàng)目,比如問(wèn)項(xiàng)目周期,項(xiàng)目參與人數(shù),項(xiàng)目發(fā)布情況和上線情況,如果真的做過(guò),這個(gè)應(yīng)該不會(huì)前后矛盾,這時(shí)能分辨出項(xiàng)目是商業(yè)項(xiàng)目還是學(xué)習(xí)項(xiàng)目。
? ?
第二問(wèn)技術(shù)在項(xiàng)目里的使用情況,比如考察Mybatis,就會(huì)問(wèn)些如何處理原子操作,如何配置數(shù)據(jù)源,如何同Spring整合等問(wèn)題,這類問(wèn)題只要做過(guò)項(xiàng)目,那一定知道。
? ?
第三問(wèn)技術(shù)的上下文,所謂全棧提問(wèn),比如Mybatis在處理高并發(fā)會(huì)用Mycat,如何配置,又如如何處理Mybatis拋出的異常,總之問(wèn)些和該技術(shù)相關(guān)的問(wèn)題點(diǎn),有些培訓(xùn)學(xué)??赡芄怅P(guān)注技術(shù),未必關(guān)注技術(shù)間的聯(lián)系。
? ?
第四問(wèn)項(xiàng)目的部署,尤其是在linux上的部署。如果候選人簡(jiǎn)歷上的項(xiàng)目沒(méi)真實(shí)實(shí)踐過(guò),這塊絕對(duì)是有欠缺的,而有些培訓(xùn)學(xué)校雖然講了Linux,但可能也就講到查看日志,運(yùn)行安裝程序等水平,未必會(huì)做jenkins等集成化部署,而如果候選人自己的學(xué)習(xí)項(xiàng)目更不會(huì)涉及到這點(diǎn)。
? ?
所以說(shuō),如果沒(méi)準(zhǔn)備,單純就想靠裸面就實(shí)現(xiàn)跨越,基本上是不可能的,除非運(yùn)氣爆棚,或者面試的是一家不怎么講究的小公司。不過(guò)話說(shuō)回來(lái),程序員在沒(méi)任何實(shí)踐經(jīng)驗(yàn)的前提下實(shí)現(xiàn)跨越,這種例子比比皆是,大家如果靠自己摸索,也能做到這點(diǎn),但在跨越時(shí)也得講究效率。
2 以培訓(xùn)班的課程為學(xué)習(xí)方向,以培訓(xùn)班的進(jìn)度管理學(xué)習(xí)時(shí)間,同時(shí)實(shí)踐培訓(xùn)班的項(xiàng)目?
? ?
這里并不是給任何培訓(xùn)班做廣告,是否上培訓(xùn)班大家自己斟酌。但培訓(xùn)班(尤其時(shí)是知名培訓(xùn)班)制定的培訓(xùn)內(nèi)容和進(jìn)度是經(jīng)過(guò)時(shí)間檢驗(yàn)的,如果大家報(bào)名培訓(xùn)班,這自然沒(méi)話說(shuō),用錢換時(shí)間換經(jīng)驗(yàn),按著進(jìn)度即可,但如果想不上培訓(xùn)班,同時(shí)實(shí)現(xiàn)高效跨越,可以采用如下的步驟。
? ? 第一,找份課程大綱,比如java,一般會(huì)從基礎(chǔ)語(yǔ)法一直講到架構(gòu),同時(shí)會(huì)給出案例,如果大家多找?guī)追荽缶V,會(huì)發(fā)現(xiàn)大同小異。
? ? 第二,可以買書買視頻買收費(fèi)專欄,總之想辦法獲取些系統(tǒng)講述知識(shí)的資料,比如買若干本Java
SSM框架的書,看明白后自然就知道這方面的內(nèi)容了,而且每個(gè)方面至少買2本書。這時(shí)不推薦自己看網(wǎng)頁(yè)而推薦買,因?yàn)檫@時(shí)如果自己看網(wǎng)頁(yè)學(xué),往往忽視重點(diǎn),或者在一些無(wú)關(guān)緊要的點(diǎn)上空費(fèi)時(shí)間,而買來(lái)的資料往往具有系統(tǒng)性,能幫助大家降低試錯(cuò)的成本。
? ?
?第三,之前時(shí)找大綱買書買資料,這時(shí)知識(shí)還沒(méi)進(jìn)自己的大腦,這時(shí)就得用空閑時(shí)間邊運(yùn)行代碼邊看資料了。在看得時(shí)候,先注意廣度,先別挖掘太深。剛開(kāi)始學(xué)的時(shí)候是要解決從零到有的問(wèn)題。這里執(zhí)行的要點(diǎn)是時(shí)間管理,而資料則是到處可以得到。
? ? 最后得調(diào)試通若干個(gè)案例,比如java層面的,SSM,或Spring
Cloud,或基于數(shù)據(jù)庫(kù)的項(xiàng)目,可以調(diào)試幾個(gè)。這里請(qǐng)注意,選擇項(xiàng)目的時(shí)候,業(yè)務(wù)可以非常簡(jiǎn)單,甚至就一個(gè)頁(yè)面然后加增刪改查,但一定得包含全棧要素,比如從前端一直到后端框架然后到數(shù)據(jù)庫(kù),最好再帶些打包部署步驟。
? ?
其實(shí)如果大家上心的話,諸多培訓(xùn)項(xiàng)目不是不可得,而且哪怕付費(fèi),也能得到不少項(xiàng)目。在實(shí)踐的時(shí)候,一般得遵循“三個(gè)月原則”,即不管學(xué)什么,給自己制定的時(shí)間表是3個(gè)月,比如學(xué)java高級(jí)開(kāi)發(fā)的知識(shí)點(diǎn),從入門到架構(gòu)到項(xiàng)目,一般用3個(gè)月即可。3個(gè)月如果學(xué)不好,那么可能就是態(tài)度或方法上的問(wèn)題了。
3 學(xué)會(huì)技術(shù)了還不夠,還得能證明自己在項(xiàng)目里用過(guò)
? ?
通過(guò)之前的方法,大家能在比較短的時(shí)間內(nèi),系統(tǒng)掌握更高級(jí)的技能,但這還不夠,這僅僅是學(xué)習(xí)經(jīng)驗(yàn)。之前也講過(guò),面試的時(shí)候得證明技術(shù)在項(xiàng)目里實(shí)踐過(guò),那么怎么彌補(bǔ)項(xiàng)目經(jīng)驗(yàn)?zāi)兀课揖鸵苑植际浇M件Dubbo舉例來(lái)說(shuō)明。
? ? 1
通過(guò)之前的學(xué)習(xí),好歹能知道dubbo的基本用法,比如如何遠(yuǎn)程調(diào)用,如何編寫配置文件,然后就到公司找個(gè)dubbo的項(xiàng)目,爭(zhēng)取看下他們的代碼,看下真實(shí)項(xiàng)目里是怎么用dubbo的,有時(shí)甚至不用找,自己項(xiàng)目里就有,但可能之前沒(méi)費(fèi)心關(guān)注。
? ? 2
真實(shí)項(xiàng)目里,除了實(shí)現(xiàn)代碼功能外,更需要考慮“異?!焙汀鞍l(fā)布時(shí)”的情況,比如dubbo調(diào)用超時(shí)了怎么處理,結(jié)點(diǎn)失效了又該怎么辦?尤其地,在發(fā)布時(shí),更新了遠(yuǎn)程調(diào)用的接口,那如何切流量保證平穩(wěn)發(fā)布。
這里我僅僅是給出了若干問(wèn)題,但如果大家留心了,會(huì)發(fā)現(xiàn)一大堆“實(shí)現(xiàn)功能”之外的問(wèn)題,把這些問(wèn)題搞明白了,能在面試中講清楚了,就能證明自己的實(shí)踐經(jīng)驗(yàn)。
? ? 3
在真實(shí)項(xiàng)目里,一定會(huì)出現(xiàn)相關(guān)產(chǎn)線問(wèn)題,比如哪天因dubbo超時(shí)時(shí)間沒(méi)設(shè)置好導(dǎo)致服務(wù)長(zhǎng)時(shí)間沒(méi)返回,大家可以留意相關(guān)問(wèn)題的排查方法(比如通過(guò)看什么日志)和解決方法,如果是大家經(jīng)歷過(guò)的,可以寫到簡(jiǎn)歷中,這樣也能證明自己的實(shí)際項(xiàng)目經(jīng)驗(yàn)。
? ?
以上僅是以dubbo為例,事實(shí)上,在自己或者附近的項(xiàng)目里,包含了值錢技術(shù)遠(yuǎn)不止一個(gè),可能之前因?yàn)樽约旱募?jí)別,項(xiàng)目經(jīng)理不會(huì)安排相關(guān)的活,從而導(dǎo)致沒(méi)實(shí)踐經(jīng)驗(yàn),但這不是能阻止大家接觸更高級(jí)的知識(shí)點(diǎn)。并且,“在簡(jiǎn)歷和面試中證明自己相關(guān)技能的實(shí)踐經(jīng)驗(yàn)”要比“熟練地在項(xiàng)目里應(yīng)用相關(guān)技能”簡(jiǎn)單很多。
? ? 一方面,面試時(shí)你可以引導(dǎo)面試官的提問(wèn),在以我的親身經(jīng)歷為例,告訴大家寫簡(jiǎn)歷和面試的技巧(面向高級(jí)開(kāi)發(fā)和架構(gòu)師)
<https://www.cnblogs.com/JavaArchitect/p/10720897.html>
這篇博文里,我就講述了如何引導(dǎo)面試官提問(wèn)之前技能的方式,另一方面,甚至你都不用引導(dǎo),其實(shí)面試時(shí),面試官也就用“如何處理異常情況”和“如何發(fā)布”等問(wèn)題點(diǎn)來(lái)考察實(shí)踐經(jīng)歷。?
4 可以用博客,出書和出視頻等方式來(lái)證明自己
? ? 通過(guò)上述方法,大家不僅能掌握比當(dāng)前級(jí)別高的技能,更能證明自己在項(xiàng)目里用過(guò)。
? ?
不過(guò)在面試中,正是因?yàn)槊嬖嚬僦荒苡眠^(guò)簡(jiǎn)歷了解候選人,所以得用問(wèn)題來(lái)考察,但話說(shuō)回來(lái),如何候選人有能證明自己的東西呢?第一這些至少是加分項(xiàng),第二萬(wàn)一有問(wèn)題沒(méi)回答好,好歹還能用博文或書來(lái)證明自己的相關(guān)經(jīng)驗(yàn)。哪些能作為證明點(diǎn)?
? ? 第一是博客,別就一兩篇,最好是數(shù)量比較多,而且若干篇博文里有幾篇質(zhì)量比較高的。
? ? 第二是出書。出書并不像想象中那樣難,而且哪怕剛畢業(yè),只要肯上心即可,比如案例書,真不需要太多的實(shí)踐經(jīng)驗(yàn)積累。
? ? 第三是有專欄或公眾號(hào),最好是原創(chuàng)性文字多些。
? ?
大家可以想象下,如果你有系列博文或書,那么說(shuō)自己學(xué)習(xí)能強(qiáng)有上進(jìn)心能承受大壓力,這就不是空話了。而且在應(yīng)聘比自己當(dāng)前級(jí)別高的崗位時(shí),面試結(jié)果大多估計(jì)是可上可下,這時(shí)如果能有看得見(jiàn)摸得著的東西來(lái)證明自己,這樣成功的可能性就大很多了。
5 一定得在面試前準(zhǔn)備高級(jí)技能實(shí)踐經(jīng)驗(yàn)的表達(dá)方式
? ? 這一定得在面試前準(zhǔn)備好說(shuō)辭,盡量少在面試時(shí)現(xiàn)場(chǎng)發(fā)揮。其實(shí)在上文里已經(jīng)給出相關(guān)重點(diǎn),這里來(lái)總結(jié)下準(zhǔn)備的方式。
? ?1 大家可以想下,有哪些細(xì)節(jié),只有做過(guò)才知道,面試前就可以準(zhǔn)備這些。比如部署Dubbo,配置文件里超時(shí)時(shí)間怎么設(shè)置。
? ?2
在第1點(diǎn)的基礎(chǔ)上,盡量準(zhǔn)備些多組件整合使用的關(guān)鍵細(xì)節(jié),比如Dubbo和Zookeeper整合,nginx和限流組件hystrix整合的實(shí)現(xiàn)細(xì)節(jié),往往在項(xiàng)目里經(jīng)常用到多個(gè)組件,這樣組合起來(lái)講,可信度更高。
? ?3 如果可以,再準(zhǔn)備些排查解決問(wèn)題的介紹。假設(shè)候選人能詳細(xì)說(shuō)明在項(xiàng)目中排查Kafka
OOM異常的方法,比如如何看日志定位問(wèn)題,如果通過(guò)修改配置來(lái)解決,這樣一定能證明自己在實(shí)踐中用過(guò)。
? ?4 最好是能結(jié)合業(yè)務(wù)場(chǎng)景來(lái)說(shuō),比如某支付場(chǎng)景,需要每秒2000的并發(fā),那么是怎么通過(guò)配置怎么通過(guò)整合組件實(shí)現(xiàn)的。?
?
?其實(shí)大家可以照此方式,自己想些準(zhǔn)備點(diǎn),比如相關(guān)細(xì)節(jié),相關(guān)底層代碼,相關(guān)排查問(wèn)題的方式都行。有些同學(xué)或許會(huì)說(shuō),由于自己沒(méi)實(shí)踐機(jī)會(huì),所以沒(méi)法理直氣壯地說(shuō)自己做過(guò)這里不提倡弄虛作假,在前文里也提到過(guò),相關(guān)實(shí)踐經(jīng)驗(yàn)是靠自己在項(xiàng)目組內(nèi)或其它項(xiàng)目組里爭(zhēng)取來(lái)的,不能靠坐等得到。?
? ?
看到這里大家也能發(fā)現(xiàn),上述能證明自己實(shí)踐經(jīng)驗(yàn)的說(shuō)辭,在面試中現(xiàn)場(chǎng)想,一定沒(méi)法說(shuō)好。而且在跨越階段,平時(shí)工作中大多數(shù)用到的還是本階段的技術(shù),只有少數(shù)部分才是高級(jí)技術(shù),這就更需要用上述方法準(zhǔn)備了。?
6 總結(jié),求推薦:可以邊學(xué)邊面試,別用“準(zhǔn)備不充分"作為懈怠的理由
? ? 本文主要從從準(zhǔn)備技術(shù)和準(zhǔn)備實(shí)踐經(jīng)驗(yàn)這兩方面講述了實(shí)現(xiàn)跨越的方法,更在此基礎(chǔ)上講述了應(yīng)聘更高級(jí)崗位的面試準(zhǔn)備技巧。
? ?
我就見(jiàn)過(guò)不少人,為了求穩(wěn)定,往往會(huì)以“沒(méi)準(zhǔn)備好”作為理由,不去挑戰(zhàn)更高級(jí)的崗位,同時(shí)平時(shí)也不看更高級(jí)的技術(shù),就每天得過(guò)且過(guò)。這樣看似每天很舒服,而且在一個(gè)公司里熟悉業(yè)務(wù)熟悉人際關(guān)系后,日子還會(huì)過(guò)得很滋潤(rùn),但長(zhǎng)久一來(lái),競(jìng)爭(zhēng)力就喪失了。?
? ?
其實(shí)實(shí)現(xiàn)跨越不簡(jiǎn)單,畢竟如果平時(shí)就只關(guān)注自己的活,確實(shí)沒(méi)機(jī)會(huì)接觸更高級(jí)的技術(shù)。不過(guò)也不難,因?yàn)楦呒?jí)技術(shù)的資料網(wǎng)上到處有,而實(shí)踐機(jī)會(huì),如果平時(shí)多觀察多動(dòng)手,也不能說(shuō)少,所以大家不要以各種理由來(lái)阻礙自己的進(jìn)步。
? ?如果大家感覺(jué)本文有幫助,請(qǐng)推薦本文,也歡迎大家通過(guò)評(píng)論來(lái)交流。
版權(quán)說(shuō)明:
? ? 有不少網(wǎng)友轉(zhuǎn)載和想要轉(zhuǎn)載我的博文,本人感到十分榮幸,這也是本人不斷寫博文的動(dòng)力。關(guān)于本文的版權(quán)有如下統(tǒng)一的說(shuō)明,抱歉就不逐一回復(fù)了。
? ? 1 本文可轉(zhuǎn)載,無(wú)需告知,轉(zhuǎn)載時(shí)請(qǐng)用鏈接的方式,給出原文出處,別簡(jiǎn)單地通過(guò)文本方式給出,同時(shí)寫明原作者是hsm_computer。
? ??2 在轉(zhuǎn)載時(shí),請(qǐng)?jiān)霓D(zhuǎn)載 ,謝絕洗稿。否則本人保留追究法律責(zé)任的權(quán)利。
?
? ??
熱門工具 換一換
