解決問題的能力比技術本身更重要
很多程序員都有一個技術理想,幻想著通過不斷學習,不斷提升自己在某個領域的技術能力,從而獲得持續的競爭力。這個現象在剛畢業或者工作時間不長的程序員中尤為常見,直至上升通道受阻,或者出現中年危機,大部分人才會意識到這條路在當下的中國難以走通。
技術只是解決問題的手段
上周一個同學離職,問及原因,說是不想涉及業務,要去追求純粹的技術。這種思路我非常理解,畢竟曾經也有過類似的想法。但是現在我的想法已經發生了很大的變化。
舉個例子,某個明星創業公司,上線某個業務之后非常火爆,一時間訪問量暴增,服務器訪問壓力太大,頻頻出現服務無響應甚至宕機的事情。怎么解決這個問題呢? 重新開發性能更高,支持更高并發的服務?等你開發好,市場說不定早被其它公司搶走了。解決這個問題更高效的方法是什么呢?堆更多的服務器能不能解決問題?人肉運維能不能解決問題?
看到沒有,技術本身、機海戰術、人海戰術本質上沒有差別,都是一種解決問題的方式,是贏得商業市場的一種手段,在特定的場景下,這種手段甚至是低效的、不可忍受的。
所有的技術都是為解決某個問題而存在。技術是為人類服務的,是為市場服務的。脫離了這個原則,所有的技術都是扯淡。
僅僅技術好是無法成為技術專家
在商業公司中,大部分的發展路徑可能都是這樣的:
初期技術熱情極大 -> 大量標志性技術項目 -> 轉向綜合性思考 -> 帶團隊/關注方法論
單純關注某個技術領域對個人成長的危害極大。一個人技術能力再強,也很難干翻一個團隊。一個人的經驗和視野只有通過他人和團隊才能迅速放大,才能在更大的領域做出更大的成就。
到達一定的級別的人,他的關注點需要能從具體的細節中抽離出來,把更多的時間和精力放到業務問題的拆解、對技術方向的把控以及方法論上來。
能夠調用資源解決業務問題才能成為技術專家。很多公司專家級以上的 Title會要求協作能力,可以調動身邊甚至其他部門資源的人才能在公司發揮更大的價值。
在常規的公司架構中,CEO通過頂層設計調動全公司資源,而業務線總裁通過業務拆解調動整個業務線的人,通過層層目標拆解,并保證每一層都能充分調動下一層所有資源。如果一直關心技術細節,你永遠是一個孤立節點,在任何維度的組織中都是最底層,就算24小時不睡覺,也最多算兩個人力資源。想要突破一天24小時的限制,就要花時間讓別人認同你的設計,并朝著一個方向努力,你的節點才能上移。
作為一個有技術追求的程序員,要意識到,我們的目標不是寫出更優雅的代碼,不是研究更加高深的技術,而是要解決實實在在的業務問題。如果你不了解你現在做的事情對整個業務的價值是什么,能夠解決哪些業務問題,對公司戰略的價值是什么,那么請放下手中的敲擊的鍵盤,去搞清楚它們吧。越早養成這個習慣,對你的個人成長就有利。
除非注明,否則均為[半杯茶的小酒杯]原創文章,轉載必須以鏈接形式標明本文鏈接
本文鏈接:
http://www.banbeichadexiaojiubei.com/index.php/2020/12/06/%e8%a7%a3%e5%86%b3%e9%97%ae%e9%a2%98%e7%9a%84%e8%83%bd%e5%8a%9b%e6%af%94%e6%8a%80%e6%9c%af%e6%9c%ac%e8%ba%ab%e6%9b%b4%e9%87%8d%e8%a6%81/