何謂程序員?何謂中國的程序員?

學識都 人氣:2.15W

程序員,曾經是很多人尤其是計算機初學者爲之崇尚的一個職業,彷彿就是理想、激情和事業的象徵,從此就開始了IT白領人生。計算機技術發展之初,幾乎就是一個個人英雄主義時代。一個天才的程序員,幾乎就可以主宰一個計算機時代,創造出無數奇蹟和夢想。

何謂程序員?何謂中國的程序員?

今天,計算機技術的發展日新月異,技術朝着愈加複雜和簡單的兩個看似矛盾其實一致的方向發展。計算機技術越加普及,無數非計算機專業的人羣,出於愛好或者生存的需要,也加入了這個程序開發大軍,並且都稱之爲程序員。

軟件技術的發展,已經進入了一個大分工、大整合的時代,由此導致了軟件開發工作的分層和分類越加細緻複雜,同爲程序員,彼此之間工作的技術含量可以說有天壤之別。系統軟件、應用軟件,是一個大的分水嶺,幾乎大多數程序員,都在應用軟件這個層次進行開發,國內的程序員更是幾乎全部如此。

既然是應用軟件,就必然要和實際應用結合,而實際應用,是非常複雜多變的,尤其是具有中國特色的國內應用。於是乎,大多數程序員都在爲開發應用層面的軟件忙得不亦樂乎,財務軟件、ERP、CRM、OA等等,幾乎成了國內軟件開發的主流方向,更不用說電信、石化、鐵路、電力等具體行業應用軟件的開發了,這些早已被稱爲項目了。國外的應用軟件,除了以上業務應用之外,尚且還有像CAD、3D等專業領用的軟件,具有一定的核心技術。

很多工作了多年的程序員們,在回首往事的時候突然發現,自己依然是一個辛苦的打工者,一個IT行業的苦力。反思一下,我們這些自認爲程序員的工作者,其實是在覈心技術的外圍做一些表面工作,和那些非軟件開發人員相比,我們覺得自己有技術,其實我們到底掌握了多少核心技術呢?現在的`很多程序員,連數據結構、編譯原理、操作系統等這些基本的知識都掌握得模棱兩可,天天跟着老外的屁股後面追捧所謂的新技術、新框架。其實,又有多少是我們自己的呢?作爲JAVA程序員,經常聽到很多人自稱精通Spring、Struts、Hibernate等主流框架,並有大型項目的開發經驗,其實我們只不過比那些初學者多幹了幾年,使用這些框架更加熟練而已。國內軟件行業的面試經常有此類現象,一個面試者可能這次面試不合格,但是他回去看一下書之後,再來面試,很可能就通過了。爲什麼?因爲我們的面試太初級,太表象化。

我們經常接觸IBM、微軟等公司的面試,他們一般情況下是不會考覈面試者具體掌握了什麼框架、什麼語言的,一般都是考覈的面試者最基本的邏輯思維能力和分析判斷能力。這也說明了,同爲程序員,其間的差別是如此之大。

作爲一名程序員,尤其是國內的程序員,應該對自己有一個清醒的認識,不要被表面的感覺所迷惑。到了這個時代,不是說程序員已經失去了光彩,而是我們所從事的層次,技術門檻已經大大降低,很多人處於同質化競爭。

怎麼辦?很多人說軟件行業是個辛苦活,國內的很多軟件公司更把程序員當牲口使用。其實,根本上還是怪我們自己沒有很好的反思和調整。一方面,如果對技術真的有濃厚興趣和激情,那就不妨向軟件的底層核心技術邁進,另一方面,如果覺得自己真的缺乏這方面的潛力,那就努力適應國內環境,實現技術與應用的完美結合,爭取向公司的中高層發展,如果不給與機會,那就自己創業,選擇好技術和市場的切入點。

此外,一名優秀的程序員,一定不能是一個唯技術論者,如果持這樣的觀點,即使專心做個技術專家,也會存在發展障礙。微軟的例子,sun公司的例子,都生動地說明了技術與市場的辯證關係。

當然,每個人的成敗觀是不一樣的。如果始終把技術追求放在首位,追求技術完美的境界,並以此爲樂,也未嘗不是一道美麗的風景。