程式設計師的“非程式設計師”之路

張傳波(Fireball)發表於2014-01-05

摘要:

20多年前我就開始寫程式碼,很喜歡寫程式碼,直到現在為止仍然熱度不減!人生總是會和你開點小玩笑,我在多年之前走上了”非程式設計師“之路。我覺得無論你將來是否繼續走技術路線,你的程式設計師經歷將為你打下雄厚的基礎。本文為你分享我的一些心得,為你分享一些程式設計師也應該掌握的”非程式設計師“技能,希望對你有幫助。

 

什麼是”非程式設計師“?

什麼是程式設計師?這應該不用解釋了。所以”非程式設計師“就很容易解釋了,只要你從事的是IT類工作,但又不是寫程式碼的,你就是”非程式設計師“!

”非程式設計師“常見的職位有:專案經理、產品經理、測試工程師、配置管理員、實施工程師、SQA等;除此以外還有部門經理、副總、總經理、老闆!

按照時間順序,我做過的職位有:程式設計師、專案經理、研發中心經理、副總經理、常務副總,後來我創業了,所以老闆我也當了一回!(PS:我這個老闆是光棍司令)

 

我的程式設計師之路

如果我問你:你寫過程式碼嗎?

你肯定會說:寫過,而且還寫了很多!

請你留意,我說的是”寫“程式碼,而不是”敲“程式碼噢。

我的運氣比較好,高中一年級的時候學校就開課《BASIC語言》這門課。當時電腦是很稀缺的資源,家裡沒有計算機,雖然學校有計算機房,但上機的時間並不多。當時我編寫程式的方式就是用筆在練習本上寫程式碼,除錯程式的方法就是在腦袋裡面執行這個程式。平時我寫下大量的程式碼在練習本上,非常珍惜上機時間,想榨乾在電腦房中的每一秒中。雖然當時我的大部分時間是在練習本上寫程式碼,在腦袋中執行,但就是因為這樣的程式設計方式打造了我的程式設計基本功和素養。

我對計算機程式設計的強烈興趣,驅使我報考大學時的第一志願就是計算機軟體,但我的高考成績不理想,只考上了第二志願……

我大學讀的是”城鎮建設“專業。這是一個”偉大“的專業,我們的系主任說:這個專業是用來培養建委主任的(現在叫建設局局長)!當時我們興奮和自我陶醉了一翻,結果畢業時我們沒有人能找到”建委主任‘的工作,直到現在好像也沒有同學坐上了這個崗位。

大學畢業後我在某事業單位從事市政方面的工作,但我很快憋不住,我找到了一份新工作,在某軟體公司做程式設計師,開發建築預算方面的軟體,正式開始了我的程式設計師的生涯。接著下來的5年時間,我寫下了大量程式碼。當時整個公司13個,其中程式設計師4人,但作為程式設計師的我除了寫程式碼,還需要自己分析需求,自己測試自己的軟體,自己管理自己等。這樣的工作模式,讓我得到全面的鍛鍊。

 

我的非程式設計師之路

公司規模不斷擴大,開發人員的數量增加了不少,後來做的專案一般都會配備幾名程式設計師和一名測試,而我“理所當然”地當上了專案經理。最開始做專案經理的時候,還可以寫一些程式碼,後來要花更多的時間處理需求、客戶關係、專案管理、團隊建設等事情,基本上沒有時間去寫程式碼了。

不多久,公司打算將我推向“研發中心經理”的職位,這是一個莫大的誘惑!剛接任研發中心經理一職,還期望能有一半時間來研究技術,實際上這是不可能滴。後來我還先後負責了ISO9001、CMM3級和CMMI5級的工作。

我從心裡面其實是更喜歡走技術路線的,當初選擇了管理路線讓我踏上了“不歸路”。我原本在技術上有很多“第一”:公司中程式設計最熟練的第一人,第一個最熟悉C#,第一個最熟悉SQLServer等等,多年所從事的“非程式設計師”工作雖然讓我掌握了不少新技能,但同時也在技術上“廢掉”了我的武功。

 

如果上天再給我一次機會,我會不會仍然選擇這樣的 一條路呢?

世界上沒有這麼多如果,我們只能做到總結以前,把握現在,面向未來。

上文簡介了我的經歷,下面開始為分享一些我的心得體會,無論你是否打算繼續走技術之路,希望對你能有幫助。

 

關於程式設計師的幾個誤區

1.)30歲不能再幹程式設計師

當年不知道誰說程式設計師不適合幹到30歲,因為人腦越老越不適應這樣的工作,程式設計師要趁30歲前做好轉型的準備。我當做了研發中心經理,選擇了管理路線,其中一部分原因就是受這個“30歲不能再幹程式設計師”的影響!

國外四五十歲的程式設計師很多,人家寫的程式碼越老越牛B,腦袋的思考能力完全不見到減退,反而越發厲害,所以"30歲不能再幹程式設計師"就是一句坑爹的話!

當然這句話在中國說是有背景的,那就是程式設計師沒日沒夜的加班,如果是這樣的狀態,當然是很難捱到30歲的。所以我們要保護好自己的身體資源,特別是腦袋,記住兩句話:

a)加班有害健康!
b)工作是公司的,身體是自己的!

 

2)程式設計師 = 碼農

一些外行領導認為程式設計師就是一種低技術含量的工種,隨便在街上可以抓一把,你不幹還有很多人幹!就算是我們程式設計師本身,也將自己自嘲為“碼農”。

程式設計師是高技術含量的工種,如果你掌握了核心技術,你是相當值錢的!但是在我們中國高技術含量專案或軟體太少了,所以如果你連續幾個月覺得自己技術上沒有什麼進步的話,你要想辦法找一些更有挑戰的工作了。

 

3)掌握的開發語言越多越潮就越好

開發語言不在多,在於精!對於程式設計老手來說,掌握一門開發語言的語法可能只需要幾天的時間,但程式設計的素養和深厚的程式設計功力是需要多年沉澱的。

我剛學會我的第一種開發語言BASIC,自認為感覺良好,自以為憑藉自己小聰明就能運用BASIC寫出很強大的程式。後來參加了程式設計師興趣小組學習班,系統地學習了一些演算法,才發現自己是井底之蛙。剛開始工作的幾年開發語言用的是VB,還學習了一些設計模式,自以為自己很OO,後來隨著工作經驗的積累和遇到不同的問題,才發現自己是多麼的膚淺。

程式設計基本功需要在學校階段就打造,並且要讓自己愛上程式設計。除了要認真完成所有程式設計課程的課後作業、練習和課程設計外,你自己還要嘗試去挑戰一些高技術難度的題目。

給幾個題目你參考一下:

a)寫一個五子棋(或象棋)之類的程式。
b)寫一個畫UML圖的程式。
c)寫一個視訊播放程式,要自己寫解碼器。

自己獨立完成需求、設計、實現和測試等全部工作。

 

程式設計師應該掌握的幾個非程式設計師技能

程式設計師不僅要學習技術,也需要掌握一些“非程式設計師”的技能,這些技能能幫助你開闊視野,加速你的成功!

1)需求分析能力

2)活用UML分析及解決問題的能力

3)軟體測試能力

4)專案管理基本知識

5)口頭表達能力和書面表達能力

6)團隊協作能力

以上知識不能只看書本,更關鍵是實際操練,操練的最有效辦法就是:自己獨立完成一個軟體的所有工作;當自己具備一定基礎後,就和幾個同學或朋友去挑戰更高難度和複雜度的軟體專案。

 

職場上的一些小建議

1)想清楚自己想幹什麼。

星爺說過:人生沒有理想,和一條鹹魚沒有什麼分別!

人生能有多少個十年,要儘早發現自己想幹什麼,並要儘早做好通盤規劃。

 

2)多為自己著想,不要太過顧全大局。

讀大學時,老師給我的評價是:綜合素質和能力很強。工作後,老闆給我的評價也是這樣。但這樣的評價,可能會帶來杯具的事情……

因為我綜合素質和能力強,所以在安排工作的時候,別人都可以挑一些他喜歡或他擅長的事情做,而我因為是“全能”的,所以我要去幹一些別人不喜歡或不擅長的事情。我曾經試過好多次將自己想研究的技術點讓給別人,久而久之我就失去了很多掌握高精尖技術的機會。至今為止我在技術上的一個最大遺憾就是,沒有能精通C++程式設計,我曾經有機會和有條件去開發C++的繪圖程式的,但我讓給別人了……

“人不為己天誅地滅”這句話很有道理,當然不是要你去自私自利,但也不能太過於“大公無私”,根據自己的發展路線,要主動去爭取一些能提升你的技能的機會。

 

3)不要說少多做,要多說多做。

“少說多做”被譽為一種美德,但每個公司都會有辦公室政治,少說多做會讓你吃大虧,你需要的是多說多做!除了要幹好事情,也需要讓你的老闆、同事及時知道你的工作成績。成功人士不僅僅是靠實力的,還需要包裝和宣傳。

 

4)精通技術能幫你創業,精通管理可能只能幫你找到好工作。

大學畢業之前,我的職業規劃是這樣的:爭取幾年內達到月入過萬,然後爭取5年左右的時間能通過打工積累一點點的錢和技術,然後通過自己的技術去創業。可能很多程式設計師都有這樣的類似想法。

我曾經試過兩次創業:

第一次創業:我打工的同時和一些朋友合夥成立一個公司,我負責開發軟體,我的合作伙伴負責市場方面的工作。但最終還是失敗了。

第二次創業:從2010年開始我辭職出來單幹,全職做軟體研發方面的諮詢和培訓服務。目前正在進行中……

如果你技術足夠牛B,能找到合適的合作伙伴,並且能找到投資人,那麼成功的機會是很大的!有技術你就有創業的本錢。

我第二次創業就比較尷尬了,當時我已經幹了很多年的管理工作,技術上已經被廢武功,我的去路可能只有兩個選擇:

a)找一個新公司任職管理層的職位;
b)創業搞諮詢和培訓方面的事情。

我不想再打工,所以選擇了b),但搞培訓和諮詢其實是很難做大的,每次上課其實都是體力活+腦力活。

這與我多年前的夢想是完全不一樣的,我期待自己的公司具備核心技術,並且這個核心技術能為社會帶來很大價值,公司能通過這樣的模式賺到很多錢。

 

小結

每個人都會有自己成長之路,每位企業家都會有自己的創業之路。

我走了不少彎路,本文分享一些小心得,希望能對你有一點點小幫助。

 

如果本文對你有幫助,麻煩點一下“推薦”啦,謝謝!

 

 

 

作者:張傳波

創新工場創業課堂(敏捷課程)講師

軟體研發管理資深顧問

CMMI首席專家

《火球——UML大戰需求分析》作者

軟體知識原創基地創辦人

 

 

相關文章