程序員從入門到精通

之前寫了篇 《程序員、技術(shù)主管和架構(gòu)師》,有讀者留言說:“希望能寫寫前期階段程序員的發(fā)展經(jīng)歷。” 收到這個(gè)問題后確實(shí)引發(fā)了我的一些回憶和思考,回想如果讓我再重走一遍過來的路,在哪些方面還需要去改善呢?

另一篇文章 《程序員的成長階梯和級(jí)別定義》 描述了程序員的成長發(fā)展階段,這篇回答了 What,但并沒有提及如何去做才能更好更快的發(fā)展成長,所以本篇借用了一個(gè)大家耳熟能詳?shù)拿Q模式,從一個(gè)稍微高一層的抽象維度來回答 How 的問題。

定位

還記得當(dāng)初為什么選擇程序員這個(gè)職業(yè)么?如今程序員所在的行業(yè)處于發(fā)展上升期,薪酬待遇整體高于傳統(tǒng)行業(yè),所以各類程序員培訓(xùn)機(jī)構(gòu)如雨后春筍,流水線般的為各類只差程序員的公司批量供應(yīng),這樣的批量生產(chǎn)似乎有點(diǎn)把程序員當(dāng)成了工廠的工人。

而程序員的工作實(shí)際更貼近于工匠,既有創(chuàng)造性的工藝性工作,也有模式化的工程性工作。想清楚自己成為程序員的初衷是什么?只是為了進(jìn)入一個(gè)相對(duì)高薪的行業(yè),得到一份工資高于平均水準(zhǔn)的工作?這樣終究是走不了太遠(yuǎn)的。

很多入門程序員都是剛從學(xué)校畢業(yè)的,曾記得在吳多益(@nwind)的一篇工程師成長分享的材料上,如是說:

從小到大的教育,我們習(xí)慣性被安排:“課后作業(yè)是 X1、X2,后天必須交”,“本學(xué)期的必修課有 XX、YY,必選的選修課有 ZZ、WW”
十幾年來你都是這樣度過的,但現(xiàn)在你已經(jīng)不在學(xué)校了,你要安排你的未來。

剛?cè)肼殘?chǎng)的程序員依然保持這個(gè)習(xí)慣,等著主管安排,工作就是完成主管安排的任務(wù)嗎?好吧,這只是工作的一部分。如果你每天的工作就只是完成被安排好的任務(wù),那么你自己的成長就會(huì)非常的慢,因?yàn)橹鞴馨才湃蝿?wù)并沒有那么多的精力來考慮任務(wù)是否適合個(gè)人的成長發(fā)展。這些任務(wù)是組織發(fā)展的需要,而不一定適合個(gè)人的發(fā)展,但組織是付了薪酬來讓你完成任務(wù)的,所以這是工作的必需部分。

自己才是職業(yè)生涯的管理者,想清楚自己的發(fā)展路徑:遠(yuǎn)期的理想是什么?近期的規(guī)劃是什么?而今日的任務(wù)和功課又是什么?今日之任務(wù)或功課哪些有助于近期之規(guī)劃的實(shí)現(xiàn),而近期之規(guī)劃是否有利于遠(yuǎn)期之理想?

今日除了任務(wù)為什么還有功課?功課是學(xué)校里的概念,職場(chǎng)里沒有。所以離開學(xué)校進(jìn)入職場(chǎng)的功課都是自己給自己安排的。任務(wù)來自主管的安排,功課來自自己的安排。很多時(shí)候我們只去完成任務(wù)卻從未給自己安排功課,而等著被安排和主動(dòng)安排,在未來將產(chǎn)生巨大的差別。

一開始我們可能只有模糊的遠(yuǎn)期理想,也沒那么清晰的近期規(guī)劃,但一定要有足夠清晰明確的今日任務(wù)和功課,即使在你的主管因?yàn)楦鞣N原因沒給你安排的情況

網(wǎng)友評(píng)論