1. 程式人生 > >35歲大齡程式設計師的職業生涯發展之道-大齡碼農如何避免被裁員-IT人工職能IOT網聯網演算法各種高精尖技術情況下大齡程式設計師如何跟上節奏不被淘汰-程式設計師迷茫如何自我革新-軟體設計在大陸的生命活力

35歲大齡程式設計師的職業生涯發展之道-大齡碼農如何避免被裁員-IT人工職能IOT網聯網演算法各種高精尖技術情況下大齡程式設計師如何跟上節奏不被淘汰-程式設計師迷茫如何自我革新-軟體設計在大陸的生命活力

這是一篇從“人”(而非技術也非管理)的角度,聚焦於自身職業發展方方面面的文章,包括職業、學習、生產力、影響力等。

1. 擁有商業心態

你所能犯的最大錯誤就是相信自己是在為別人工作,職業發展的驅動力一定是來自個體本身,而不是領導、公司,因為職業發展是屬於你自己的。如果你真的想在這個充滿競爭的世界裡脫穎而出,那麼你首先必須制訂一個堅實可靠而又深思熟慮的計劃,學會主動管理自己的職業生涯。

 

職業生涯中要做的第一件事便是,轉變你的心態。而商業心態對於管理職業規劃至關重要。如果你已經習慣於領取一份固定的薪酬,便會很容易導致你產生:你只是在為這家公司打工的謀生心態。儘管在你的職業生涯的某個特定時間段裡,你可能確實是在為某家公司打工,但是千萬不要因此固化了你的整個職業生涯。

image.png

那麼心態該如何轉變呢?首先你要把自己當作一個企業去思考,然後把僱主當作是你這個企業的一個客戶。當然,你可能只有這麼一個客戶,你所有的收入都是從這一個客戶得來的,但是這種詮釋僱用關係的方式可以將你從僱傭關係的弱勢地位轉換成為自我治理和自我引導的主動地位,同時,心態轉變後能更有利於你做出良好的商業決策。

 

2. 作為企業,該如何思考

現在你已經把自己當作一個企業了,在這個狀態下,其實你的收益並不大,至少物質上並沒有給你太多好處。要想從中有所收穫,你得先弄明白企業是如何思考、發展的?上個月跟我們的PMO@冰霖 有過一次閒談,過程中印象最深的一句話是:一個企業要發展,首先要找到一個能賺錢的產品或服務,然後思考如何完善、改進,以達到更長遠的發展。發展過程中,始終要考慮投入產出(成本、風險、收益、回報週期),將收益最大化。

 

image.png

 

把你作為一個企業,你目前以及未來能提供什麼服務或產品呢?即使你剛開始思考這個問題,對你自己的職業生涯或許也會慢慢產生深遠的影響。拿我來舉個例子,我目前的職業是web前端工程師,那我售賣的就是前端開發技能,準確來講,售賣的是把公司的想法實現成網際網路產品人機互動的能力。企業需要持續不斷地迭代、改進和完善自己的產品。你也應該這麼做,通過不斷學習升級打怪,去完善自我。

 

3.思考未來的目標

作為企業,出了要知道自己能提供什麼服務或產品,還需要明確的業務目標。起步階段最簡單的就是在心中樹立一個大 目標,然後再建立能幫你達成這個大目標的小目標。大目標並不需要那麼具體,但是必須足夠清晰,能夠讓你知道自己是在向它前進還是離它越來越遠。 例如想成為一家公司的經理或主管?想在某一天走出去開拓自己的業務,研發自己的產品?

很多人認為目標太過於大,不容易實現,這也是為什麼需要設立小目標的原因。實現目標的過程,就好比航海,小目標可以讓你航行軌道始終控制在正確的方向上,激勵你朝著更大的目標前進。大目標如果沒有分解成小目標,你很容易偏離航向,迷失在茫茫大海之中。

 

舉個例子:

職業上,我想成為一個能夠影響網際網路行業發展的專家。

  1. 在實現目標的過程中,我的必經之路是踏入行業,掌握行業的某種技能,考核的標準是:能夠通過自己掌握的技能,實現就業。
  2. 經過在行業中的幾年摸爬滾打,不斷提升自己技術(專業能力)、積累人脈(交際能力),慢慢打磨自己向高手靠攏,衡量的標準是是否能跟其他高手/專家進行平等對話(這裡的平等對話,並不是低人一等的意思,而是互相交流過程中能夠相互傳遞資訊,而不是不知所云)。 
  3. 越往上走,你會發現你的視野正在變化,可以看到別人所看不到,能夠影響甚至引領行業發展的東西正等著你去挖掘。

image.png

 

要實現目標的整個過程,那我可能會切割成如下小目標:

 

image.png

 

4. 承擔更多的責任

逼著自己一路前行的方式方法很多,但責任是永遠是鞭策你自我成長最有效的途徑。如果你自驅能力很強,那我恭喜你哈。如果不是,請你在有任何機會去承擔更多責任時,主動去承擔,接受挑戰。

 

很多人會問,假如沒有被賦予更多責任怎麼辦?

  1. 主動尋找機會。通常沒有人願意涉足的領域是搜尋機會最好的地方。以程式設計師來說,可能有一個沒人願意碰的遺留應用,或者程式碼庫裡的某個沒人敢去碰的模組。正因為沒有人願意碰、沒人敢去碰,所以沒人跟你搶,這就成為了你日益強大的陣營。如果你能把沼澤變為良田,你也就展現了自己的價值。
  2. 間接承擔責任。最好的方式是成為團隊中其他人的導師,自願幫助新人加速成長,為任何有需要的人提供幫助。通過介入和解決別人的問題,你不僅可以學到更多自己專業之外的知識,而且隨著時間的推移,你還能在團隊中逐步樹立影響力。

 

5.解決問題,而不是來抱怨問題

在任何組織中,總是有很多人會告訴你為什麼這個想法行不通,那個問題太難,這個問題不適合我來做,更適合誰去做。這樣的人不勝列舉。千萬不要成為他們中的一員。相反,你要成為那個永遠能為各種問題找到解決方案,並執行落地這些解決方案以獲得成果的人。成為這種人也是獲得晉升的可靠方法。如果你能解決別人無法解決或不願解決的問題,無論在哪家公司,你都能輕而易舉地成為最有價值的人。

 

6.掌握快速自我學習的能力

很多程式設計師被繞進了學習新技術、新程式語言、新框架的漩渦,感覺學習的壓力很大,怎麼爬也爬不出來。通常,這種壓力是自我造成的。

 

在我剛出來工作的時候,我學習技術的主要途徑就是買一本書,然後只有通讀完全書後,我才會將自己學到的技術應用於專案實踐中。這個方法,確實能學到東西,但是效率很低,在實踐過程中,還得經常回顧書的內容,來彌補自己在學習過程中遺漏的問題。

 

通常在業務發展的過程中,技術選型是不會等待你學習好一門技術才投入到業務中的。這便迫使我們去尋找更好的自學方法,能在有限的時間內吸收、掌握所需內容即可。例如我在已有react開發經驗的情況下,只花了1天左右零碎的時間,通過對比react與vue的語法區別,然後在JSBin(http://jsbin.com)中試跑demo,第二天便可以將vue投入到專案開發中去。

 

這其實是一個篩選學習內容、動手操作再到學以致用的過程,這個過程可以不斷迴圈,不斷吸收更多的知識。

 

這個方法可以高效地掌握一門技術,而無需通曉全部細節。通過在業務實踐專案中不斷暴漏問題、解決問題、總結問題,你會發現所有技術問題,慢慢都會收攏到一起,逐漸豐富你的經驗,最終你便開始能夠解決“某一類問題”,而不是“某一個問題”,隨著你能夠解決問題的型別越多,你融會貫通的能力就會越強。 

 

 

7.找出自己的短板,並消滅它

專注於自身強項,這沒什麼不妥,但有時候,如果弱點得不到解決,通常會成為你的職業或生活的絆腳石。我們每個人都有弱點。我們能發現並消除自身的短板越多,長久來看我們從中受益越多----可以參考木桶效益。

很遺憾的是,每個人身上大多數的短板,自己只能隱約覺察到。對於自己不知道的,你很難清楚地意識到,也很容易忽略。

image.png

那麼我們如何找到自己的短板呢?旁觀者清、當局者迷的道理大家都知道,但通常人都不太喜歡逆耳的聲音,所以別人往往也不會很直接的指出你的短板。

 

這種情況下,我們可以通過如下嘗試:

  1. 自身主動與他人做對比:同樣一件事情,人家做到什麼程度,你能做到什麼程度,人家是怎麼做的,你是怎麼做的,總的來說,不比不知道,一比嚇一跳。通過比較你就知道自己的思路,行動的差距在哪裡。
  2. 在反思中找到自己的短板:有時候做一個事情,不順利,失敗。這時候雖然很沮喪,但是如果能夠在沮喪中反思自己,為什麼會出現這樣的錯誤,如果當時怎麼樣處理就會好一些,由此就知道缺少哪一方面的短板了。
  3. 有一兩個知己朋友也會起到很大的作用,虛心吸收朋友指出的問題,並珍惜你倆的基友吧
  4. 專注於自己的領域的同時,也有擴寬自己的視野,涉獵不同領域渠道的資訊

 

8.合理規劃時間,提高生產力

 

多年來,我嘗試過不少提升生產力的方法,目前我用的是四象限工作事項管理法和番茄時間管理法組合的方式。

8.1 番茄時間管理法

第一次使用番茄工作法的時候,我並沒有嚴格做到它規定的要求。我只是每天用它來設定若干個“25分鐘”的番茄鍾。我並沒有留意自己每天完成了幾個番茄鍾,也沒有估算某項任務要用掉幾個番茄鍾;因此我並沒有從中受益。只是簡單認為整個方法就是讓你在一個時間段內保持專注。

 

直到後來我決定嚴格地使用番茄時間管理法,發現自己潛移默化地逐漸有能力、可量化去真正評估自己每天可以完成的工作量。通過跟蹤自己一天內完成了多少個番茄鍾,併為每天要完成的番茄鐘的數量設定目標。今後每次專案中,需要評估工作量、估算工時,便發揮了番茄時間管理法真正的威力。

 

image.png

 

8.2 四象限工作法

那四象限工作法如何與番茄時間管理結合使用呢?

 

使用番茄工作法,你可以把每週看作是由有限個番茄鍾組成的。想在每週完成一定數量的任務?你要搞清楚自己一週能完成多少個番茄鍾,並相應地設定任務的優先順序。通過計算自己完成的番茄鐘的數量,可以確切知道自己一週完成了多少任務。

 

這裡有個有意思的問題:如果你沒能完成自己設定的任務,但是卻用完了足夠數量的番茄鍾怎麼辦?

 

某些情況下,我們總是幻想著自己可以在一週內完成超出自己實際能力許多的工作,過高地估計了自己的能力而低估了完成任務所需的時間。這個時候,我們就非常有必要給各個任務項設定的優先順序了,將你每週需要完成的任務按照重要、緊急劃分成四類:重要緊急、重要不緊急、緊急不重要、不重要不緊急。

 

有人過來問,這兩個分別是什麼軟體?

這個給大家介紹下哈,分別是Focus Matrix和Be Focused。 這兩款軟體資料是可以打通的,同時提供了手機版。

當然也可以不使用軟體的方式,這只是一個時間和任務管理的方法論,你也可以買一個沙漏⏳管理時間和便籤管理任務,使用得當的話,也是可以達到一樣效果的。

9. 打造個人影響力

 

事實上個人影響力的提升一定不是一朝一夕的事情,也不是光設定目標就可以達成的。確實有許多潛移默化和機緣巧合融合在裡面。我所談的也僅僅是方法論,需要大家去踐行,再去提煉和總結。

 

這裡總結了三步:

image.png

第一步是分析自己,很多人覺得我怎麼會不知道自己是個什麼人呢?抱歉,絕大部分80%的人呢,都是無法認清自己,一個可以客觀評價自己的人,在自我認知部分就會更精準。最簡單可量化的方式就是從技能、性感等方面去繪畫雷達圖,從而客觀的評價自己。

image.pngimage.pngimage.png

第二步就到了定位自己,這個其實跟產品的定位有點類似,為什麼有些品牌可以成功,確實與其對於自身產品的高度認知和品牌價值的集中萃取,一眼就可以做識別和關聯使用者。那麼對於我們人來說也是這樣的,我知道自己是什麼樣的人之後,我也會清晰的知道,自己適合往什麼樣的方向去發展,找到自己的定位。

第三步是形成標籤,在你過往的各種各樣的人生經歷中,你需要提取一些標籤,固化自己,讓自己成為斜槓青年,讓陌生的人在認識你的時候,可