看到這個(gè)問題,作為一個(gè)資深的程序員和管理者,我認(rèn)為我有資格來回答這些問題。無論你是因?yàn)閻酆镁幊套呱铣绦騿T這條路,還是因?yàn)榭匆姵绦騿T的高薪加入這個(gè)行業(yè)。既然有這個(gè)疑問,就說明你已經(jīng)有了職業(yè)焦慮:程序員真的能一直做下去嗎?是不是35歲就面臨著中年危機(jī)?單靠寫代碼能走向管理者崗位嗎?大齡程序員的出路在哪里?我結(jié)合我自己做10多年程序員的經(jīng)驗(yàn)(擔(dān)任過高級(jí)工程師、數(shù)據(jù)架構(gòu)師、數(shù)據(jù)負(fù)責(zé)人和數(shù)據(jù)總監(jiān)等崗位),講講大家都十分感情去的問題。
一 程序員能干到退休為止嗎?
1.1 從初級(jí)程序員開始,不要錯(cuò)過的發(fā)展路徑
首先,程序員們關(guān)心的都是自己在這個(gè)行業(yè)能干多久,而不是在某個(gè)公司待多久。尤其是現(xiàn)在行業(yè)內(nèi)卷非常嚴(yán)重,幾乎不可能讓你在一個(gè)公司工作一輩子;因?yàn)椋袠I(yè)變數(shù)很大,說不定哪天就裁員了,而且你正好在裁員名單中。針對(duì)這種情況,我的建議是:
在自己30歲之前,一定要不斷地豐富自己的知識(shí)庫(kù),讓自己的能力保持在行業(yè)的頭部。
① 初級(jí)->中級(jí)
這個(gè)階段主要是學(xué)習(xí),在很少依賴其他人幫助的前提下,能夠保質(zhì)保量的完成手上的工作。在這個(gè)時(shí)期,自己多找?guī)讉€(gè)師父,由資深的程序員對(duì)你做技術(shù)路線的指導(dǎo)。這樣即可以少走彎路,又可以快速地學(xué)習(xí)和掌握前沿知識(shí)。
② 中級(jí)->高級(jí)
這個(gè)階段主要是從公司現(xiàn)有的技術(shù)架構(gòu)中,提煉出高難度、有價(jià)值的內(nèi)容。并能夠用批判的眼光看待這些事,總結(jié)出哪些做得好,哪些做得差。如果是你來做,你會(huì)怎么做?
可以從領(lǐng)導(dǎo)對(duì)你的信任角度上,看出來你在這個(gè)階段成長(zhǎng)的好壞,如果讓領(lǐng)導(dǎo)和團(tuán)隊(duì)成員對(duì)你非常信任,說明你這個(gè)階段是成功的,可以方向的走向第三個(gè)階段。
③ 高級(jí)->資深
這個(gè)階段至關(guān)重要,涉及到你是走專家路線還是走管理路線,這是一個(gè)轉(zhuǎn)折期。如果自己擅長(zhǎng)溝通和樂意交流,在這個(gè)階段多觀察你的直屬領(lǐng)導(dǎo)是怎么安排工作的,他的工作方式有哪些缺陷,如果是你你會(huì)怎么做,需要不斷地總結(jié)歸納管理方式方法;除此之外,在技術(shù)方面,必須要學(xué)會(huì)復(fù)盤,并且愿意復(fù)盤,而且是愿意看別人復(fù)盤。復(fù)盤是對(duì)程序員幫助最大的環(huán)節(jié),一定不要認(rèn)為復(fù)盤是浪費(fèi)時(shí)間。
如果你想走專家路線,那么就要保持頭腦的清醒:你做的內(nèi)容是純技術(shù)還是業(yè)務(wù)+技術(shù)。如果是純技術(shù),那么走專家路線是沒有問題的。否則,千萬不要走專家路線。
1.2 消除常見的誤解,包括【只能吃青春飯】
一定要消除青春飯的這種不良的意識(shí),為什么呢?因?yàn)楣芾韻徱彩羌夹g(shù)出身。從程序員編程管理人員,也能夠年薪百萬。如果你不是科班出身,怎么能做好一個(gè)管理者呢?一個(gè)管理者需要的技能很多,需求分析、目標(biāo)設(shè)定、資源協(xié)調(diào)、團(tuán)隊(duì)協(xié)調(diào)和賦能培訓(xùn)。管理者不是想想就能做到的,需要既懂技術(shù)又懂業(yè)務(wù),同時(shí)還要懂管理,更要會(huì)報(bào)告,會(huì)表功,甚至?xí)隹蛻舻墓P(guān),智商情商雙雙在線。
如果你練就了這一身本事,還能是青春飯嗎?是不是感覺到自己有很多內(nèi)容要學(xué)習(xí),要修煉。
二 我適合做管理還是技術(shù)
2.1 并不是說管理者一定會(huì)脫離技術(shù)
作為程序員,其實(shí)人到中年,就要面臨著轉(zhuǎn)型的挑戰(zhàn)。如果一直寫代碼,你和20歲出頭的小伙子去競(jìng)爭(zhēng),就會(huì)累得頭破血流。人無遠(yuǎn)慮必有近憂,就職業(yè)發(fā)展規(guī)劃來說,應(yīng)該轉(zhuǎn)型為架構(gòu)專家、算法專家,研發(fā)主管或者項(xiàng)目經(jīng)理。
管理者不是必須要懂技術(shù),管理本身就是一門學(xué)問,職業(yè)經(jīng)理人就是依靠管理吃飯的。管理的真正核心是利用資源,知人善任,自己不懂技術(shù)可以找一個(gè)懂技術(shù)的人。經(jīng)常看見公司的高管在變動(dòng),他們?cè)诩夹g(shù)、專業(yè)方面不一定有多精通,但是具備了經(jīng)營(yíng)管理的能力,一樣可以在新的領(lǐng)域取得成績(jī)。
2.2 不要做自己不擅長(zhǎng)的事,不盲目追求高薪
追求高工資,帶來的是錢,也是一種成就感。但是一味想通過跳槽來升職加薪,是最不可取的。可以負(fù)責(zé)任地講,在你的職業(yè)生涯的頭5年,這種做法影響不大。但是在5年以后,你會(huì)發(fā)現(xiàn)自己沒有沉淀和積累,因?yàn)閾Q工作也是非常耗精力的。
不要看見別人做了管理者,自己就認(rèn)為可以做。自己一定要認(rèn)清楚自己的能力范圍,在能力達(dá)到時(shí),并且自己愿意轉(zhuǎn)型時(shí),值得一搏。
三 除了寫代碼,你還有很多事情要做
3.1 學(xué)會(huì)互聯(lián)網(wǎng)思維,多渠道發(fā)展,多種經(jīng)營(yíng)
有人會(huì)說,我現(xiàn)在已經(jīng)35+歲了,我還是普普通通的程序員,沒有一技之長(zhǎng),也不懂管理。我該怎么辦呢?互聯(lián)網(wǎng)時(shí)代給了我們很多創(chuàng)業(yè)的機(jī)會(huì),比如可以做自媒體,直播帶貨,自己開一個(gè)小型的培訓(xùn)公司。
最好是在自己年輕的時(shí)候,就考慮過有一天會(huì)被IT行業(yè)淘汰,那我應(yīng)該去做什么呢?要著手準(zhǔn)備什么呢?
3.2 掌握跨界知識(shí),成為跨界人才
我還是那句話,自己行業(yè)內(nèi)的東西對(duì)于自己來說,是最簡(jiǎn)單的。平時(shí)多和其他行業(yè)的人交往,多聽、多學(xué),有可能他的領(lǐng)域就是你發(fā)光發(fā)熱的地方。程序員有著執(zhí)著、冷靜、聰明的頭腦,做任何事情都不會(huì)比其他人差,主要是選好方向。