點擊上方藍字,關注並星標,和我一起學技術。node

前兩天有粉絲在羣裏讓我寫一下程序員的精進方法,今天就來簡單聊一下這個話題。程序員
在我看來程序員和小兵的職業發展路線是同樣的,我簡單的把小兵到將軍的過程分紅三個階段,來看一下在這三個階段當中咱們須要作些什麼。web
衝鋒陷陣
對於一個小兵來講,最重要的工做就是衝鋒陷陣。小兵須要上戰場奮勇殺敵,咱們程序員也是同樣,須要完成各類各樣的任務。這些任務的來源可能多種多樣,有多是產品經理提的需求,也有多是老闆安排的任務等等。在這個階段比較單純,比拼的就是任務的完成狀況。微信
之前在阿里的時候有一句老話,叫作你要能讓你的隊友願意把後背交給你。阿里有不少這樣的老話,貼在公司的各個地方,有些老話看起來有些雞湯,有些細品還挺有道理的。這句話闡述的點和士兵就更像了,在戰場上只有靠得住的戰友,咱們才願意把後背交給他,不然就完蛋了。那麼咱們要作的就是一個靠得住的人。app

那什麼樣的人是靠得住的人呢?編輯器
其實很簡單,就是靠譜。我以前專門寫過一篇文章談過怎麼樣成爲一個靠譜的人,這裏咱們簡單複述其中幾點。首先一個靠譜的人應該是一個負責的人,份內的事情毫不推脫,保質保量的完成,對於本身的工做有責任感。若是在別人看來是你份內的事情可是你卻沒有完成好是很是扣分的,很容易被打上不靠譜的標籤。測試
其次是專業,咱們的任務不只要完成好,並且要完成得很專業。好比老闆讓你在已有的項目當中開發一個新的功能,你只是完成了功能的開發,充其量只能打60分。由於單純的完成工做體現不出專業,你在完成之餘,還須要結合業務以及場景去思考,可以理解以前的人這麼作的用意,還能有一些本身的想法。不然若是老闆問起,你的回答是我沒想過這個問題,那是要扣不少分的。flex
最後是積極,咱們須要對咱們的工做保持熱忱,願意作一些看起來很傻的事情。這一點提及來容易,可是作起來是這三點裏面最難的。由於一我的的熱情是很容易消磨的,咱們剛畢業進入職場的時候每每都是幹勁滿滿充滿鬥志的,只要短短的兩三年就能夠消磨大多數人的熱情,變成循序漸進的鹹魚。好比完成任務以後寫成詳細的文檔給別人參考,好比挺身而出作技術分享,再好比code review的時候,即便不是本身的代碼也認真研讀。再好比成天作着零零碎碎打雜的事情,還能堅持每一件都認真作好。ui
作這些事情的好處不是一朝一日直接體現的,頗有可能默默無聞付出了不少,也不被上司或者是其餘同事看見。不少人很快就意志消磨了,只是循規蹈矩地完成本身份內的事情。可是想想,一個循序漸進的人,一個喪失了熱情的人,想要往上走,想要承擔更大的責任,擁有更大的視野顯然是很是困難的。spa
在這個階段咱們更多的是作好本身份內的事情,成爲一個合格、靠譜、優秀的工程師。悟性高的同窗,通常能夠在畢業1~2年實現這一點。
策劃行動
《史記》項羽本紀當中,項羽小時候曾經說過這樣一句話,劍一人敵不足學,學萬人敵。
一個小兵再厲害殺敵也是有限的,即便是金庸小說那些大俠們面臨圍攻也只有認栽的份。當咱們的積累了實力、熬到了資歷以後,就該從單打獨鬥逐漸轉變爲策劃行動了,也就是說從單槍匹配變成團隊做戰了。

既然是團隊做戰,那麼就不止須要本身我的的能力了,更須要團隊協做、統籌規劃。在這個階段的工程師每每會負責一個小項目或者是小模塊,帶領幾個「小弟」一塊兒來幹活。我我的認爲在這個階段最須要的能力有兩點,第一點是大局觀,第二點是責任心。
先來講說大局觀,這點很好理解,咱們面臨的不是一個我的的廝殺了,而是團體做戰。咱們須要協做完成一個比較複雜的任務,咱們要考慮的問題會很是多。從項目自己的角度出發,這個項目的目的是什麼,想要達成什麼樣的效果?它的上下游、業務方以及合做方有哪些?對於咱們要完成的任務,有哪些助力(好比現成的組件,其餘團隊和人的協助),又有哪些阻力(坑)?老闆指望達成的效果是什麼,大概須要多少人力?當前的人力是否充足若是不足,是否要刪減功能或者是下降難度?若是要這麼作,怎麼和老闆溝通?每一個人的特色和喜愛是什麼,他們適合承擔哪一塊任務?
若是考慮的角度再深一點,視野再大一點,又會有新的問題。好比當前這個項目對以前和以後的系統會產生什麼樣的影響?這個項目在整個團隊或者是公司的角色是什麼,在規劃當中起到什麼樣的做用?這個項目的後續會作什麼?維護須要投入多少人力?若是效果很差,多是什麼緣由,應該怎麼彌補?當下能夠針對性的作什麼預防和準備?
這仍是項目執行以前,項目開始以後又會誕生一大堆須要操心的事項。小到當前的進度以及完成質量,大到面臨的風險以及臨時發現的問題,這些都須要縝密和深刻的思考。從一個工程師轉向一個管理者,毫不僅僅是從作事情的變成分配任務的這麼簡單。
再來講說責任心,其實這點和大局觀也有一點點像。當咱們成爲管理者以後,咱們負責的人就不只僅是咱們本身了,而是一個團隊。咱們要儘量照顧到團隊當中的每個人。拙劣的管理者呢把團隊中的人當作是本身的下屬,本身不想作的事情就安排給他們,時間一長,全變成打雜的。拿破崙說過,好的領導就是把本身下屬的利益放在心上,而且讓他們也知道這一點。
在互聯網公司利益都是隱形的,好比年末的績效以及我的成長髮展空間等等。雖然不會直接拿上臺面來討論,但每一個人內心都有一根秤,跟着你作事能不能學到東西,有沒有成長,對我的的績效以及職業發展有沒有幫助,這些問題也許不會明說,可是都確定會想的。好的管理者,有能力也有意識會照顧到這一點。
組織戰役
當職位再進一步,從小領導轉變成大領導,要負責的就不僅是一城一地的得失,而是整個戰役了。對應到互聯網公司,大概是公司裏的技術總監,負責一大塊技術或者是業務。
這個階段離我還很遠,我也不太熟悉,只能結合歷史簡單聊聊個人想法和感覺。當咱們評價一個將領的時候,常常會將他們分紅將才和帥才。所謂的將才就是前面一種,負責一場戰鬥,好比攻佔一個城池或者是守衛一個陣地這樣的硬仗。像是這樣的人才多不勝數,單單三國志當中就有不少。而帥才呢,要比將才更高一層,須要肩負一整個戰役,好比老朱揮師北伐統一天下,前線打仗的是藍玉、徐達等將領,但後方指揮的仍是老朱。

對應到互聯網公司當中,這樣的人要作的事不是完成一個項目,而是決定或者是影響公司的發展。爲當下解決問題,爲將來鋪路。咱們來舉個例子,假如你是雙十一的技術負責人,你須要作什麼?你須要負責梳理雙十一的流量以及鏈路,負責機器壓力測試,負責設計預案和備案,敲定事故響應機制,審覈各個環節的流程以及負責人等等。
這麼多環節顯然不可能都是你一我的完成,你畢竟人力有限,因此你須要找到合適的人去作這件事,不只如此,你還須要制定規矩,保證你們的效率和完成質量,解決合做之間出現的問題。
假如再上一層,你是公司的CTO,你須要作什麼?你要作的就不僅是人事安排了,你還須要考慮將來公司的發展。好比明年的雙十一多是什麼規模,它在技術上會帶來哪些挑戰,爲了應對這些挑戰,當下的團隊須要作些什麼?怎麼樣提高你們的效率,須要作哪些基礎建設?你可能還須要考慮財務預算,若是預算有限,怎麼樣實現明年的目標?
這些事情不只不是你一我的能作完的,甚至不是你一我的能決定的了。你可能還須要溝通其餘團隊以及CEO協商,須要說服一些人,須要爭取一些資源等等。
陷入瓶頸怎麼辦?
不知道你們看到這裏是心潮澎湃呢,仍是以爲離本身太遠,因此沒什麼參考價值?下面來聊點實際貼近生活的,好比咱們常常遇到的一個狀況——陷入瓶頸。
陷入瓶頸的緣由有不少,但我總結起來,主要有兩大緣由。
能力不夠
若是在大公司待過,會發現陷入瓶頸的人不少,一待不少年也升不上去的大有人在。但若是再深刻了解,會發現這些案例的背後每每都是有緣由的。比較常見的緣由是能力不夠,以前入職的時候是什麼水平,以後仍是什麼水平,雖然作事情熟練了,可是自己的能力和視野並無提高,仍是隻看到本身的一畝三分地,仍是隻有單兵做戰的水平。
這裏面的因素不少,排開外界的因素不談,內在的一個很大因素就是錯把工做當中的熟練當成了本身能力的提高。由於在公司裏你們作的都是差很少的事情,你以爲別人作的事情你也能作,因而你以爲你可能和他能力差很少。但問題就在於這是錯的,別人考100分是由於卷面只有100分,你考90分是由於你只能考90,這裏面的差距顯然不是10分能衡量的。
舉個例子,我老婆說她以前的團隊裏有一個牛人,幾乎歷來沒有寫出過bug,全部提交的代碼都是正確的。這除了他十分嚴謹以外,顯然額外也花費了大量的心思。一問之下果真,他自發的加班也是最多的。普通人都看得出來他是我的才,老闆天然也不會看不到,因此此人的發展也很好。
有句話叫作魔鬼都藏在細節裏,表面上看差很少實則未必。但當局者迷,身處其中每每以爲我也不差,憑什麼機會輪不到我?但細究起來會發現,可能並非這樣。當你以爲別人作的事情也沒什麼了不得,你也能作的事情,不妨冷靜下來仔細想一想,真的是這樣嗎?是否是有什麼被你忽視的細節呢?
缺少正反饋
除了自身的能力問題以外,另一個主要緣由就是缺少正反饋,這個問題我本身也遇到過,有比較深入的感覺。
因爲性格或者是興趣或者是其餘緣由,有時候咱們不是作不到,而是不想作到。好比本身不感興趣的事情每每不肯意盡心盡力,作到80分以爲足夠了就再也不往下了。若是你沒有遇到一個有責任心的老闆,願意爲你着想,發現你的這些問題,而且你也沒有表達出來本身的問題和不滿的話,那麼這些負面的情緒和情況很容易被忽視。

最後的結果就是,你在不喜歡的事情上作不到很好,老闆對你也沒有特別滿意,因而你沒法去作你喜歡或者是想要作的事情,時間就這麼一點一滴的過去,直到你最終受不了了選擇離開。
這是一個怪圈,如今的事情不能體現能力,你不肯意作好,你不肯意作好呢就不被賞識,不被賞識呢就不會給你作你想作的事情。老實講,一旦陷入怪圈當中很難脫身。最好的方法就是不要陷入這樣的怪圈,也就是說咱們在一開始的時候就須要創建起正反饋。簡單來講你能夠在至少在一方面作得出色,給團隊中的全部人留下印象。
能夠是本職工做,也能夠是文檔編寫,也能夠是技術分享,等等。至少你須要有一點拿得出手,讓全部人爲之一亮。有了亮點以後,老闆就會根據你的亮點給你機會,有了機會你就能夠展現更多的亮點。正反饋也就達成了,一旦達成了正反饋,我的成長和往上晉升都不是事了。
那若是已經身處在了這樣的怪圈當中應該怎麼辦呢?
很遺憾,我也沒什麼好的辦法,通常來講就只有換環境或者是慢慢熬了。換環境是最快的,當下的環境不滿意,沒能有一個好的開局,那最好的辦法就是重開一局,而不是硬着頭皮玩下去。但這樣也是有風險的,由於沒有人可以保證你的下一個環境會更好,生活中的意外是不免的,尤爲是職場上。
也有時候咱們不是不想換環境,而是有這樣或者是那樣的羈絆,致使咱們無法這麼果斷。這種狀況就會麻煩不少,由於咱們要作的不只僅是拿出亮點的問題,還須要扭轉別人的見解,尤爲是沉默了好久的人想要發力,可能本身心裏也會有一層枷鎖,這會讓事情變得更加困難。這種時候就須要咱們本身心裏強大了,只要是咱們認準的事情,就堅持下去,不要理會外界的見解。
歷史上也不乏沉寂許久忽然發跡的例子,外界平穩的環境其實也是咱們一個深耕自身實力的好機會。
總結
最後分享一點我我的的心得,咱們這行的競爭其實也很激烈的。不少人看來可以進入一個大公司就已經很好了,但實際上進入大公司只是拿到一張入場券,真正想要出人頭地,在業內站穩腳跟有必定影響力,纔剛剛開始。這裏面有不少未知的因素, 並非說咱們遵循某種策略或者是足夠努力就必定能夠成功的,也許還須要一點運氣。
但有一點我感覺很深入,一我的一直走運是很難的,一直點背一樣也不容易。咱們的人生當中總會有潛在的機遇出現,若是你敬業、努力的話,那麼你遇到它們的機率可能還會更大。當機遇出現,請必定不要猶豫,努力把握它。也許下次再遇到,多是幾年以後了。
另一點是跳槽要冷靜,千萬不要隨意。跳槽的緣由有不少,好比對薪水不滿意,對作的事情不滿意,遇到了瓶頸等等。咱們知道咱們爲何跳槽,但不知道的是跳槽可否解決咱們的問題。尤爲是自身的問題僅僅經過跳槽是必定無法解決的,跳槽只能解決環境和待遇的問題。當你接到獵頭電話,或者在職場中遇到沮喪的事情的時候,不妨問問本身,若是本身要從新選擇,那麼但願達成的目的是什麼?達成的機率又有多大?
尤爲是不要隨便爲了錢跳槽,由於頗有可能你跳槽以後很快又會陷入新的不滿。由於跳槽自己的增加理由比較弱,別人請你去只是由於缺人的話是體現不出你的價值的。不如好好鍛鍊鍛鍊本身的實力,讓本身作出價值來,讓別人由於你的價值把你請過去,這樣不管是對於後續的職業發展仍是待遇都會更有幫助。
絮絮不休說了這麼多,但願你們都能有美好的將來。
今天的文章到這裏就結束了,若是喜歡本文的話,請來一波素質三連,給我一點支持吧(關注、在看、點贊)。
本文分享自微信公衆號 - TechFlow(techflow2019)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。