1. 程式人生 > >成為高階工程師後,職業生涯的下一步是什麼

成為高階工程師後,職業生涯的下一步是什麼

程式設計師的工作不是寫程式碼,而是解決問題。成為高階工程師後,如果不做管理者,你還能做什麼呢?

你做程式設計師已經有好幾年並且已經晉升過一兩次,最終升任了高階工程師或一些其他的同等職位,在此之前,你的職業道路簡單明瞭:你學會如何獨立工作,然後一步步升任為高階工程師。

現在的你開始思考自己職業生涯的下一步是什麼,如果你還沒有明確的規劃,問自己幾個問題:

  1. 你是否成為了一個管理者且不再程式設計?
  2. 僅僅學習新技術,你是否覺得不夠?
  3. 你的目標是什麼?

本文我想提出一個職業發展的替代方案,一個能給你更多自主權和討價還價能力的替代方案。與成為管理者不同的是,它仍然允許你程式設計。

從寫程式碼到解決問題

作為程式設計師的工作到最後是解決問題,而不是編寫程式碼,解決問題需要這些步驟:

  1. 發現和確認問題
  2. 提出解決方案
  3. 實施解決方案

這裡面的每一個都可以被認為是一種技能樹:一組可以單獨和並行開發的相關技能。但是在實踐中,你通常會從使用第三個技能樹開始,在變得更有經驗的時候,才逐個新增其他技能。

Randall Koutnik 把這些描述為一種職業頭銜,一個職業發展走向:實施者,解決者和發現者。

這裡推薦一下我的JAVA架構學習交流群:614478470 ,想要學習Java高架構、分散式架構、高可擴充套件、高效能、高併發、效能優化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分散式專案實戰學習架構師視訊都有整理,送給每一位JAVA小夥伴,有想學習JAVA架構的,或是轉行,還有工作中想提升自己能力的,正在學習的小夥伴歡迎加入學習。

作為實施者,你是一名沒有經驗的程式設計師,你的任務由其他人定義:你只需實現小的、明確指定的程式碼塊。

假設一下,你在一家為養寵物的人搭建網站的公司工作。你在上班的時候會接收到一個任務:“在這裡新增一個下拉選單,列出所有的鬣蜥疾病,你可以從 IGUANA_DISEASE 表中獲取這些疾病。選擇一個選單項應重定向到適當的頁面。”

你不知道使用者為什麼會需要列出鬣蜥疾病,也不必花費太多時間來弄清楚如何實現它,照吩咐去做就行了。

當你變得更有經驗時,你就成了一個解決者:你能夠為不太明確的問題想出解決方案。

當你遇到一個問題:“我們需要在網站上新增一個部分,讓寵物主人知道自己的寵物是否生病了。”你先獲悉自己擁有什麼資料,可以使用哪些 API,然後與設計師一起設計 UI,建立一個實現計劃,最後編寫程式碼。

最終你會成為一個發現者:你開始自己發現問題並找出其根本原因。

你會去和你的經理談鬣蜥:幾乎沒人擁有鬣蜥,為什麼它們在頁面上和貓狗有一樣的空間?更不用說給鬣蜥編寫特定的程式碼,這完全是在浪費時間,難道不是應該編寫適用於所有動物的通用程式碼嗎?

經過一番討論,你發現必須重做網站架構、業務邏輯和設計,這樣就不必在每次新增新動物的時候都編寫新程式碼。如果你提出正確的架構,使得新增一個新的動物只需要花一個小時,公司就可以以低成本服務於許多動物利基市場。你將與整個團隊一起合作完成解決方案的設計和實施。

成為發現者的好處

許多程式設計師最終停留在解決者這個角色,不知道下一步該做什麼。如果你不做管理,那麼成為一個發現者是一個很好的選擇,原因有兩點:自主性和生產力。

Kutnk 的主要觀點是,這三個階段每走向下一步都會給你更多的自主權。作為實現者,幾乎沒有自主權,作為解決者,會擁有稍多的自主權,作為發現者,你擁有非常多的自主權:你被賦予一些模糊的目標和約束,由你自己來決定做什麼。這會帶來很多樂趣。

除此之外,還有一個好處:從 Implementer 到 Solver 再到 Finder,你將變得更有生產力,因為你所做的不必要的工作變得更少。

  • 如果你只是在執行別人指定的解決方案,可能會陷入低效的工作。
  • 如果你只看到問題的表面就提出一個解決方案,那最終解決的可能不是真正的問題。

你越擅長診斷和發現潛在的問題,提出解決方案,並與他人一起工作,你就越少做不必要的工作,你就會更有效率。

利用你的生產力

如果你是一個發現者,你的工作效率就會大大提高,這會讓你成為一個更有價值的員工。擅長挖掘高價值問題的人能發現那些無人知曉的障礙,發現客戶真正想要的東西,你會成為他們中的一員。

這意味著你有更多的談判優勢:

  • 協商加薪更容易成功。
  • 可以找到更好的工作,即使這個工作涉及到你不瞭解的技術。
  • 甚至可以申請為期三天的週末。

因此,如果你想在繼續程式設計的同時事業上也取得進步,就從現在開始去尋找問題吧。一旦專門去注意這件事情,你會發現問題無處不在。

想要學習Java高架構、分散式架構、高可擴充套件、高效能、高併發、效能優化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分散式專案實戰學習架構師視訊免費獲取   架構群:614478470