面試歸來——梳理社招面試以及淺述對(duì)程序員職業(yè)生涯的看法

原諒我是一個(gè)后知后覺的人,已經(jīng)在新的崗位工作了兩個(gè)月,才寫這篇文章。 本文會(huì)先講述博主一個(gè)月的面試經(jīng)歷,梳理一下技術(shù)面試,淺述關(guān)于程序員職業(yè)生涯的一些看法。
從創(chuàng)業(yè)到再就業(yè)
大概4個(gè)月以前,終止創(chuàng)業(yè)已經(jīng)成為逃不開的事實(shí)。
本來以為即使散伙,也會(huì)有比較充裕的時(shí)間找工作,所以并沒有做過任何投遞簡(jiǎn)歷和面試。但是現(xiàn)實(shí)卻緊張的多,實(shí)際留給我們的時(shí)間只有一個(gè)月。
所以開始有些慌,畢竟太久沒有面試過,很多知識(shí)也沒有來得及梳理,同時(shí)遠(yuǎn)離市場(chǎng)有點(diǎn)久,不知道自己應(yīng)該是一個(gè)什么級(jí)別(什么高級(jí),資深云云),值年薪多少。掛了獵聘和拉鉤,也有一些獵頭打電話給我,我也接受了一個(gè)獵頭的安排,面試過兩家初創(chuàng)公司,但是感覺一點(diǎn)都不靠譜,獵頭的態(tài)度有一種趕鴨子上架的感覺,讓我十分反感,從此以后便再也沒有接過獵頭電話。
我也開始了對(duì)自己的思考,下一份工作到底要去創(chuàng)業(yè)公司還是大公司,自己應(yīng)該到底屬于什么級(jí)別。因?yàn)槊嬖囘^兩家初創(chuàng)公司,給我的感覺是,短期遇到一個(gè)靠譜的初創(chuàng)公司其實(shí)很難,加入初創(chuàng)公司最好的姿勢(shì)是被挖過去做持股的核心。這個(gè)難度不亞于找女朋友,要聊的久才能知道是不是有感覺。如果選擇不慎,就是從一個(gè)坑跳到另一個(gè)坑。那么大公司盤點(diǎn)一下上海就那么幾個(gè)廠,螞蟻金服,百度,愛奇藝,餓了么。
目標(biāo)明確后,通過朋友或者拉鉤找相應(yīng)的職位,因?yàn)槲疫€是想繼續(xù)深入做一段時(shí)間技術(shù)和技術(shù)決策,所以投遞的職位基本是架構(gòu)師、技術(shù)專家這樣的職位。
當(dāng)然除了上面列舉的四個(gè)廠,中途還面試了上海唯品會(huì)和杭州的網(wǎng)易考拉(因?yàn)槿ズ贾菘戳藗€(gè)演唱會(huì)就順便去面了,這個(gè)理由很......)那段時(shí)間真的很忙,因?yàn)槊看蚊嬖嚩技ぐl(fā)你思考很多,除了技術(shù)也有職業(yè)生涯的規(guī)劃。然后回去想很多,梳理很多,面試到最后,也總結(jié)了好多面試題,反復(fù)翻看了好幾本書,這些樓主在后面會(huì)詳細(xì)說一些。
在臨近那一個(gè)月的終止,開始陸陸續(xù)續(xù)收到Offer,最后拿到了餓了么和考拉的架構(gòu)師,愛奇藝P7b,這幾個(gè)算是相似級(jí)別的吧。螞蟻金服的HR一直拿我沒BAT背景和工作年限(那時(shí)候三年半)說事,最后給我資深開發(fā)。百度說社招名額要等一個(gè)月后再談,所以就不等了。
關(guān)于Offer的選擇也沒什么糾結(jié)的,不去杭州,因?yàn)榉孔樱米佣荚谏虾#陨虾燮嫠嚭宛I了么二選一。去餓了么面試覺得技術(shù)氛圍很好,對(duì)崗位從事的內(nèi)容更感興趣,可以彌補(bǔ)我機(jī)器學(xué)習(xí)領(lǐng)域的空白,所以就接了餓了么。
社招面試的準(zhǔn)備
聽了前面的故事,社招面試肯定是大家更關(guān)注的。畢竟我是創(chuàng)業(yè)散伙到再就業(yè),時(shí)間有些倉促,找工作開始對(duì)市場(chǎng),職位都不了解。
我覺得如果你在一個(gè)穩(wěn)定的坑里,通過社招跳槽的步驟應(yīng)該是
自我定位 首先第一個(gè)自我定位應(yīng)該是當(dāng)前環(huán)境下的自我反思。一般思考換工作的同學(xué),往往也是對(duì)當(dāng)前環(huán)境有諸多不滿。那么應(yīng)該是思考一下問題在哪里,如果是自己的問題能否改善做到更好。你加入這個(gè)公司的這段時(shí)間,有沒有充分學(xué)習(xí)到公司的技術(shù),如果沒有,也不急于離開。每一段職業(yè)經(jīng)歷,都要有所收獲,這樣才能往更高的位置走,如果在每個(gè)環(huán)境都是混混日子,基本跳了幾次就到瓶頸了。 然后想想下一份工作想做什么,堅(jiān)持技術(shù)還是轉(zhuǎn)做技術(shù)管理,既然決定換一次工作,那就做點(diǎn)自己想做的,不是么。一般來說,如果技術(shù)轉(zhuǎn)管理,需要一些技術(shù)的積累,可能意味著你在技術(shù)上做到一定級(jí)別轉(zhuǎn)起來會(huì)容易一些,因?yàn)槌绦騿T都有些“驕傲不馴”,如果你技術(shù)很菜,就很難管理團(tuán)隊(duì),也不能很好的做技術(shù)成本評(píng)估。當(dāng)然也可以換行做別的,畢竟人生那么長(zhǎng),如果自己不喜歡做開發(fā),就別和bug較勁了。
長(zhǎng)期準(zhǔn)備——干貨在此 如果你在自我定位中,已經(jīng)決定不干技術(shù),那請(qǐng)?zhí)^后面的所有部分,如果繼續(xù)做技術(shù),那么這部分將是自我提升和準(zhǔn)備面試的干貨。不過這部分內(nèi)容可能更適合Java相關(guān)的互聯(lián)網(wǎng)從業(yè)者,這也是體量最大的互聯(lián)網(wǎng)技術(shù)從業(yè)者。
首先是編程語言本身和語言生態(tài)相關(guān)的,這里Java為例,虛擬機(jī)原理,你會(huì)發(fā)現(xiàn)可能被問的最多的就是垃圾回收相關(guān)議題,可以搞一本 《深入理解java虛擬機(jī)》認(rèn)真研讀一下;多線程場(chǎng)景的知識(shí),線程池,鎖的原理等,可以研讀 《Java并發(fā)編程的藝術(shù)》,Java8相關(guān)議題,Spring包括IOC,AOP也各種問,推薦《Spring技術(shù)內(nèi)幕》,當(dāng)然NIO,Netty這些里面有經(jīng)常出鏡。 互聯(lián)網(wǎng)系技術(shù)通常還是用各種中間件,可以閱讀官方文檔,也可以找到一些《XX權(quán)威指南》之類的書,做閱讀。如果公司場(chǎng)景有使用,那最好,如果沒有,這些東西自己搭建都不費(fèi)事。
下面舉例說一些吧,例如常用的解決高并發(fā)場(chǎng)景的讀問題的緩存中間件Redis,Memcache等;用于解耦的消息隊(duì)列中間件,Rabbit MQ, Kafka等;用于分布式環(huán)境下一致性數(shù)據(jù)的Zookeeper;Mysql分表分庫的Cobar等;通用搜索引擎Elastic Search。還有好多領(lǐng)域,每個(gè)領(lǐng)域都有好多產(chǎn)品。 存儲(chǔ)本身也是一個(gè)很深的話題,Mysql為代表的關(guān)系型數(shù)據(jù)庫,Nosql代表的MongoDB,Cassandra。他們的使用場(chǎng)景,優(yōu)缺點(diǎn)。 架構(gòu)方面,其實(shí)感覺最主流的架構(gòu)還是SOA,推薦讀一讀《分布式服務(wù)框架原理與實(shí)踐》,我面試前并沒有看到這本書,很多議題包括熔斷,降級(jí)之類都沒有想過,導(dǎo)致前面幾次面試提到相關(guān)議題都有些懵懵懂懂。 當(dāng)然學(xué)無止境,如果想都了解可能要花幾年時(shí)間。有針對(duì)性的了解很重要,如果你眼下就要找工作,那么就挑著公司用的相關(guān)技術(shù)深挖,這樣面試比較好說。如果你想學(xué)好JAVA這門技術(shù),也想在IT行業(yè)拿高薪,可以參加我們的訓(xùn)練營(yíng)課程,選擇最適合自己的課程學(xué)習(xí),技術(shù)大牛親授,7個(gè)月后,進(jìn)入名企拿高薪。我們的課程內(nèi)容有:Java工程化、高性能及分布式、高性能、深入淺出。高架構(gòu)。性能調(diào)優(yōu)、Spring,MyBatis,Netty源碼分析和大數(shù)據(jù)等多個(gè)知識(shí)點(diǎn)。如果你想拿高薪的,想學(xué)習(xí)的,想就業(yè)前景好的,想跟別人競(jìng)爭(zhēng)能取得優(yōu)勢(shì)的,想進(jìn)阿里面試但擔(dān)心面試不過的,你都可以來,群號(hào)為:230419550

職位投遞 先說說職位,關(guān)于公司對(duì)員工的定位,參考我公司的評(píng)級(jí)標(biāo)準(zhǔn),對(duì)于P5-7這個(gè)級(jí)別要求如下: P5(高級(jí)開發(fā))-能夠在基本沒有指導(dǎo)的情況下獨(dú)立開發(fā)小模塊 P6(資深開發(fā))—能夠獨(dú)立設(shè)計(jì)和開發(fā)一個(gè)核心模塊 P7(架構(gòu)師,專家)— 一個(gè)產(chǎn)品工程的全局設(shè)計(jì) 更高級(jí)別的沒有在列出之內(nèi),因?yàn)楹诵膶?shí)施就在這3個(gè)級(jí)別,這是阿里系公司P系列級(jí)別的定義,不同的公司級(jí)別差別會(huì)比較大,不過很多公司在招聘的時(shí)候,都會(huì)以阿里系做參考和對(duì)標(biāo)。所以針對(duì)自己的求職目標(biāo)投遞簡(jiǎn)歷,這樣會(huì)避免一些烏龍,后面還會(huì)提到不同級(jí)別的面試。
面試流程和內(nèi)容
4.1 流程 很多公司都說,先面試后定級(jí),不過很多情況都是你投什么職位就會(huì)被定在什么職位區(qū)間。例如標(biāo)記為高級(jí)/資深XX工程師,那面試流程就是按照P5-P6這個(gè)來,這個(gè)級(jí)別的面試一般只是組內(nèi)技術(shù)面試官,組老大(可能是總監(jiān)),HR面一下就決定了。 如果是面架構(gòu)師/專家(P7),流程會(huì)不一樣,一般是組內(nèi)架構(gòu)師/專家面,然后會(huì)是高級(jí)架構(gòu)師/專家面,總監(jiān)面,CTO/技術(shù)VP面,HR面。 所以不要隨意投職位,如果你定位自己是專家,就不要投高級(jí)和資深的崗位。
4.2 內(nèi)容 面試的內(nèi)容無非是你做過什么,你會(huì)什么,你能做什么 關(guān)于做過什么,當(dāng)然就是你陳述自己做過的項(xiàng)目,實(shí)現(xiàn)了那些部分,有那些貢獻(xiàn)等等。這些內(nèi)容,應(yīng)該是參與面試之前就自己梳理好,如果工作認(rèn)真,工作過程經(jīng)常思考,并且有優(yōu)化的習(xí)慣,這部分內(nèi)容很容易講,畢竟是自己做的。 簡(jiǎn)歷上也可以附上可以幫助你表述自己工作成果的東西,例如圖或者表格,這些看起來很簡(jiǎn)單的東西,對(duì)于你和面試官交流,激發(fā)他發(fā)問都非常有幫助。例如博主就把自己創(chuàng)業(yè)期間架構(gòu)的服務(wù)器后臺(tái)用彩頁附加在簡(jiǎn)歷上,很多面試官對(duì)這個(gè)架構(gòu)圖特別感興趣,基本從最上面到最下面過一遍,再深入剖析幾個(gè)技術(shù)點(diǎn)和場(chǎng)景,一輪面試就愉快的結(jié)束了。這個(gè)圖如下(有些內(nèi)容表述的不夠?qū)I(yè),我也漸漸意識(shí)到了)

你會(huì)做什么,就是技術(shù)水平面試了,面試官可能是在你講述項(xiàng)目的時(shí)候,從某個(gè)地方為切入點(diǎn),一點(diǎn)一點(diǎn)的深入問。例如先問你有沒有做過并發(fā),如果你說是,可能繼續(xù)問,是否用過線程池,如果你說是,可能繼續(xù)問,線程池的核心原理是怎樣的,如果你能解釋一堆,接下來可能還會(huì)繼續(xù)問,有幾類線程池,適合什么不同場(chǎng)景。
這個(gè)可能會(huì)扣很細(xì)很細(xì),螞蟻金服面試的時(shí)候,那個(gè)面試官估計(jì)有40-50歲,書卷氣很濃,Java真是刨根問底問了好多好多內(nèi)容。只有平時(shí)深入積累才可能知道,如果只是泛泛的使用,沒有想過如何優(yōu)化和了解更多底層原理,根本不知道面試官在說啥。這個(gè)部分內(nèi)容可以參考前面的長(zhǎng)期準(zhǔn)備內(nèi)容。
你能做什么,就當(dāng)這部分是開放式問題吧,這個(gè)題目通常沒有標(biāo)準(zhǔn)答案,考察你解決問題的能力。我遇到的一個(gè)比較多問題是,設(shè)計(jì)秒殺系統(tǒng),解決分布式系統(tǒng)中的數(shù)據(jù)一致問題,特別是分布式一致性問題,本來就是業(yè)界難題,拋出來給你應(yīng)該也就是看你在平時(shí)工作的時(shí)候有沒有思考過這個(gè)問題,有沒有嘗試過在工作中,盡可能小的避免這種情況的出現(xiàn)。

  1. 談Offer 這里我沒有什么技巧,因?yàn)椴幌矚g和人討價(jià)還價(jià),我可能更看重工作內(nèi)容,氛圍這些,沒有嘗試過和HR討價(jià)還價(jià)。不過基本上決定你薪水的是,你面試的級(jí)別薪資范圍,你之前的薪水,你其他Offer的薪水。所以如果準(zhǔn)備一次面試,也不妨多看看機(jī)會(huì),至少其他Offer可以成為你衡量自己和談薪資的參考。
    工程師的職業(yè)生涯
    這個(gè)問題其實(shí)對(duì)于我依然也沒有答案,生涯這種事,似乎只是過來人才有資格談的,對(duì)于我這個(gè)入職場(chǎng)還不滿四年,做過的大項(xiàng)目還能用一只手?jǐn)?shù)過來的人,只能表達(dá)一些我看法。
  2. 成為技術(shù)專家
    我覺得,能成為技術(shù)專家也和你的工作內(nèi)容關(guān)系很大,如果是從事云平臺(tái),基礎(chǔ)架構(gòu)組件相關(guān)的工作,比較容易朝著這個(gè)方向走。例如你做消息中間件,SOA框架開放,DRC多活這些,因?yàn)槿粘9ぷ鹘鉀Q就是純技術(shù)問題,并且在高并發(fā)場(chǎng)景下,這些問題真的很有價(jià)值,伴隨公司從小到大,用心積累的人,也順理成章的變成了專家。
    當(dāng)然還有一種,也是大多數(shù)工程師,做了很多業(yè)務(wù)開發(fā),好像什么都懂,但是在某個(gè)領(lǐng)域卻找不到絕對(duì)優(yōu)勢(shì)。那么選擇技術(shù),選擇這么多中間件,搭建一套高可用的系統(tǒng),能洞悉系統(tǒng)評(píng)價(jià),知道怎么改善,這同樣是核心競(jìng)爭(zhēng)力,這樣應(yīng)該算朝著架構(gòu)師的方向前行了。
    對(duì)于喜歡專研技術(shù),不喜歡和人撕逼,喜歡安安靜靜研究東西的人來說,這是一個(gè)不錯(cuò)的方向,并且懂核心技術(shù)的人整個(gè)市場(chǎng)都不多,根本不用擔(dān)心失業(yè),如果公司解散或者裁員,你的薪水應(yīng)該只會(huì)更高。
  3. 技術(shù)管理
    伴隨你經(jīng)驗(yàn)的提高,公司隊(duì)伍的壯大,同樣也會(huì)空缺出一些管理崗,很多工程師也順利成章的走到管理的崗位。如果你對(duì)找bug已經(jīng)有點(diǎn)厭倦,想多和人打交道,不妨可以朝著這個(gè)方向走。
    對(duì)于從事管理,我覺得有幾個(gè)技能應(yīng)該很早積累起來。
  4. 表達(dá)自己
    對(duì)于一個(gè)基層工程師而言,大多數(shù)的時(shí)候,都是聽別人,聽產(chǎn)品經(jīng)理需求,聽Learder管,聽資深技術(shù)的傳道。但是慢慢你會(huì)發(fā)現(xiàn),有一天,你可以和他們討論了,再后來,你需要對(duì)他們表達(dá)你自己了。這也是伴隨著你資歷和級(jí)別提升后,溝通姿態(tài)的轉(zhuǎn)變。
    所以流暢的表達(dá)自己很重要,表達(dá)思路要清晰,對(duì)不同背景的人,選擇合適他們的語言(不要和產(chǎn)品經(jīng)理說什么解耦),善于利用輔助的工具,例如PPT,善于抽象和總結(jié)信息,例如濃縮成圖或者表格和別人闡述。
  5. 善于分配和獲取資源
    很多人會(huì)覺得,分配和獲取資源已經(jīng)是從事了管理崗位的人才有資格做的事情。其實(shí)不然,每個(gè)組都有不少你有資格Own的小項(xiàng)目,有時(shí)候你會(huì)有資格帶1-2個(gè)資歷淺的工程師或者實(shí)習(xí)生一起完成項(xiàng)目。這個(gè)過程中,也免不了有一些外部依賴,要和一些人對(duì)接。如果你很享受這個(gè)過程并且做的不錯(cuò),那你的性格里,是有成為管理者的品質(zhì)的。抓住這樣很多小的機(jī)會(huì),提高自己經(jīng)驗(yàn)的同時(shí),也問問自己,你喜歡不喜歡這樣的事情,總比將來胡亂跳到一個(gè)管理崗位讓后自己各種suffer強(qiáng)吧。

寫在最后
以前聽過一個(gè)關(guān)于孩子教育的故事,結(jié)論說,不要讓孩子處于物質(zhì)太優(yōu)越的環(huán)境下,他將失去做選擇的機(jī)會(huì),而做選擇本身最能激發(fā)人思考和成長(zhǎng)。找工作也正是如此,或許比找到一個(gè)合適的工作更重要的是,你在這個(gè)過程中,更好的認(rèn)識(shí)了自我。希望各位讀者在當(dāng)前的崗位上有所收獲,如果你在找工作,也希望你一切順利。
注:加群要求
1、具有1-5工作經(jīng)驗(yàn)的,面對(duì)目前流行的技術(shù)不知從何下手,需要突破技術(shù)瓶頸的可以加。
2、在公司待久了,過得很安逸,但跳槽時(shí)面試碰壁。需要在短時(shí)間內(nèi)進(jìn)修、跳槽拿高薪的可以加。
3、如果沒有工作經(jīng)驗(yàn),但基礎(chǔ)非常扎實(shí),對(duì)java工作機(jī)制,常用設(shè)計(jì)思想,常用java開發(fā)框架掌握熟練的,可以加。
4、覺得自己很牛B,一般需求都能搞定。但是所學(xué)的知識(shí)點(diǎn)沒有系統(tǒng)化,很難在技術(shù)領(lǐng)域繼續(xù)突破的可以加。
5.阿里Java高級(jí)大牛直播講解知識(shí)點(diǎn),分享知識(shí),多年工作經(jīng)驗(yàn)的梳理和總結(jié),帶著大家全面、科學(xué)地建立自己的技術(shù)體系和技術(shù)認(rèn)知!
6.小號(hào)加群一律不給過,謝謝。

本文非原創(chuàng)
轉(zhuǎn)載自http://www.w2bc.com/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,030評(píng)論 25 709
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,692評(píng)論 18 399
  • Android應(yīng)用的自動(dòng)化構(gòu)建,目前有Ant和Gradle兩種方式,本文主要記錄自己學(xué)習(xí)ANT自動(dòng)化構(gòu)建Andro...
    stefanli閱讀 1,232評(píng)論 2 2
  • 糾結(jié),后悔。想買房的時(shí)候沒有錢,后悔曾經(jīng)亂花錢,糾結(jié)到底買不買。。。。。。。。 未來越來越近,我卻踟躕不前
    周周周大大大大大小姐閱讀 259評(píng)論 0 0

友情鏈接更多精彩內(nèi)容