那我說一下我的看法吧。因為大家都是搞
測試的,這里我也只談測試。
首先,我們可以有兩條路發展,技術和管理。管理就是做team lead, manager, director這么走。因為我沒有走這條路,所以,我這里也只談技術。而且,即使走管理,也是應該具備很強的技術能力才行,所以技術是我們的發展之本。我個人不喜歡技術不精通的領導,也不喜歡被這種人管理。
技術的發展是分階段的,基本上你要是能發展到最后的階段,工作,錢,房子,車子,老婆都不用發愁了。當然要一步一步走,不可能一步升天,而且一路走過來也不是很容易,應該說大部分人可能都達不到。不過只要你肯努力,堅持不懈,就一定能達到。
第一階段:就是基本功的問題。這個階段從大學入學就開始了,我接觸不少人工作幾年都沒有達到要求。這個要求是一定要達到的,不然以后沒法往高發展。大學的一些課程一定要學好,主要是數據結構,算法,數據庫,操作系統,計算機網絡。爭取精通兩門。數據結構,算法對軟件開發非常的重要,很多大公司面試就考這些。你不過關,根本通過不了面試,一兩道算法題一下就把你難住了。另外,我可以告訴你,頂尖公司的面試80%都是考算法,你有沒有經驗不要緊,做沒做過項目不要緊。關鍵是考察你的基本功,基本功打好了,其他工作就都容易很多了,基本功打不好,什么都白說。操作系統,爭取要精通windows或者linux內核,看你走哪條路了,我是搞windows的,不過他們之間很多地方也是相通的。計算機網絡,爭取精通TCP/IP協議。數據庫我不怎么懂,我的理解是要精通oracle, sqlserver, 還有sql編程。
另外就是編程技術了。C,C++,面向對象一定要搞懂,搞熟。大公司面試的算法就是要你用C/C++實現的。這些搞熟了,學習其他語言就是幾個小時的事情。(我指的是上手,不是精通)。這些東西搞不透,不管你其他語言用多少年,回來學他們還是難。
再有就是英語水平了,聽說讀寫,各個方面都要達到要求。技術到了一定程度,英語對你的發展就起到了非常決定性的作用了。你英語好,就可以去外企,就可以外派出國,甚至國外發展。
以上這些都是在大學應該掌握好的。當然了,能在大學掌握好這些的畢竟是少數。這些少數人就是去了微軟,google的那些,一畢業就拿到月薪上萬工資的。大部分人都是達不到要求的,這沒關系,畢業后一定要找時間把這些基本功補上。不然的話,在下個階段的發展就很受限制了。
第二階段:計算機知識的擴展,行業知識的精通。這個階段從你大學畢業走向第一個工作崗位開始。工作之后,發現計算機的世界比大學的知識要博大精深很多。一開始工作,就要拼命吸收以前沒有接觸過的,新的知識。這個就不多說了,大家都會有很多感受的,會覺得很多東西都不會,不會就學。以后你跳槽去面試,人家就會看你工作幾年,這幾年干什么了。工作1,2年之后,很重要的一件事情就是要選擇一個行業了。也許是你現在正在從事的行業,也許是一個新的行業。總之,你自己要為自己規劃,選擇一個適合自己,而且又熱門,以后有發展的行業。無論是現在的行業,還是跳槽到一個新的行業,都需要你開始積累在這個行業的經驗了,要精通這個行業。有這個基礎之后,就要去這個行業里top的公司了,國企,外企都可以,一定要有名氣,大公司。比如,通信的華為,搜索的百度,等等。如果你精通了這個行業,去這些公司不是很難。
另外有一點很重要,如果你本科不是一所名校畢業的話,爭取能上一個名校的研究生,全職,兼職都可以。這樣可以為下一階段做好充分的準備,否則的話會有比較大的困難。總之了,是自己的短處都要想辦法去彌補,不然發展總會受限制。
第三階段:國際著名大公司。有了前兩個階段的積累,加上自己的英文水平,就要找機會進入國際的大公司了。相信這個時候就會有很多獵頭來聯系你了。選擇你這個行業的世界前3,最好是第一或者第二。進去之后要學習兩個方面,一是英文,中國人可以學一輩子英文的。另外一個就是大公司的管理。可以這樣說,國際大公司的管理有很多類似的地方,因此他們的招聘非常愿意招其他國際大公司的職員。這就是為什么,你一旦踏上一家公司,一輩子都不用愁工作了,可以在這些大公司跳來跳去,工資節節高。到了這個階段,你基本上可以有個比較不錯的生活了,房子,車子都不會是太大的問題。
第四階段:向國際化發展。如果你還不滿足,覺得自己還有能力更進一步,那我就建議你向國際化發展了。中國的工資畢竟有限,到了第三階段也不過就是20萬左右,你可能還不滿足。那么你就可以聯系國外的公司了,有了你的英文,你的經驗,你的背景,到時候就是水到渠成了。我相信國際的獵頭也會盯上你的。
最后說一下,如果你現在已經具備了我所說的各個階段的能力,那么你的簡歷是任何公司都很難拒絕的了。因為目前的情況,具有這些素質的測試人員在世界都緊缺。很多公司都招不到人,即使連google,MS也不列外。他們都在到處尋找這種人。
最后說一下測試。我一直沒有討論測試的問題,因為我一直沒有把測試當作一個難得東西來看待。我認為測試是表面上的,我前邊提到的東西要比它重要的多。歡迎大家一起來討論。我也是進入測試才2年多的時候,其中大多數的時間也像大家一樣的迷惘,很多時候也很悲觀。不過通過自己的努力,最后終于得到了一個滿意的結果。我發現自己對測試這個行業的理解和很多人都不同,希望我的理解能給大家一點幫助。
那我說一下各階段掌握的知識吧:
- 大學主要是C,C++,VC。
- 工作第一年就是VC編程,TCP/IP編程。
- 后來的半年主要是C編程。
- 研究生搞了很多,不過都不算精通,Java,Linux,并行計算,分布式計算。
- 做測試以后搞了.net, C#, 開發自動化測試系統。
- 另外,英文水平可以和外國人直接溝通。