本文作者:張海龍,CODING 創始人兼 CEO
程式設計師日常的職業焦慮碰到 19 年初的裁員浪潮,恐慌被放大了數倍。這兩天網易又爆出裁掉了一千多人,被裁員的焦慮籠罩著行業內的每一個人。我倒覺得適當的焦慮是好事,生於憂患嘛,迫使你從日常的工作中脫離出來做一些思考。
之前對雲端計算行業的未來做了一些分析,後臺有人問我:就開發者個人來說,未來十年需要怎樣維護自己的職業競爭力。想了想內容很多,這裡通過幾個趨勢給大家一些方向上的建議。
“No Code”會搶走程式設計師的飯碗嗎?
通過不使用或者儘量少的程式碼來完成專案的開發模式被稱為“No Code”。從最初的拖拽式建站工具到模組化的服務,大量減少了企業的開發負擔和程式碼量。
那 “No Code”的趨勢會對程式設計師群體產生什麼樣的影響?
程式碼熟練工群體將會消失,我們常常戲稱的“搬磚”崗位將會越來越少。未來工具的成熟會取代大量對熟練度有需求的工作崗位,就像 ETC 取代高速公路收費員一樣。
同時在某些標準化場景下,經驗型的知識會迅速貶值,商業的力量會將所有的通用型經驗包裝成產品。
在這樣的情況下,開發者們應該如何進行職業規劃呢?
NetFlix 全週期型程式設計師理念
NetFlix 提出了全週期型程式設計師的概念,簡單來說就是把研發分成了兩個部分,一部分人專門負責針對各個環節進行深入的研究和工具的開發,而另一部分人則以個人為單位,運用這些工具做出產品。
這是一種全新的研發組織架構,原來的流水線是每人負責一小塊,涉及大量的協作工作。而在這種架構中,開發者一個人負責需求實現的全部,需要什麼零件,到對應的倉庫找,需要裝置就找對應的裝置進行加工,如果碰上特別複雜的問題可以找專家組解決。這樣能更少的依賴其他人進行工作,減少結構性的加班。
NetFlix 的架構是建立在強大的基礎設施能力和階梯式人才儲備上的,一般企業很難有如此完整的配置。不過現在流行的微服務化、元件化等趨勢也逐漸在小公司興起,這也是全週期型程式設計師理念的體現。
開發者們將何去何從?
在我看來,未來十年全週期型程式設計師的理念將越來越盛行,這意味著未來程式設計師人群的兩極分化將愈發嚴重,其中兩種人將最吃香:
一是深耕於某一領域的專家型程式設計師,主要工作是定義各種工具元件,這樣的人主要會就職於超級大廠或者工具供應商。
二則是對軟體設計有深入理解並能解讀實際業務需求的業務型程式設計師。這類工程師將會服務於各個企業,解決實際業務需求。
其中,對業務型程式設計師的市場需求將佔據 95% 以上,雲時代,想成為一個優秀的業務型程式設計師需要具備以下能力:
工具思維
隨著工具的成熟,對工作熟練度的要求降低後,對工具的選擇和能否快速適應新的工具將成為優秀業務型程式設計師的主要判斷標準。工欲善其事,必先利其器,一個優秀的業務型程式設計師需要主動去了解新的工具和產品,拓寬自己的視野,避免手中只有錘子所以看啥都覺得是釘子的情況。
但工具思維並不僅僅是瞭解最新的工具,而是要在有足夠資訊的情況下選擇最合適的解決方案。很多時候最合適的解決方案恰恰是最土的解決方案而不是最新的。每個專案開始之前需要做好技術選型,合理利用各類工具,將效能最大化。
快速學習的能力
對於業務型程式設計師來說,無論是面對需求還是市面上日益增多的工具和產品,都需要快速抓住核心,理清脈絡。同時為了避免成為 API 工程師,一個優秀的業務型程式設計師需要再放一些精力在“術”的維度上,比如如何根據業務需求來選擇業務模式、瞭解持續整合/ DevOps 等方法論的真正意義。
對業務的深入瞭解
從公司角度來說,大部分公司都是以盈利為目的的,隨著大量共性的工作逐步被工具替代,解放了勞動力,企業更聚焦於核心業務模組。這也意味著,除非立志於成為專家型程式設計師,你或多或少都要開始瞭解公司的核心業務,從全域性視角做開發,儘可能去了解趨勢、行業和公司業務,做到知其然還知其所以然,也能為之後的崗位轉型做準備。
軟體開發的前十年,伴隨著開發方式的轉變和技術爆發,程式設計師面臨著巨大的技術焦慮,未來十年,軟體開發組織形式可能也會發生一系列的變化。阿里說“擁抱變化”,把握住變化帶來的機會會讓開發者們更輕鬆,更高效的獲取收入。
“若不抽出時間創造自己想要的生活,你最終將不得不花大量時間應付自己不想要的生活。”
——Thucydides
Reference:
https://medium.com/@rrhoover/the-rise-of-no-code-e733d7c0944d
https://medium.com/netflix-techblog/full-cycle-developers-at-netflix-a08c31f83249