① 運維、測試、程序員,這些技術崗位哪個更有前景
在一個初具規模的互聯網公司,從業務方面出發,有很多崗位類型,比如運營、客服、市場、產品、設計、技術等等。
在這些大類下面,還要細分各種小類,以技術為例,可分為前端(客戶端)、後端、測試、運維、DBA等等,這些都是技術類崗位。
那麼如果想從事這些技術崗位,該如何選擇,哪一個更有前途呢?
這五個崗位,可以做一個分類,前端和後端、運維和DBA、測試
前端和後端屬程序類,也就是通常大家知道的程序員,主要是根據產品的需求開發出軟體,屬於公司的技術核心,非常重要。沒有程序員的軟體公司,也不好意思稱為軟體公司。
運維和DBA,這兩個崗位的主要工作是管理伺服器程序運行的環境和依賴的數據。運維可以看成是伺服器管理員,所有跟伺服器相關工作都是由他處理,比如伺服器程序運行環境CPU、內存、磁碟資源監控、網路是否穩定監控,伺服器程序依賴的軟體安裝等等。DBA就是資料庫管理員,專門管理生產環境的資料庫如MySQL、Redis。這兩個崗位的工資不一定比程序員低,但是市場需求沒有程序員旺盛。一家軟體公司可以沒有運維和DBA,但是不能沒有程序。運維和DBA一般只有上規模的企業配備,小公司都由程序員兼任,畢竟如果公司只有個位數的伺服器,完全沒有必要專門配備一個運維,老闆也不願意花這個錢。
測試,雖然也是技術崗位,但是我個人感覺他們的工作不和技術掛鉤,他們的工作就是不斷使用程序員開發出來的軟體,找出其中的BUG和漏洞。與此同時,他們的另一項工作就是督促程序員幹活,修BUG。
論這些崗位的技術含量,我覺得測試是最低的,低端的測試幾乎沒有技術門檻,只要有軟體使用經驗,基本上都能乾乾測試的活,畢竟只是用用軟體找找BUG嘛,而程序和運維則不行,必須掌握基礎的技術技能才能上崗。當然高端的測試另當別論,他們也可以牛逼到天上。
其次是運維,當然並不是說運維這個崗位沒有技術含量,同樣運維的技術含量也很高,只是通常情況下,程序員都會點運維的工作,裝裝環境,監控下伺服器運行情況,都沒什麼問題。反過來,運維卻不一定會程序員的工作。我覺得運維應該是脫胎與程序員,然後隨著行業的發展,獨立成為一個崗位,本質上還是依附與程序員。
最後則是程序,一個合格的程序員,不但要掌握程序員本職的技術,還需要會伺服器運維的技術,比如自己搭建一個測試環境,這樣的技能是必須的,所以對伺服器必然要有較為深入的了解。同時需要會DBA的技術,通常DBA是在數據量巨大的情況下才會配備,大多數時候一家公司不需要DBA,DBA的工作的都由運維或者程序員兼職的。與此同時,程序員還需要測試技能,當程序員寫出來一個程序時,免不了要進行自測,寫測試用例等等,只有經過自己測試,才可以將功能提交給專門的測試人員進一步測試。
所以,對於這三類崗位,我覺得程序員的技術含量是最高的。
我們再來說說這些崗位的發展前景。
對於一個大公司來說,會有專門的研發部門、運維部門、測試部門,然後設有研發總監、運維總監、測試總監,這些領導在公司的身價不相上下,不存在誰壓誰一頭的情況。但是在小公司通常只有一個技術部,這個部門管轄所有技術類員工,包括程序、運維、測試,甚至有的公司還會包含設計人員。而技術部門的領導十有八九是程序員出身,幾乎不太會是運維或測試出身。因為一個軟體公司的技術部門,沒有運維和測試,照樣可以運轉,雖然有可能轉的不順溜,但是一定可以轉,但是沒有程序員,即便運維和測試配備的多麼強大,這個部門也轉不起來。其次一個技術部門程序員的數量絕對是壓制運維和測試人員數量的。因此在程序員中出技術部門領導的概率遠大於在運維和測試中出領導,除非真的遇到難得一見的人才。
所以,如果你想從事互聯網軟體行業的技術崗位,要想選其中比較有前途的技術類崗位,那麼首選程序員,當然,更多的機會也意味著有更大的競爭,同時也有更大的難度,你選擇程序員不見得一定會成為技術部門的領導,選擇測試和運維也不意味著職業生涯會默默無聞,只是相對來說程序員的情景更加明朗。
與此同時,關於35歲程序員會被淘汰的觀點,其實運維和測試的危險性更大,仔細想想難道不是嗎,運維和測試並沒有比程序員更有優勢,反而劣勢一大堆,那麼肯定比程序員先一步面對淘汰,這是市場規則。
② 軟體測試工程師前景怎麼樣有發展嗎
1、軟體測試工程師在一家軟體企業中擔當的是「質量管理」角色,他的職責是及時糾錯及時更正,確保產品的正常運作。
軟體測試是個可以很快入門的職業,門坎不高。
對於剛剛畢業的學生,如果希望今今後事軟體開發,那麼先從事一段時間的測試可能更有利於今後的編程;而對於具有多年編程經驗的程序員,如果改行做測試,更容易提高技術。
2、在北美,軟體測試工程師因不同的級別,獲取的薪資是不一樣的,特別是近幾年,由於越來越備受重視,所以薪資也節節高升。
現在起薪已經在 5 萬左右;若經驗豐富的話,薪資可以拿到八九萬。
實際上,現在就業市場上最難找到的不是最佳程序員,而是最佳軟體測試工程師 ! 因為面對軟體的規模越來越大,應用的復雜度和集成性越來越高,各種新的軟體開發技術不斷應用,特別是一些重要領域如國防、銀行、金融、通訊、航天等,他們對軟體質量要求很高,使得軟體測試工程師已變的炙手可熱。
目前大中型軟體開發與測試人員比率接近 1 : 2 ,巨大的市場空缺,使軟體測試工程師從初級到高級,只需要 1 年甚至更短的時間來完成。
所以作為一名軟體測試工程師,未來的發展空間是非常廣闊的。
3、「軟體測試工程師是一個越老越吃香的職業。」 著名軟體測試專家、清華大學教授鄭人傑教授說。
他告訴記者軟體測試工作是對質量的把關,其中包含技術及管理等方面的工作,工作相對穩定,對年齡沒有限制。
而且隨著項目經驗的不斷增長和對行業背景的深入了解,會越老越吃香。
對於鄭人傑教授對測試員的職業壽命的看好,資深測試專家、北大測試負責人肖睿非常贊同。
他認為軟體測試員的一生如同一名醫生的一生,隨著職業閱歷和臨床經驗的豐富累積,到一定的年齡他們通過「望聞問切」就能知道毛病出在什麼地方。
因此,有人說軟體測試員和醫生是最不需要用「青春」來保證和延續自己職業壽命的職業。
4、20多年來鄭人傑教授一直軟體測試領域工作,如今70多歲的鄭教授還在為軟體企業「坐診」。
一些出版社為了出版他的《計算機軟體測試技術》幾乎成了他家的常客。
作為我國軟體測試行業的「泰斗」,他見證了中國軟體測試業20年來的發展歷程。
「軟體測試工程師地位」翻天覆地「的變化,源自信息產業的發展以及軟體企業自身、用戶成熟度的不斷加深。」 鄭人傑教授表示。
一方面,計算機使用越來越普及,越來越多的領域使用了計算機,特別是一些重要領域如國防、銀行、金融、通訊、航天等,他們對軟體質量要求很高。
同時一些重大事故的發生,也引發了人們對軟體質量的關注。
如2002年歐洲載重10噸的阿麗亞娜5型火箭發射失敗,最後證實是軟體質量問題;還有國內的一些銀行金融系統,因軟體質量問題不得不暫停營業。
毋庸置疑,在經歷了長期的不為人知和可有可無後,軟體測試工程師目前已變的炙手可熱。
隨著中國軟體市場的發展,越來越多的國外資金投向中國軟體行業。
據報道,中國軟體外包市場的潛力和機會已遠遠超過軟體王國印度,不過由於軟體人才的嚴重不足致使我國軟體發展遭遇「瓶頸」。
國家為了大力培養軟體人才,不斷採取積極有效的措施。
前不久,國家出台鼓勵軟體測試等高職業技能政策後,廣大青年學生對軟體測試的興趣驟然上升。
5、軟體測試是個可以很快入門的職業,門坎不高。
對於剛剛畢業的學生,如果希望今今後事軟體開發,那麼先從事一段時間的測試可能更有利於今後的編程;而對於具有多年編程經驗的程序員,如果改行做測試,更容易提高技術。
6、軟體測試是個需求高,就職機會大的職業。
目前,我國具備軟體測試能力的人員數量和市場需求相差巨大,巨大的市場空缺,使軟體測試工程師從初級到高級,只需要 1 年甚至更短的時間來完成。
所以作為一名軟體測試工程師,未來的發展空間是非常廣闊的。
③ 做程序員與做測試員的選擇
1、學歷問題:大公司對於學歷還是有一定的要求的,學歷高的起薪也高,但是學歷不能代表所有,也有學歷高,但是技術垃圾的人,所以不要因為學歷的問題來妄自菲薄,學歷只是入門和之後評職稱的時候有用,學歷可以以後慢慢考。所以學歷不是問題。
2、方向問題:如果是培訓出來的話,那的基礎知識一定不會非常的好,一定要注意基礎部分,不要總是因為學習了多少框架而感到驕傲並且否定基礎的東西,其實無論是框架還是什麼都是基礎的延續,只要打下了扎實的基礎,那麼學習起框架那些東西。培訓出來的人大都做開發,而測試一般都是逼不得已而為之!
3、測試和開發哪個好:都是比較枯燥的工作,測試久了想轉開發,開發久了想轉行。就像圍城。測試,沒有做過,但是聽說過一些,測試枯燥、乏味、而且經常熬夜,(開發也一樣),但是從薪方面看,開發的優勢就遠遠大於測試了,不是說測試比開發低級,用共產黨的話就是:革命沒有貴賤之分,只有分工的不同而已。
(3)程序員測試員技術咋樣擴展閱讀:
做好一名測試工程師的方法:
1、溝通能力。
一名理想的測試者必須能夠同測試涉及到的所有人進行溝通,具有與技術(開發者)和非技術人員(客戶,管理人員)的交流能力。既要可以和用戶談得來,又能同開發人員說得上話,不幸的是這兩類人沒有共同語言。
2、技術能力。
一個測試者必須既明白被測軟體系統的概念又要會使用工程中的那些工具。要做到這一點需要有幾年以上的編程經驗,前期的開發經驗可以幫助對軟體開發過程有較深入的理解,從開發人員的角度正確的評價測試者,簡化自動測試工具編程的學習曲線。
3、很強的記憶力。
一個理想的測試者應該有能力將以前曾經遇到過的類似的錯誤從記憶深處挖掘出來,這一能力在測試過程中的價值是無法衡量的。因為許多新出現的問題和我們已經發現的問題相差無幾。
4、幽默感。在遇到狡辯的情況下,一個幽默的批評將是很有幫助的。