從程序員到技術領導者

入行

你為什么要當程序員?每當我問起很多人入行的人,回答各不相同。

有很多人是因為喜歡。誰說過:熱愛是最好的老師。當然,關鍵是熱愛是否能支撐自己把愛好做成一份職業。但不論做多久,因為熱愛或曾經熱愛,這個理由就足夠了。你不能希望撒一粒種子,都變成參天大樹。所以,對進來和離開的人,我們都應該鼓勵。

新入行的人,建議他們用1-2年來適應、評估程序員的生活狀態。不論滿懷希望還是充滿失落,這些時間都不會浪費。在如今信息時代,曾經的經歷,都會使有這方面經歷的人擁有獨特的眼光,很容易在其他領域內,引入新的思考。

進入軟件行業,還是其他行業,其實,對一個新人來說,最重要的東西不是行業本身。而是,你自己得明白:你是什么樣的人?你喜歡做什么?你希望做什么?你希望成為什么?你希望現在如何?你希望幾年后又是怎么樣?最關鍵的還有:你現在能做什么?

當然,你不可能憑空亂想,如果你自己都覺得目標遙遠,那就仔細傾聽內心的感受。你隨時得問自己:我到底要什么?

有一定的方向感,就可以上路了,不必患得患失。

技能

作為立身之本,絕大多數的程序員首先關注的是編程知識、技能。他們大多容易忽視自己在從小到大的學習中,已經發展出來的能力:學習的能力、溝通的能力。這些能力雖然并不能馬上換來高薪,但是,卻對一個人后來的發展,有長遠的影響。

程序員的工作,編碼只是一個技能的部分,這種把知識轉化為成果的技能非常重要。一個優秀的程序員所產生的績效,是一般的程序員的幾倍和幾十倍。對一個軟件公司而言,好的程序員仍然是公司的核心資產。

新入行的程序員都應該首先把精力都集中在技能的提高上。隨著技能的提高,工作能力的增強,自信也會提高。

但是,不要光埋頭干活,不抬頭看路。如果你在一個不太正規的公司,你所做的東西和接觸到東西,不太規范、有效的話,你可能在這個行業做了很多年,都算不上入行,就是說專業的起點太低。即使你有足夠的時間學習,但是由于沒有實踐的平臺,你要走的彎路就太多了。這樣,你需要仔細的評估自己的選擇了。

程序員普遍都有一種激情:希望自己做的產品,能為成千上萬的用戶使用。這種職業的自豪感,激勵著每一個程序員的創造力和想象力。

即使程序員的工作能為你帶來很好的收入,但你對自己所做的東西,毫無成就感,或者跟你的價值取向沖突的話,我想,你也應該考慮重新選擇自己的職業生涯。

我認為,程序員的自律性都是比較高的。他們大多數人都熱愛自己的工作,自己學習專業知識,努力提高工作技能。

除了對專業知識的把握以外,程序員還應該拓展自己的視野,程序員要學習關注自己的生存環境,隨時審視未來的發展空間,選擇自己的發展道路。仍然要問:我要什么?我要到哪里去?

總的說來,程序員生存的空間比較直接、單純。程序員普遍不喜歡工作時受人打擾,這一切都在情理之中。

技術管理者

技術管理者和程序員,他們服務的對象和工作方式完全不同。

程序員是大我,主要是完成任務,所有的事情主要靠自己完成,目標就是完成技術思考和轉化。

技術管理者是小我,服務的對象是團隊,目標是組織和連接流程。用俗話說,就是要當“萬金油”。

技術管理者,不論是項目經理,還是技術總監,首先要會選人和用人。要完成什么樣的任務,選什么樣的人,是領導的基本功。

技術管理者跟程序員最大的不同在于知道在有限資源的情況下,如何做出最合理的選擇,不一定是最好的選擇。領導者知道,用人用其長,而不會去苛求每個人都達到完美。

程序員可以談論品味,像藝術家一樣看待工作;而技術管理者談論效果,是現實主義者。好的技術管理者,能在長期的理想和現實的結果中找到一個好的平衡。

技術管理者,關心的是外部目標、內部人員績效和激勵、質量控制、產品服務等一系列的活動,監督、評估并推進項目或產品的流程,直到產生一個可以交付的外部結果。

技術管理者的工作重心在人,在團隊。他的績效是通過組織和團隊的績效體現出來的。

從程序員到技術管理者

中國有句古話:勞心者治人,勞力者治于人。很多時候容易理解為:程序員勞力,技術管理者勞心。這種想法最容易造成程序員內心的不平衡。我想,現在的知識社會,大多既要勞心,又要勞力。只勞心,不勞力的人,有知識,沒有執行和轉換能力,這樣的人,很難駕馭和管理真正的技術團隊;只勞力,不勞心的人,不會提高自己的競爭力,自己也不會滿意。

做程序員,還是技術管理者,這只是分工不同,并沒有高低貴賤之分。可以看見,由于程序員和技術管理者定位和服務對象的不同,他們的知識結構的要求也有所不同。程序員看起來更技術化,便于評估,比較深入,技術管理者看起來更行政化,似乎表面,寬泛化,但都需要專業的素養和才干。

程序員也可以成為好的技術管理者,但需要積累和調整自己的知識結構和心態:要能勇敢地獲取外部的力量。因為管理者的目標并不意味著他有多大的能力,而是他的團隊有沒有能力,有沒有成效。那種認為管理者不勞而獲的想法,是一種偏見。大家職責不同,責任不同。

一個優秀的技術人才,一定要選擇一個優秀的團隊。一個好的技術管理者,也要充分發揮技術人才的優勢,這樣,只有團隊的力量,才可以把自己的才能成百上千地放大。

從外部來看待成長

從程序員到技術管理者,是一個眾說紛紜的話題。但是,這不應該是一個非此即彼,孰優孰劣的問題。我更愿意看成是一個組織環境中,不同環節上不同的位置和選擇,跟定位和特長有關。

站在組織的觀點來看,在一個團隊的內部,是沒有績效可言的。只有團隊,對外產生了價值,個人才有價值。

或許并不是所有的人都能接受這一點。

所以,當你問自己得到了什么的時候?你也應該問自己奉獻了什么?什么是應該體現你的報酬?你的報酬是否體現了你的責任和承擔的風險?

很多時候,不是你是否值多少錢的問題,而是在一個商業的環境中,沒有貢獻,就沒有價值。

一個人要客觀地看待自己,不論是程序員還是管理者,都不要不可一世或忘自菲薄。天生我才必有用。一個人的成長,應該從外部的趨勢和影響,來學習、選擇和發展。把更多時間和精力,放在建立自己的核心競爭力,找到自己事業的伙伴上。

請勇往直前,不要患得患失,不要怨天尤人,命運就掌握在自己的手中!

幸福和健康

沒有任何正當的理由,讓人用幸福和健康來交換所謂的前途。永遠牢記:身體是革命的本錢。


本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/452445.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/452445.shtml
英文地址,請注明出處:http://en.pswp.cn/news/452445.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

黑盒測試和白盒測試

黑盒測試(又稱功能測試)把程序看作一個黑盒子,完全不考慮程序的內部結構和處理過程。黑盒測試是在程序接口進行的測試,只檢查程序功能是否能按照規格說明書的規定正常使用,程序是否能適當地接收輸入數據并產生正確的輸…

Diango博客--11.Nginx + Gunicorn + Supervisor 方式部署

文章目錄0.部署前準備1.創建一個超級用戶2.更新 SQLite33.安裝 Python3 、pip3.6以及 Pipenv4.部署代碼5.使用 Gunicorn6.啟動 Nginx 服務器7.配置 Nginx8.關閉 DEBUG 模式,收集靜態文件9.使用 Supervisor管理 Gunicorn 進程10.使用 CDN 加快 Bootstrap 和 jQuery 的…

計算機更改了用戶名數據恢復,怎么把電腦更換用戶后恢復到原來的用戶呢?

如何讓administrator帳戶出現在登陸畫面?安裝Windows XP時,如果設置了一個管理員賬戶,那么系統內置沒有密碼保護的Administrator管理員賬戶是不會出現在用戶登錄列表中的。雖然它身在幕后,可卻擁有系統最高權限,為了方…

StringBuilder類

1.1 StringBuilder類概述StringBuilder:是一個可變的字符串。字符串緩沖區類。 String和StringBuilder的區別:String的內容是固定的StringBuilder的內容是可變的1.1.1 拼接字符串耗費內存原因:每次拼接都會產生新的字符串對象,而利用StringBuilder來拼接字符串自始至…

如何使用搜索技巧來成為一名高效的程序員

沒有人是完全獨立的孤島,每個人都是整體的一部分。—— 約翰多恩對于缺乏編程知識的人來說,完全有可能編寫一個網頁或小程序。如果在用Google搜索相關示例時幸運的話,可以搜到現成的代碼。即使是經驗豐富的程序員,通常也會為了節省…

電開大計算機應用基礎作業,2016年電大-電大計算機應用基礎作業 答案.doc

2016年電大-電大計算機應用基礎作業 答案計算機作業2單項選擇題:第1題:在Word中編輯文本時,編輯區顯示的“水印”在打印時( )出現在紙上。(2分)A、不會B、全部C、一部分D、大部分第2題:Word文檔以文件形式存放于磁盤中,其默認的文件擴展名為(…

軟件測試的步驟

大型軟件系統的測試過程基本上由模塊測試、子系統測試、系統測試、驗收測試和平行運行等五個步驟組成。 1.模塊測試 在設計得好的軟件系統中,每個模塊完成一個清晰定義的子功能,而且這個子功能和同級其他模塊的功能之間沒有相互依賴關系。因此&#xff…

linux系統優化思路

文章目錄一. 影響linux性能的因素1.系統硬件資源2.操作系統相關資源3.應用程序軟件資源二. 分析系統性能涉及的人員1.Linux運維人員2.系統架構設計人員3.軟件開發人員三. 系統性能分析工具四.思路總結一. 影響linux性能的因素 1.系統硬件資源 1)cpu 2)…

遞歸鎖

from threading import Thread,RLock import timemutexAmutexBRLock()#一個線程拿到鎖,counter加1,該線程內又碰到加鎖的情況,則counter繼續加1, #這期間所有其他線程都只能等待,等待該線程釋放所有鎖,即counter遞減到…

UI體系的本質是結構化存在

UI體系的本質是結構化存在; UI系統的問題需要使用結構化的思維來處理。

什么是視圖

視圖是存儲在數據庫中的查詢的SQL 語句,它主要出于兩種原因:安全原因, 視圖可以隱藏一些數據,如:社會保險基金表,可以用視圖只顯示姓名,地址,而不顯示社會保險號和工資數等&#xff…

30分鐘,讓你成為一個更好的程序員

我相信激勵是非常重要的。這也是為什么我常常把時間管理(這些書激勵我不管改進我的時間管理方法)的書和軟件開發拿出來看看。我最近剛看完一本 書,“Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman”。這本書推動我…

如何啟用計算機的遠程服務,遠程桌面服務,教您怎么打開遠程桌面服務

遠程桌面可以通過控制另一臺電腦的功能,讓網絡管理員可以在家中安全的控制單位的服務器,而且這個功能是系統內置的,所以比使用其他第三方的遠程控制工具更方便。那么我的重點來了,我今天就教你們怎么打開桌面遠程服務,…

pipenv相關指令

pip install pipenv 安裝pipenv pipenv install 創建虛擬環境 (項目根目錄下) pipenv shell     進入虛擬環境(如果不存在,則創建并進入虛擬環境) pipenv install flask   安裝模塊 pipenv uninstall flask 卸…

簡易多線程爬蟲框架

本文首發于知乎 本文使用多線程實現一個簡易爬蟲框架,讓我們只需要關注網頁的解析,不用自己設置多線程、隊列等事情。調用形式類似scrapy,而諸多功能還不完善,因此稱為簡易爬蟲框架。 這個框架實現了Spider類,讓我們只…

【小松教你手游開發】【unity實用技能】給每個GameObject的打開關閉加上一個漸變...

在游戲開發中,經常會因為直接將GameObject,setActive的方式打開關閉,這種方式效果太過生硬而給它加上一個Tween 可能是AlphaTween或者ScaleTween。 再加上一個PlayTween來做控制。 這樣子需要在每個GameObject上加上這幾個Component不說&…

靜態網頁和動態網頁

靜態網頁是指不應用程序而直接或間接制作成html的網頁,這種網頁的內容是固定的,修改和更新都必須要通過專用的網頁制作工具,比如Dreamweaver。動態網頁是指使用網頁腳本語言,比如php、asp、asp.net等,通過腳本將網站內…

在微型計算機中 如果電源突然中斷,微型計算機在工作中電源突然中斷,則其中的信息全部丟失,再次通電后也不能恢復的..._考試資料網...

請根據下面的文字材料,完成一節課的教學設計。 絲綢之路 一座古樸典雅的“絲綢之路”巨型石雕,矗立在西安市玉祥門外。那馱著彩綢的一峰峰駱駝,高鼻凹眼的西域商人,精神飽滿,栩栩如生。商人們在這個東方大都市開了眼界…

Vmware上安裝RedHat Linux 7.3操作系統手冊

文章目錄1.點擊“創建新的虛擬機”,勾選“自定義”選項,點擊一步;2.默認選擇最高版本的workstations,點擊下一步;3.選擇“稍后安裝操作系統”,點擊下一步;4&a…

軟件開發的“三重門”

自從上次寫了“程序員技術練級攻略” 以來,就覺得似乎還有很多東西沒有談到,但當時沒有繼續思考了。而春節前有人問我,是做底層技術,還是做業務。這問題讓我思考了很多,不由自主地回顧了一 下我這十多年的軟件開發經歷…