1. 程式人生 > >程式設計師等於吃青春飯嗎? (二)

程式設計師等於吃青春飯嗎? (二)

上次給大家分享了Part1 誤區:軟體開發職業是青春飯

今天繼續更新第二部分Part2 程式設計師如何規避吃青春飯?

現今,科技領域技術更新迅速,作為該領域幕後勤懇勞作的程式設計師,要想在其中永遠保持領先,跟得上時代,規避吃青春飯的尷尬,就需要時刻面向未來做好準備。但面對各種技術,各種開發語言,程式設計師該如何做?我們先來看看程式設計師的出路在哪裡?

程式設計師的出路在哪裡?

一位有著10年軟體行業從業經驗,專注於微軟.Net技術領域及專案管理的人員根據自己的現狀總結出了三條出路,希望對你們有用。

出路一:向IT培訓師轉型

分析:IT企業在招聘新人後,一般都須經過培訓才能上崗,這個培訓有時是在崗位上進行的,由富有實踐經驗的“老人”負責。年輕人想要進入IT行業,必須接受這樣的專業培訓。如今IT培訓市場蛋糕相當大,利潤空間可觀,行業發展前景看好。無論是在IT公司內部轉型擔任培訓工作,還是到IT培訓機構擔任教師,都有很大的發展空間。這樣的工作不會有太大壓力,且比較穩定,對年齡也沒什麼要求,而且也沒有脫離本行。

優勢:在這個行業工作多年,擁有豐富程式設計、專案經驗,曾參與過許多成功案例。而多年積攢的行業人脈關係,還可以幫助我們發展企業客戶,順便擔任市場拓展工作。

挑戰:缺少培訓工作經驗。如果要向培訓師轉型,可能需要接受一些專業訓練,提高擔任培訓師的能力。

出路二:向IT營銷轉型

IT與其它行業不同,由於技術性較強,營銷人員一般須有較強的技術背景,且最好有著豐富經驗。網際網路公司、電子商務公司、軟體公司目前都需要有技術背景的營銷人員;另外,電子商務的再度火爆,使得傳統企業開始重視電子商務營銷,也需要有技術背景的營銷人員。這類工作薪水不低,加上提成應該可以拿到高於程式設計師的薪水,同時也比較穩定。

深厚的技術背景,廣泛涉獵了各種程式設計軟體和工具,對IT行業也有相對深入的瞭解,這些都是比較大的優勢。

挑戰:程式設計師一般都很少與人打交道,口才也不太好,而營銷工作恰恰需要跟人打交道,這可能是最大的挑戰,要求徹底改變工作方式,加強溝通能力與人際交往能力;此外,營銷工作會面臨銷售指標的壓力,這些問題都是轉型前必須深入考慮的。

出路三:向專案管理努力

分析:如果說前面兩條出路轉型的成分多,那麼專案管理可以說是更為便捷的發展之路。目前,軟體專案經理是人才市場上受熱捧的人才,有豐富經驗、外語好的軟體專案經理是搶手的香餑餑,供不應求,薪水自然也是水漲船高。最重要的是,一個優秀的專案經理可以在這個崗位上長久工作下去,並且有向高層進一步提升的可能。

優勢:對有經驗、有技術、有人脈、有能力、參與過多個軟體開發、有一定經驗的人,專案管理無疑是發展的一個很好的方向。

挑戰:可能有些程式設計師在專案團隊裡一直是參與工作,很少擔任過專案帶頭人。而很多公司在招聘專案經理時,都需要有帶領團隊進行專案開發的經驗,這是一個劣勢。最好參加一些專案管理方面的培訓課程,自學相關的知識,增長自己在流程管理、溝通協調等方面的能力,以便積累資本,逐步向專案管理崗位邁進。

程式設計師如何為未來做準備?

面對日新月異的軟體開發技術,程式設計師們如何將這碗飯吃好,吃長久,為未來做好準備呢?

01.挑選一個廣闊而穩固的基礎方向

確保軟體開發者前途光明的最可靠辦法是避免徹底偏向,應該打下一個廣闊而穩固的職業基礎。許多技術是時尚的,但總有一些技術更能經受時間磨礪,像C或者C++語言已經出現很久,仍在大量使用。JavaScript是另一個具備穩固基礎的偉大技術,它可以用於任何平臺的程式設計,包括移動端、網頁端,甚至嵌入式系統。你尤其需要提升通用技術而不是特殊技術。擁有通用技巧是軟體開發過程中編寫良好程式碼的核心靈魂。

02.留意最新趨勢

做不到準確預測未來,但可以通過一些指標看出潮流趨勢,關注趨勢和熱議內容一直是個好主意。在Hacker News和Pro Git等網站經常可以發現新技術的苗頭。開發者大會和技術沙龍也是發現新趨勢不錯的渠道。

03.持續學習

保證不落伍最穩固的方法是學習新技術並不斷擴充套件知識面、提升已有技術。作為軟體開發者應該習慣於終身學習,制定一個計劃讓每天或每週有一個固定的學習時間。學會如何學習,以提高學習效率並使學習變成更有趣的經歷。自學是在永遠變化的技術世界中存活的重要武器。

記住,世界上沒有東西是憑空誕生的。新技術和新程式語言會出現,但它們都是現有某種技術或程式語言的改作或組合。你知道得越多,就越能關聯新事物並使新學習部分大量減少。

04.願意改變和調整

固守已知而忽略發展確實容易,但誰都不能阻止未來,我們最好放棄抗拒趨勢發展,學會改變和調整。

如果始終迷信一種技術,最後傷害將多於幫助,我逐漸認識到在大風中應彎下腰。

如何做一名優秀的程式設計師

作為程式設計師,價值的實現不是通過你知道些什麼來衡量,而是通過你做出的設計來衡量。雖然兩者之間存在聯絡,但並不相同。那麼,如何才能成為優秀的程式設計師?

01.發現問題要及時解決

程式設計師在編寫程式碼時,遇到真正的難題很少,也很少有專門做技術的公司。要想成為優秀的程式設計師,第一步就是要及時解決遇到的難題。遇到有問題的程式碼而不去解決的程式設計師不是好程式設計師。無論你是Ruby、Node.js、Angular還是其他開發人員,遇到問題一定要解決。

02.從程式碼中學習

我發現很多程式設計師的編碼水平都達到了一個穩定值,因為他們還沒有找到可以提高他們編碼水平的方法,這是一件很糟糕的事。怎樣才能提高自己的編碼水平?最簡單的方法就是從好的、不好的程式碼中學習。通過長期積累,你應該可以分辨出哪些程式碼值得你學習。

03.態度端正

一個好的程式要確保自己寫出的程式碼能夠正常執行,在寫程式碼過程中,態度一定要端正。如果不端正的話,會影響到你寫程式碼的速度和質量,同時也會造成Bug,說不定還會惹怒你的領導。

04.適量測試

測試是一種有力的工具,就像戰士穿鎧甲一樣,穿得越多,越不容易失敗;越不害怕失敗,你做得就會越多,進步的空間也比較大。但到底什麼才是適量的測試?對此沒有明確的回答,依情況來定。測試是你需要學習的另一個新的專業知識,要多花時間思考哪些東西需要做測試,怎樣才能做好測試。

05.每天至少花四個小時來認真做本分工作

大多數程式設計師喜歡討論優化自己、關注黑客等,其實你根本不需要做這些來提高工作效率,最根本的是要每天堅持做自己的本分工作。每天至少花4個小時的時間認真做好自己的本職工作,這並不是一件容易的事情,如果長期堅持下去的話,勢必會成為團隊最優秀的成員之一。

記錄有價值的程式碼並與團隊分享:培養記錄有價值程式碼的習慣,記錄下來之後,還應該花時間與你的團隊成員分享,互相學習。在程式設計過程中,遇到的最糟糕的事就是修復Bug。分享可以有效降低出現這種事情的概率。

06.使團隊更優秀

你的出現使團隊變得更優秀還是更糟糕?你編寫程式碼、編制文件和你的技術能力幫助到隊友了嗎?你是否經常鼓勵隊友,使他們為成為優秀的程式設計師努力?你應該想盡辦法使團隊變得更優秀,比如在工作上幫助他們。要記住,只有你一個人“聰明”並不聰明。

其實,作為一個優秀的程式設計師,不在於你有多聰明或者有多少理論知識,也和你從哪所大學畢業無關。你是一個怎樣的程式設計師最終只由你所做出來的工作以及身邊人對你的評價決定。所以,要想成為一名優秀的程式設計師,繼續加油吧!

更多資訊請關注【傳智播客】官方微信:itcastedu