在南京的軟件圈子里,李明(化名)一度被朋友們戲稱為“面霸”——專科培訓(xùn)班出身,四年內(nèi)換了四份工作,每次跳槽間隔短暫得讓人側(cè)目。朋友聚會時,總有人半開玩笑地問:“這次打算干幾個月?”今年夏天,當(dāng)李明在群里曬出字節(jié)跳動的錄用通知書——年薪57萬,崗位是南京的軟件開發(fā)工程師時,所有調(diào)侃瞬間化為驚嘆與敬佩。
李明的起點并不高。四年前,他從一家IT培訓(xùn)班結(jié)業(yè),憑借幾個月的密集學(xué)習(xí),掌握了Java和前端基礎(chǔ),匆匆踏入職場。第一份工作在一家小型外包公司,月薪六千。他很快發(fā)現(xiàn),培訓(xùn)班教的是“怎么用”,而企業(yè)要的是“為什么這么用”以及“怎么更好用”。底層原理的缺失、項目經(jīng)驗的匱乏,讓他舉步維艱。半年后,他選擇離開。
此后兩年,他輾轉(zhuǎn)于兩家初創(chuàng)公司,做過后端開發(fā),也短暫嘗試過移動端。每份工作都像一塊跳板,暴露短板,也催生渴望。“每次面試都被問懵,”李明回憶,“數(shù)據(jù)庫優(yōu)化答不上來,高并發(fā)場景設(shè)計支支吾吾。失敗多了,反而清醒了——缺的不是面試技巧,是硬實力。”
轉(zhuǎn)折始于第三年。加入第四家公司后,他遇到一位嚴(yán)格的架構(gòu)師導(dǎo)師。白天完成任務(wù),晚上啃書——《深入理解Java虛擬機(jī)》《設(shè)計模式之美》,周末則在GitHub上跟項目、復(fù)現(xiàn)經(jīng)典框架源碼。他養(yǎng)成習(xí)慣:每遇到一個技術(shù)點,必須追到底層;每完成一個需求,主動復(fù)盤優(yōu)化空間。他在LeetCode上刷了五百多道題,從“暴力求解”逐漸到精通動態(tài)規(guī)劃與搜索算法。
去年底,當(dāng)字節(jié)跳動在南京開設(shè)研發(fā)中心的消息傳出時,李明意識到機(jī)會來了。他并沒有立即投遞,而是花了三個月系統(tǒng)性準(zhǔn)備:梳理過往項目,將每個難點和解決方案整理成 STAR 結(jié)構(gòu);針對字節(jié)的業(yè)務(wù)線,鉆研推薦系統(tǒng)與高可用架構(gòu);甚至模擬了十幾輪壓力面試。面試持續(xù)五輪,從算法編碼到系統(tǒng)設(shè)計,從項目深挖到文化適配。當(dāng)最后一輪面試官問他“為什么頻繁換工作”時,他坦然回答:“前幾次是迷茫與能力不足,但每次離開,我都帶著明確要補(bǔ)足的目標(biāo)。現(xiàn)在的我,有能力也有決心長期創(chuàng)造價值。”
一周后,offer如期而至。57萬的年薪,在南京軟件行業(yè)已屬頂尖。但更讓李明感慨的是成長本身:“標(biāo)簽從來不能定義一個人——無論是‘專科’還是‘面霸’。定義你的,是那些無人問津時,你如何一步步填補(bǔ)鴻溝。”
如今,他依然和那些曾開玩笑的朋友聚餐,話題卻變成了技術(shù)趨勢與職業(yè)規(guī)劃。有人問他秘訣,他說:“如果非要說有,那就是把每次挫敗都變成一張清晰的學(xué)習(xí)清單,然后,默默把它啃完。”