程序員:開始編程生涯的5個建議

2010-10-18 14:13:17來源:伯樂在線作者:

如果想成為一名程序員,你需要通過一些有創(chuàng)造性的方式來獲取經(jīng)驗并且并推銷自己。本文作者分享了一些引導(dǎo)性的實用對策。有位會員在我們的論壇上提交的一個問題,問到他是否可以開始他的程序員生涯了。他已經(jīng)花了大量

如果想成為一名程序員,你需要通過一些有創(chuàng)造性的方式來獲取經(jīng)驗并且并推銷自己。本文作者分享了一些引導(dǎo)性的實用對策。有位會員在我們的論壇上提交的一個問題,問到他是否可以開始他的程序員生涯了。他已經(jīng)花了大量的時間自學(xué)C#。他現(xiàn)在在學(xué)習(xí)WPF。此外,他是從事互 聯(lián)網(wǎng)領(lǐng)域的工作,因此,他對IT業(yè)已有了解。根據(jù)他的情況,我想,他已經(jīng)準備好了去挑戰(zhàn)職業(yè)開發(fā)生涯。就他如何實現(xiàn)目標,我有如下建議。

1. 基礎(chǔ)學(xué)習(xí)

當涉及基礎(chǔ)學(xué)習(xí)時,很多自學(xué)編程的朋友都有一個錯誤的認識。促使某人自學(xué)編程的心態(tài)是一種“現(xiàn)在就做些事”的動力和渴望。有這種心態(tài)非常好!但不幸的 是,在學(xué)習(xí)新東西時,一旦涉及基礎(chǔ),很多人都急于求成(還沒學(xué)會走路就想跑)。這是我的個人經(jīng)驗。這也就是為什么自學(xué)的程序員有時候名聲不大好的原因。

確信你學(xué)到了編程基礎(chǔ)。這包括變量名、合適結(jié)構(gòu)體、有時候需要查找?guī)於皇菓?yīng)用程序等等。《如何學(xué)習(xí)用某某語言編程》,這類典型的書籍往往忽略了成為 一名編程高手所具備的能力:解決問題的能力。在這里,我向大家推薦Abelson和Sussman的《計算機程序設(shè)計與解釋》一書,此書對你快速提升能力 大有幫助。

編者注:《計算機程序設(shè)計與解釋》一書于1984年出版,成型于美國麻省理工學(xué)院(MIT)多年使用的一本教材,1996年修訂為第2版。在過去的二十多年里,此書對于計算機科學(xué)的教育計劃產(chǎn)生了深刻的影響。


2. 多參與項目

編程經(jīng)驗,多多益善。我推薦你加入一個開源項目,或者加入當?shù)胤怯M織,幫他們編寫軟件。

你將有如下收獲:

    * 你將接觸到如何將一個應(yīng)用程序更加規(guī)范;
    * 你將經(jīng)歷研發(fā)的整個流程,包括產(chǎn)品維護;
    * 你將學(xué)到團隊合作經(jīng)驗;
    * 你將學(xué)到基礎(chǔ)知識,比如版本控制和編寫文檔;
    * 你將得到的成就感讓你遠離失落;
    * 你將可以把這段項目經(jīng)歷寫在簡歷上。


3. 接受減薪

如今經(jīng)濟的頹勢已經(jīng)不再是什么秘密。一直以來,我聽到的說法是:雖然有很多空閑的職位,但是工資著實很低。很多雇主把目標鎖定在可以接受更低工資或者重新評定工資等級的人身上。

大學(xué)應(yīng)屆畢業(yè)生(他們當中的很多人發(fā)現(xiàn)畢業(yè)后便失業(yè))是入門級的競爭力。另外,絕大多數(shù)應(yīng)屆畢業(yè)生沒有像已在職員工那樣的經(jīng)濟負擔,同時,和那些畢業(yè)多年的、有貸款、有家室和車貸的人相比,他們可以接受更低的薪水。

入門級的職位同樣也是最容易外包出去。但不幸的是,開發(fā)行業(yè)的總體趨勢是:在職業(yè)生涯中,頭五年左右的日子正變得越發(fā)艱難。


4. 關(guān)注非程序研發(fā)職位

在研發(fā)團隊中,有很多職位并不參與研發(fā)工作,可是它們也會讓你向目標進一步邁進。比如像品質(zhì)保證/檢測、維護、技術(shù)支持等。必要的話,從中選取一個作 為進入研發(fā)行業(yè)的敲門磚。接著,從容地尋找通向編程之門。舉個例子,你現(xiàn)在是一名質(zhì)檢員,除了單純地尋找錯誤并報告外,你還可以仔細檢查代碼,找出錯誤出 現(xiàn)的位置并以用標簽加以標記。研發(fā)人員會很感激你的幫助在證明自己能力之后,開發(fā)行業(yè)的大門也向你敞開了。


5. 給老板做兼職

以你現(xiàn)在的經(jīng)驗來講,找到一份兼職工作不太靠譜,但如果是為你現(xiàn)在的老板多做些分外事的話,也許可以。和你的老板還有同事們溝通一下,看看有沒有一些 簡單的程序可以替他們完成,來減輕他們的負擔。接下來,便是編寫程序。如果你身邊有一個內(nèi)部的開發(fā)團隊,你可以為他們提供一些幫助。一些經(jīng)理會讓你在工作 時間內(nèi)來做,另一些則讓你在自由支配時間內(nèi)完成。當然,你也可以嘗試從外部接些兼職項目,參考這篇《成功接項目需要注意的幾個要點》。

不管是哪種方式,你都會得到開發(fā)經(jīng)驗,你在目前老板面前更有價值,甚至可能在目前的公司中為自己開啟一個新的職業(yè)方向。在我的職業(yè)生涯中,我一次又一次地發(fā)現(xiàn),當面臨事業(yè)成長、事業(yè)發(fā)展和新方向時,“多做些分外的事”可以扭轉(zhuǎn)局面。

編者注:WPF(Windows Presentation Foundation)是美國微軟公司推出.NET Framework 3.0的組成部分之一,它是一套基于XML、.NET Framework、向量繪圖(vector graphic)技術(shù)的展示層(presentation layer)開發(fā)框架,微軟視其為下一代使用者介面(user interface)技術(shù),將廣泛被用于下一代Windows平臺(Windows Vista)的界面開發(fā)。

關(guān)鍵詞:程序員編程