程式設計師職業路線認識

weixin_34293059發表於2012-07-15

跟同事聊天時被問到我是否有興趣做我們某一個產品的產品經理,我一下子被問住了,因為雖然之前也聽過這個名詞很多次了,但實際上我不知道這個職位到底的職責是什麼,所以不敢貿然答應,仔細想想自己已經工作兩年了,雖然平時也在注意積累,但還真沒認真思考下自己未來的路,是該認真總結想想了。

【一】程式設計師通常的發展路線是怎樣的?

程式設計師通常的發展路線是怎樣的?可以看看這個圖,當一個初步的職業規劃方案已經成型時,如果制訂者目前已在一個軟體公司工作,那麼,對他來說進一步的提升非常重要。 首先要做的則是進行角色分析,反思一下這個職業環境對個人的要求和期望是什麼,如何使自己在單位中脫穎而出。

通常,軟體技術人員的職業發展有幾個選擇:專注於技術,成為技術專家;轉型到技術型銷售、技術支援等;隨著技術成長,從技術性管理到高階管理。這是大家都看得清楚的方向,也都在向這些方向的金字塔尖努力。

就像烹飪一樣,每一個階段目標都需要你進行角色分析,找出這一角色需要的'配料',當你注意收集技術、素養等相關'配料'後,就會成功烹飪出你所需要的目標魚。前提是你一定要了解自己的特點和優勢,就好比黃瓜種子是不可能培育成西瓜一樣。

這歸根結底,都是以技術為基礎。在紮實的技術基礎上(高階軟體工程師),如果有著比較強的抽象設計能力,又打算專注於技術開發,架構師是個好的選擇;如果 性格更適合做管理,情商能力突出,技術型管理應該是下一步的方向。這種發展規劃屬於'瘸腿走路'的型別,各有側重主攻發展的職業方向,也是目前一般程式設計師 普遍採用的發展路線規劃。

決勝點在於長期的點滴積累,認證證照、成績、豐富的經歷是求職的表面文章,在目前軟體行業裡不是很看中這個,真正的'內功'是需要規劃的。至於培訓,我倒 是很建議直接加入軟體公司,你就會學到很多實際的東西。不過,學歷教育雖然在職業生涯裡不是主要的,但是隨著職位的提升卻有很重要的意義,能輔助擴充你的 職業發展空間,而不是以此為阻礙從而失去更多的機會。

已經工作兩年以上的程式設計師可以有幾種基本的職業規劃:技術專家、軟體架構師、實施顧問或銷售。其中程式設計師最主要的發展方向是資深技術專家,無論是 Java、.NET還是資料庫領域,都要首先成為專家,然後才可能繼續發展為架構師。儘管架構師的職位可以工作一輩子,待遇也非常好,對於科班出身的程式 員最為適合,但這種工作職位非常有限,因為在中國目前的IT行業,架構師需要的條件比較複雜,而且需求量也比較少,這也是我國軟體行業走向國際並有待成熟 的因素之一。

【二】綜合才能型發展路線圖

目前國內缺乏的是管理能力和專業知識技能並駕齊驅的IT人才。特別是懂得運用目標管理技術的專案管理人才,既掌握核心技術又有全域性掌控能力的專案管理人才,非常難找。我建議對於大多數人來說,首先是要專,只有在技術方向上做得比較深入,才能適當做工作調整,把自己轉變為某個領域的專家。

根據自己的情況,決定自己做軟體架構師還是高階的顧問銷售,另外一部分人可能就會走向管理,這和 個人性格與情商有關。軟體優秀的管理者都必須懂得技術,掌握核心技能的人才向管理崗位轉型有很大的優勢,因而提升管理能力成了轉型的關鍵。譬如,當唐駿還 是微軟一名普通程式設計師時,就從公司發展的角度考慮,向老闆提議開發了中文版Windows,最終使他從幾萬名工程師中脫穎而出,成為部門經理。正如他所 說,雖然是程式設計師,但自己不能只把自己當程式設計師,你可以為老闆和公司著想。

調查研究後,帶著解決方案去找老闆,就會得到老闆的重視和信任,所以一定要增強工作主動性和參與性。無論是軟體開發還是專案管理,國內員工大多隻是做好份內事或完成交派任務,很少能主動發現問題。其實,只有擁有更高眼界,才能謀取大發展。

總之,程式設計師要根據本身的基本素質、技術能力選擇開發層次,由低到高,逐步發展。也是一名程式設計師本身具備相應素質的循序漸進的發展軌跡,包括很強的技術背景和綜合管理才能等素養,這也就是所謂'兩條腿走路'的職業規劃發展路線。

在未來發展上首先確定自己的發展方向和研究方向,在學習技術的同時還要為以後做準備,做好以後的技術轉型。廣度和深度是相對的,先廣還是先深實質上從某種 意義來說取決你的工作性質,如果你是從事單一工作的,多半你會短暫先深,因為這是你立足的根本;而如果你選擇的職業是綜合性的,比如管理、講師等,那麼你 必然要先有廣度才可以,但一段時間後,你都要轉入深度,只有你在某一方面或領域有一定的深度後,你才能繼續尋求廣度,否則,你將什麼都會,但什麼都不精, 這樣的人在市場上是最難以立足的。

 

【三】初入職場,程式設計師的上升空間在哪裡

1、 技術上的反思和提高 

無論程式設計師個體之間差異有多大,我認為程式設計師上升空間在於技術上的反思和提高。程式設計師到了成熟階段,往往有一種狂奔到終點後的那種感覺,身體疲乏無力,特別需要休整再戰。要知道程式設計師在"奔跑"的時候,一般是在使用自己的體力,很少用到跑步的技術和技巧。尤其是到最後,更是依靠體力來支撐。從技術提高的曲線來看,新手的技術提高速度最快,無論從時間還是急迫性兩個方面對新手的壓力挺大的。而到了成熟階段,其程式設計時間也大大縮短了和學習技術的迫切性也降低了, 所以技術提高速度就慢下來許多。在現實中,我們真的看到有些年輕的程式設計師還看不起那些程式設計師的技術水平呢,就是這個道理。

因此,成熟的程式設計師在安頓之後,一定要坐下來反思自己,看看自己的技術發展之路,哪些走的比較踏實,哪些走的比較急促;哪些是自己的技術特長,哪些是自己的 技術薄弱環節。反思後一定要抽出時間抓緊學習,把自己的技術上明顯不足的地方給補上,這樣程式設計師的技術水平加上豐富經驗和工作能力會使得自己更加具有實 力,可以應付各種挑戰,為今後的發展鋪平道路。

而那些順其自然的思想,使得程式設計師缺少技術提高的主動性,程式設計師有明顯的技術上的問題,也不主動去解決,而是拖之再拖,從而使得程式設計師的成熟度大打了折扣。

2、 走向軟體設計師

其實很多程式設計師走到這個階段已經在做軟體設計師工作了。這是絕大多數程式設計師發展的必經之路。因為,程式設計師在程式設計序的時候,一方面會實現設計的功能,另一方面 也在對設計有一個理解、認識、熟知的過程。進而慢慢地從學習別人設計,轉向到自己參與或獨立設計。如果這個程式設計師真的非常非常喜歡程式設計師這個職業,則可以 轉向軟體設計師。這個轉變很大程度是程式設計師意識的轉變,就是說要把程式設計的時間,逐步分攤到軟體設計上,要把重點從程式設計實現轉變到專案的功能設計上。我這裡 強調的是"逐步"的一個過程,程式設計師要逐步減少程式設計的時間,增加設計的時間,要克服程式設計的強大吸引力,要主動地攀上設計這個臺階。很難有一個設計師是完全 不程式設計的,而且我認為,會程式設計的設計師才是真正的設計師。一般這種轉變需要花上一到兩年時間。

3、 走向專案經理

也有一些程式設計師工作機遇比較好,不但負責了專案的設計工作,而且負責了專案管理工作。對專案經理這個工作有了一定的嘗試。因此,這類程式設計師可以審視一下自 己,是否合適這項工作。如果自己對這種工作比較滿意,而且具備專案經理的要求,則可以向專案經理這個方向發展。專案經理承擔著專案管理的職責,對專案負主 要責任。它和程式設計師的作用也不相同,專案經理的重點已經從程式設計轉移到對人、對技術、對進度、對專案的管理。由於軟體的專案經理與軟體專案的相關性太大,因 此,他必須要了解軟體開發的各個環節、瞭解開發的各種技術和運用、瞭解開發隊伍人員的水平和特點。所以他依舊和程式設計師脫不了干係。從程式設計師到專案經理可以 使得專案經理更好地理解程式設計師在專案中的地位和作用,瞭解軟體開發的各種規律性的東西。從而保證專案的正常完成。而且,專案經理的收入在公司中的地位也是 比較高的。因此,我認為走向專案經理是程式設計師的另一個發展空間。我想提醒一下,程式設計師在擔任專案經理之前最好要把軟體設計工作做好,這樣在做專案經理的時 候,就會有很好的基礎。

4、 走向管理者

很多程式設計師希望自己能成為公司中的主管、經理、老總、老闆,這樣無論是收入和在公司的地位都相對比較高一些。另外,一方面程式設計師可能厭倦了年復一年的程式設計工 作,對工作產生了牴觸情緒,希望能擺脫這種步步緊逼的工作狀態。走向管理者其實要求程式設計師要比一般人做更多的準備,要做更多的轉型工作,並不是想當管理者 就能成為管理者的。但是,如果程式設計師有這個志向和愛好,有積累了這方面的工作經驗,自己也感覺在這個方面能夠發展,更重要的是有這樣的機會,走向管理者也 是可能的。由於軟體公司的管理者畢竟不同於一般公司的管理者,專業能力越強,管理起來就越得心應手的,沒有專業能力的管理,遇到的問題很多,也很難解決。 因此,我的建議程式設計師最好要把程式設計、專案設計、專案管理等基礎打打好。這樣轉型到管理者成功率就會高一些。

5、 走向軟體營銷

我一直說,程式設計師最大的缺點之一,就是眼光只盯在技術上。程式設計師在入門階段和成長階段,這種情況還是屬於正常的。但是,到了成熟階段這種缺點將嚴重影響了程 序員的發展。程式設計師在工作中不免會接觸到使用者,不免會了解到使用者的需求。從而瞭解到軟體實際發揮的作用,進而瞭解了自身的工作價值所在。有的程式設計師則固步 自封,不願意和外界打交道,從內心裡堅守技術底線。有的程式設計師則喜歡和外人交流,喜歡把自己的軟體推薦給使用者,而且使用者也樂意接受這種專業的介紹,使用者的 接受是程式設計師價值的直接實現,程式設計師因此獲得了工作成就感。這類的程式設計師可以將自己的專業知識和產品營銷結合在一起,推動軟體的銷售和服務,轉向軟體營銷 職業。這個職業將是一個比程式設計師更有發展的職業,它可以直接反應程式設計師的工作能力和工作成果,程式設計師的收入和銷售會直接掛鉤。因此,可以讓有才華的程式設計師 獲得更高的收入,接觸到更大的軟體市場,看到更廣的個人發展空間。

6、 原地發展

當 然也有一些程式設計師惰性比較大,滿足於現狀,享受著眼前的勝利果實,也無可非議。對待這些程式設計師,我們不要強求他們改變自己的想法,我建議是原地發展,把本 職工作做得更好,把自己的技術水平往上再提高一步。在這個過程中他們的能力和自信心都會得到提高,他們的想法不會一直一成不變的。磨刀不誤砍柴功,刀快了 自然會去砍柴的。

7、 跳槽走人

還 有一種情況,程式設計師工作很努力,技術水平也有很大的提高,工作成績也很突出,但是,公司的工作環境讓他感覺不好,例如,收入和付出差距很大,而且短期內看 不到加薪的可能;自己的技術水平已經超出公司開發所需,英雄無用武之地;公司的經營狀況比較差、看不到公司未來;公司的人際關係緊張,小人當道,自己得不 到重用等。他可以選擇跳槽走人。要說明的是,這個時候跳槽走人你是有本錢的,這個本錢就是你積累的工作業績、技術水平和工作能力。

程式設計師在成熟期面臨著上升空間的選擇,是上還是不上往往決定了程式設計師今後的發展。水往低處流,人往高處走,只要程式設計師有向上的意識,不滿足於現狀,根據自身的特點和資源選擇發展方向,我想程式設計師一定會有很好的發展前途。

【四】總結與提升

成功與失敗的區別在於,成功者選擇了正確而失敗者選擇了錯誤。因此,我們常常能夠看到一些天賦相差無幾的人,由於選擇了不同的方向,人生卻迥然相異。選擇正確的方向尤為重要,希望不同的程式設計師根據自己不同的優勢和特點能畫出適合自己的程式設計師職業規劃圖。

軟體開發也是有層次區別的,比如,按層次從高到低通常可分為:

系統開發:如作業系統、資料庫系統、伺服器系統開發;

專業開發:如網路安全、遊戲、人工智慧開發;

應用開發:如MIS、BI、ERP等系統開發;

普通開發:如網站、簡單應用系統開發。

不同的層次,難度係數不一樣,對技術要求、個人素質要求也不一樣。要成為系統開發者、專 業開發者、高階應用開發者,需要有很高的專業知識和很強的邏輯、抽象、空間思維能力,這就要求具有很好的基礎,同時具有較大的提升潛力。而要成為簡單開發 者和初級應用開發者則相對容易些,正是這樣,才使很多人走上了軟體開發的道路。

 

【五】職場榜樣

雷軍:從程式設計師到金山CEO

人物簡介

今年39歲的雷軍祖籍仙桃,在武漢度過了自己的大學時光。1992年加盟金山公司,從程式設計師做起,到幾年後的高階管理者,再到執掌金山近10年的CEO。

在百度上搜尋"雷軍"的名字,相關的網頁達到了250多萬個。可以說,無論是在IT界還是民間,對雷軍的關注度都是巨大的。

歷經多年艱辛,雷軍帶領金山走上了發展的快車道,同時也為自己鑄就了"最勤奮CEO"、"金牌CEO"、"中國最好的職業經理人"的榮耀,在中國IT史上留下了自己的傳奇。

2007年底,雷軍宣佈辭去所有在金山一線的管理職務,只保留了副董事長和戰略委員會主席的職務。

結緣IT行業

中學畢業前,雷軍從沒想過自己的未來會跟計算機扯上關係。

高考填寫志願時,好朋友選擇了計算機系,"為了日後和好友仍有共同語言"的雷軍也填了同樣的專業,並以優異的成績考入武漢大學計算機系。

從小學到中學,雷軍的成績一直都很拔尖。"在我的印象中,聞一多等很多名人都是在大學成名的,我當時也想利用大學的機會證明我的優秀。"

進大學的第一個晚上,其他同學還沉浸在興奮之中時,雷軍卻默默地去教室自修。

以後每一天,早上7點,他都會第一個衝進教室佔座位,坐在最前排聽課;週末他喜歡看電影,但經常要自習到九、十點鐘以後看晚間場。

回憶那段大學生涯,雷軍說:"我特別害怕落後,怕一旦落後,我就追不上,我不是一個善於在逆境中生存的人。我會先把一個事情想得非常透徹,目的就是不讓自己陷入逆境,我是首先讓自己立於不敗之地,然後再出發的人。"    

為了不落後於人,雷軍戒掉了午睡的習慣,把時間分割成以半小時為單位,為自己制定好每半小時的學習計劃,最終,雷軍大一寫的程式,等他上大二的時候,已經被編進大一教材裡了。

雷軍家裡並不富裕。大學期間,雷軍父母的工資加起來不到300塊,家裡還有一個姐姐也在上大學,雷軍每個月要從家裡拿走150塊錢,他知道自己這是拿走 了家裡的一半收入,父母會過得很艱難,心裡很不是滋味。於是,他千方百計找各種兼職掙錢。當時,向各媒體投稿賺取稿費是他收入的主要來源。他還時常在武漢 的電子一條街走動,有時倒賣點產品,有時替別人維修機器,有時動手編一點小軟體。

不過,這一切並未影響雷軍的學業,相反,他在計算機的世界裡如魚得水,只用2年就修完了大學4年的課程。

初次創業以失敗告終

剛開始接觸計算機程式設計的那會兒,雷軍就很快被這種可以操縱計算機的感覺所吸引,"你會覺得在做軟體開發的過程中,你就是你自己領地上的國王"。

大一開設的第一門課叫PASCAL程式設計,雷軍經常因為程式設計出眾,受到老師的表揚。大二時,這位老師將雷軍寫的程式編進了教材。由於小有名氣,人 又踏實好學,其他老師想找他幫忙做事,也會主動把計算機房鑰匙交給他,在那個計算機是個寶的年代,他最多竟同時擁有3個機房的鑰匙!

當時有一本非常出名的書叫《矽谷之火》,這樣一本講述IT人創業的著作激勵著雷軍,更令他狂熱。

也就是在那時,雷軍起了一個念頭:創辦一家世界級軟體企業,讓自己做的軟體在世界的每一臺電腦上執行。

上世紀80年代末90年代初,正是中國網際網路和軟體業剛剛開始起步的階段。越來越強烈的實踐衝動,讓雷軍不再甘於紙上談兵,臨近畢業時開始自己創業。

大四那年,雷軍和另外3個志同道合的同學,用賣電腦的四五千塊錢,開辦了自己的"三色"軟體公司,開發出國內很早的防毒軟體"免疫90"。

然而半年不到,既沒有社會資源,又不曾受過系統商業訓練的雷軍就感到力不從心。最初的創業夢以失敗告終。

初次的創業經歷也讓雷軍收穫很多。他更清醒地認識了自己的優勢和劣勢,這使他在以後的創業歷程中變得更加謹慎;他對企業運作有了初步的瞭解,這為他日後向企業高層管理者的轉型奠定了基礎。

立足金山踏響時代節拍

大學畢業後,雷軍被分配到航天部,但他內心並不喜歡那樣的工作氛圍。1992年7月,帶著大學時的激情與夢想,雷軍在金山軟體公司開始了新的旅程。

從1988年到1995年,金山WPS曾憑技術領先橫掃大江南北。然而,"前有微軟,後有盜版",90年代中期,這一行業背景讓金山陷入前所未有的困境。

1997年,雷軍果斷提出"立足辦公軟體市場,全方位進軍家用軟體市場"。此後,隨著國內首套商業PC遊戲《中關村啟示錄》、VCD全屏播放軟體《金山影霸》及計算機學習軟體《電腦入門》等產品的問世,人們記住了金山的名字。

不久,金山還相繼推出了國內第一套大型武俠RPG遊戲《劍俠情緣》、《WPS97》和《金山詞霸》等產品。金山一舉成了中國軟體市場上最耀眼的明星。而與金山同一時代創業的一大批軟體公司,則在微軟和盜版雙重夾擊下日漸式微。

新世紀到來,伴著軟體業黃金時代的黯淡,中國以網際網路為主導的時代來臨。雷軍敏銳地感到,網際網路時代的傳統軟體企業必須應時革命,否則就會像恐龍一樣消 亡。2000年,他看好電子商務這一模式,並創辦了後來成為行業旗艦企業的卓越網;2003年"非典"後,雷軍又帶領金山進軍網遊(網路遊戲)。

從WPS到網路遊戲,在國產軟體步履維艱的現實條件下,金山走出了一條曲線救國之路。2007年10月9日,金山正式在香港聯交所上市。

從1992年加盟金山,到2007年金山上市,雷軍在金山16年如一日,身上洋溢著的始終是最初的夢想與激情。金山,也成為民族軟體產業的一面旗幟。

摘自:http://zhichang.umiwi.com/2012/0320/65017.shtml

 

產品經理(Product Manager),又稱品牌經理(Brand Manager)。是企業守門員、品牌塑造者、更是營銷骨幹。它既是一套完善的營銷運作制度,更是博大精深的營銷操作。舉凡產品從創意到上市,所有相關的研發、調研、生產、編預算、廣告、促銷活動等等,都由產品經理掌控。

產品經理的職責:一般來說,產品經理是負責並保證高質量的軟體產品按時完成和釋出的專職管理人員。他的任務包括傾聽使用者需求;負責產品功能的定義、規劃和設計;做各種複雜決策,保證開發隊伍順利開展工作及跟蹤程式錯誤等,總之,產品經理全權負責產品的最終完成。另外,產品經理還要認真蒐集使用者的新需求、競爭產品的資料,並進行需求分析、競品分析以及研究產品的發展趨勢等。

產品經理的角色:在產品管理中,產品經理是領頭人,是協調員,是鼓動者,但他並不是老闆。作為產品經理,雖然針對產品開發本身有很大的權利,可以對產品生命週期中的各階段工作進行干預,但從行政上講,並不像一般的經理那樣有自己的下屬,但他又要調動很多資源來做事,因此如何做好這個角色是需要相當技巧的。

  如果把軟體產品開發當做賽艇運動,在最前面擂鼓喊號的是產品經理,他不但要每個參與者都使足力氣,而且要協調所有的參與者,將他們的力氣往一處使,他還要保證所有人的方向都是一致的,都知道朝哪個方向走,不能出現有人用力不對的情況。

相關文章