技術總監到底要不要寫程式碼?
這是一個非常敏感的話題,每次談論到技術總監要不要寫程式碼的時候,總會引起一片爭論。
有的程式設計師說技術總監如果不寫程式碼怎麼能領導好技術團隊;有的說技術總監還需要寫程式碼?如果技術總監都需要寫程式碼的話,那技術團隊有多操心吶。正反觀點看起來都蠻有道理的,我也試著和大家聊聊這個話題。
我感覺自己還是蠻有資格來討論這個話題的,我有過30人左右技術團隊負責人的經歷、也有過管理超100多人研發副總的經驗,也經歷了從一個程式設計師到一個技術管理者身份轉變的歷程,所以方便從各個角度來看待這個問題。
任何問題拋開背景來討論都是耍流氓。
比如下面這個圖片,正著看的時候是一個老太太,如果我們把手機倒過來看的話是一個小姑娘。
這就是我們看待問題的角度不同,所展現給我們的視角也是不同的。
技術總監要不要寫程式碼這個話題,其實也是需要看公司是什麼樣的背景、處於什麼樣的階段、技術總監管理人員的規模來定。
另外技術總監只是一個統稱,很多公司還會分部門技術總監、研發中心技術總監等,不同級別也需要不同的討論。
首選探討一下什麼樣的技術總監需要寫程式碼,這裡的寫程式碼指的是參與到具體的編碼實現。個人認為有以下 3 種情況:
01 技術驅動型的技術總監需要寫程式碼
很多網際網路公司產品,完全是依賴技術來構建的,公司的命脈都是技術,那麼這個技術總監就一定要參與到核心程式碼的編寫中。
比如我一直比較關注的創業公司 PingCAP ,他們公司的主要產品是 TIDB,一個開源分散式關係型資料庫。我們知道開發一個高效的資料庫是一個技術含量很高的事情,那麼這種型別公司的技術總監一定會參與到編碼中。
02 初創技術團隊的技術總監需要寫程式碼
一個創業公司的初創團隊,可能公司的技術體系、技術路線、技術文化完全都沒有搭建起來的時候,必定需要技術總監參與到一線,一步步將這些內容搭建起來。
同時幾乎所有的創業公司在剛開始的時候,就技術的需要程度是相當緊迫的,所以這個時期的技術總監,一定要親自參與其中,確保核心系統功能不會出現問題。
有一個很著名的反例:
2012年的時候程維為了滴滴產品快速上線,花了 8 萬找了一個外包做了一個 APP,開發出來不僅體驗差,還出現了耗費流量高、耗電、聽不到訂單、定位不準的問題,差點直接將滴滴搞死。後來張博的加盟才逐步解決了這些問題,產品穩定後才贏得了滴滴後期的大發展。
國內外的網際網路公司都存在創業早期過分注重技術,認為技術可以搞定一切;創業成熟期後又過分輕視技術,導致後期問題頻發。所以對技術的重視程度應長期保持一致。
03 管理十幾人以下的技術總監需要寫程式碼
管理十幾人的技術總監,個人建議總體還是需要參與到核心程式碼的梳理中,需要對系統的各個特性瞭然於胸,知道系統很可能出現的問題點,在出現問題的時候可以快速定位解決。
在這個規模的時候,如果技術總監不參與到核心程式碼的工作中,其實是很難掌控整個系統的穩定性,出現問題的時候需要依賴於團隊中的核心骨幹來解決。
當然肯定不是需要參與大量的編碼工作,可以在架構設計、核心程式碼評審、程式碼最佳化層面來多做工作。如果這個階段的技術總監完全脫離程式碼編寫工作,容易導致團隊技術失控。
國內技術總監現狀
在國內,大多數技術總監其實是沒有參與到具體的程式碼編寫中的。一方面國內很少有上面所說的純粹技術驅動型的公司,大多數網際網路公司對技術的重視程度仍然很不夠,認為技術只是服務於公司商業價值,從而不斷的壓迫技術團隊。
特別是老闆如果對技術一點都不瞭解的話,那對技術團隊就是一個大災難,可悲的是大多數企業都是這個情況,這個時候技術總監的很大一部分精力,就變成了如何向老闆合理的解釋清楚技術團隊的工作情況,不是封閉幾個月或者壓迫一下就可以搞出一個完美的系統。
國內的大多數技術總監都被迫陷入很多的行政事務中,比如我曾經呆過的第三方支付公司,各種監管機構每個月都會有各種檢查,另外還需要處理各種外部需要文件、行政事務、外部談判、公司會議等各種各樣的雜事中。
當然這些都不是最可怕的,最可怕的是如果參與到公司的辦公室政治,那很多事情就已經偏移了事務的本質,不是這個事情你要不要做好的問題,還需要考慮很多其它的因素,類似的事情最容易讓人心累,耗費巨大的精力。
技術總監到底需要幹些什麼?
首先強調一下技術總監是一個管理崗位,所以它的管理職責遠遠大於編碼職責,技術總監的工作更應該關注宏觀、全域性性的問題。
如果一個技術總監自己程式碼寫得賊溜,團隊內小夥伴程式碼寫得一片爛渣渣,那他絕對不是一個合格的技術總監。
所以技術總監不是讓自己編碼很爽,技術總監的工作更應該是讓團隊內的成員編碼很爽。讓團隊內的小夥伴編碼很爽,其實就有很多的工作要來做。
比如構建一個有技術氛圍的團隊,做有前瞻性的技術選型,在業務設計、架構設計、系統架構上下狠功夫。任何團隊內不太爽的工作都是技術總監的責任,比如需求變動太頻繁、技術選型不合理導致問題頻發,團隊沒有定期的技術分享。
技術總監需要負責技術管理體系的建設和維護,對行業技術發展趨勢和管理現狀具有準確的判斷,從技術層面上協助決策層實現戰略目標。所以必須綜合實力很強,既要懂技術,也要懂管理,而且職位越高,所需要的知識面要越廣。
用通俗易懂的話來講:技術總監的工作就是對內就是讓團隊幹活很爽,對外要拼命接住老闆吹過的牛逼。
那麼我們最後來探討一個話題:除過上面三種情況,工作中寫程式碼的技術總監就是好的技術總監,不寫程式碼的技術總監就不是好的技術總監嗎?
答案留給大家,請在評論區告訴我。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31499124/viewspace-2646750/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 技術總監
- 架構師究竟要不要寫程式碼?架構
- 程式設計師到底要不要接外包?程式設計師
- 短期工作經歷到底要不要寫到簡歷上?
- “我是技術總監,你幹嘛總問我技術細節?”
- 寫在博士旅程之前——前大疆創新技術總監楊碩
- 像Swing這種已經不太用的技術,大學還在教,到底要不要學?
- 天天寫業務程式碼,如何成為技術大牛?
- CTO、技術總監和技術經理有啥區別?
- CTO,技術總監和技術經理有啥區別?
- 戴爾技術總監:虛擬技術將解放Linux(轉)Linux
- 密碼技術繪總密碼
- 一、管理認知:程式設計師要不要做技術管理?程式設計師
- 技術管理進階——技術總監的第一要務
- 技術方面的領導就不能寫程式碼?
- 當上技術老大後,還需要寫程式碼嗎?
- 技術管理之新晉總監生存指南
- 就聊聊不少小IT公司的技術總監
- 技術總監和CTO的區別(一)
- UI設計師要不要真的懂技術?UI
- 程式設計師到底要不要轉行軟體測試?程式設計師
- 到底要不要安裝SSL證書?
- 空降領導(CTO/技術總監)如何安全落地
- [技術討論]程式碼編寫能力與管理手段的配合
- 技術到底重不重要
- 新來個技術總監,禁止我們使用Lombok!Lombok
- CTO(技術總監)平時都在做些什麼?
- Android技術總監應該乾的那些事Android
- CTO、技術總監、首席架構師的區別架構
- Serverless 架構到底要不要伺服器?Server架構伺服器
- 技術總監7年總結——程式設計師進階高管的三次躍升程式設計師
- 天天寫業務程式碼的程式設計師,怎麼成為技術大牛程式設計師
- Java程式碼編寫、程式碼優化技巧總結Java優化
- 寫給程式碼技術同事:被人信任才能有廣闊未來
- 阿里NLP總監分享-NLP技術的應用與思考阿里
- 技術總監的故事告訴大家,要學會say【NO!】
- 技術債 - 到底花你多少錢?
- 資料型別set到底要不要翻譯資料型別