1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 軟件測試職業發展規劃

        發布時間:2017-03-26 編輯:1019

          天地玄黃,宇宙洪荒;所謂光陰似箭,因為一轉眼滾滾的歷史車輪就將人類文明推進了二十一世紀的信息時代!葛大爺有對白曰:“二十一世紀最寶貴的是什么?”對曰:“人才!”何為人才?sincky曰:“適應時代潮流,把握社會需求,并為我中華老大帝國創造社會價值的人!”哎喲,不諏了,其實今天筆者在這里要和大家探討的,是軟件測試的職業發展問題,重點要闡述的是軟件測試從業者的職業發展方向,歡迎大家按enter鍵換行,繼續瀏覽!

          一個人從大學畢業,即開始發生從學生時代向職業人士的過渡,這種過渡走的好,可以實現畢生宿愿,體現個人價值,不管你是否喜歡,功名、利祿盡收眼底;如果走的不好,則會誤入歧途,縱有凌云壯志、萬丈豪情,難免一生郁郁不得志,終歸化作片片飛塵,無語對穹蒼!那么如何才能順利的完成這種過渡、踏上我們豪邁的職業旅程呢?答曰:認清自己,選擇適途!戰國的魏人荊軻具有“十步殺一人,千里不留行”的本領,曾向魏王獻策曰:“國君,我是職業殺手,我殺人的技術很強!”魏王問:“那么你想殺誰呢?”對曰:“殺他個國君如何?”魏王大驚,慌然離去!后來荊軻離開魏國,與燕太子丹密謀,留下了“圖窮匕首見”、“荊軻刺秦王”的千古佳話。荊軻,良禽也,擇木而棲和太子丹合作,是他的高明之處;不過筆者認為他是一個典型的“低管理、高技能”的人才,當他緊握嬴政的脖領、持劍相逼時,他太得意忘性了,可見他沒有領導的“統御力”和“決斷力”,所以落了個刺殺失敗、拔劍自刎的下場,雖然他的俠義與膽識流暢千古,但是終究是個“殺手”而已;當今社會下,如果“低管理、高技能”的人干工作干到丟了性命,那也真是一個笑談了!

          目前我們國家高等學歷大幅度擴招,造成社會的低端人才嚴重過剩,大學生畢業找不到工作、或者找不到合適的工作例子鱗次櫛比;但是社會各行各業對高端人才的需求又求賢若渴;那么如何解決這種矛盾呢?從大環境來說,國家應該改革教育體制、提高教學質量、重視高端人才的培養,但是,一個問題一旦上升到國家的層次,就要等它個十年八年!我們沒有辦法改變世界,但是我們有能力改變自己;所以我們從個人的角度來講,講講我們這些軟件測試的從業者們,如何“認清自己、選擇適途!”

          縱觀當今社會各行各業,對于個人的職業發展方向,從宏觀上都可以劃分為四個群體,即:

          “低管理、低技能”

          “高管理、低技能”

          “低管理、高技能”

          “高管理、高技能”

          而在IT 行業這種劃分方法更為合理,sincky為其命名為“一起點-三方向示意圖”:

          告別了象牙塔,帶著對校園生活里那段風花雪月的追憶,年輕的畢業生們走上了社會;這時候的年輕人,大多數是屬于“低管理、低技能”的群體,我們沒有工作經驗,不知道企業的工作流程,不清楚各個職業的工作技能,更不具備任何行業的管理能力;然而值得慶幸的是,人類問明發展到現在所出現的眾多行業,都已經有了眾多可以參考的群體,這些群體就理所當然的成了我們可以借鑒的發展方向!雖然我們的起點都是一個,但是可以選擇的發展方向卻是豐富多樣!

          高管理-低技能,即是我們通常所說的管理路線!在IT業,這個方向的成功者不乏項目經理、項目總監直至企業的最高管理層;但是走這個方向也要有技術方面的積累,因為管理者的影響力中,除了職位賦予的權力以外,還包括個人人格方面的能力和專業領域的專業能力,而后者就是技術水平!而計算機行業本身,也決定了技術底蘊對職業發展的重要影響,所以年輕的IT朋友們,如果想為自己的職業人生設計成這個路線,除了適當的技術積累外,更要有意識的鍛煉自己的管理素質,下圖可做參考:

          低管理-高技能,即通常所說的技術路線!IT業以技術為主導,對于喜歡鉆研技術、探討技術的人,可以選擇該條路線,走的深入、走的徹底!只因中國對于技術與管理的認識不同,造成很多人認為做技術不賺錢、不被重視,自身誤以為不過是個工程師而已,所做事情只是輔助企業的運作。實際上,在歐美發達國家,資深技術人員的薪資非常高,從業時間的周期也相當長,在Microsoft、IBM等巨頭企業,不乏年齡在50歲以上的資深程序員或系統架構師,而其薪資也和高級管理者一樣高!而另外一個不爭的事實是,企業對于管理的職位是有限的,并且一些優秀的技術人員不愿做管理,或者不適合做管理,因此社會上出現的資深技術專家(或者類似職位),為喜好技術的從業人員提供向上的通道。

          高管理-高技能,即咨詢方向是較為均衡、全面的路線,也是眾多企業希望員工努力的方向。然而有調查結果顯示,由于現實種種因素的制約,大約90%的個人是分別沿著管理方向或者專家方向發展的,真正實現在咨詢方向達到一定的高度的人少之又少,而且在這為數不多的咨詢方向達到又一定高度的人才,往往又會由于企業資源的限制無法將個人價值完全發揮而最終離開所在企業,成為專業培訓師、咨詢師;一些國際知名的咨詢公司如麥肯錫、安達信乃至畢博或其他,可謂大家在個人職業生涯到達一定階段,作為自己繼續突破職業瓶頸的發展路線。

          那么,對于軟件測試的從業者,我們的出路在哪里?我們的職業發展該如何設計?我們的發展方向又有哪些呢?這里筆者和大多數測試同行意識相同,筆者也曾在多篇文章里標明,中國的軟件測試行業尚屬起步階段,其發展的步履上布滿了荊棘與泥濘;然而其發展速度可謂驚人的,從筆者剛畢業時候對軟件測試的“0”概念、從業同行者寥寥無幾,到最近2年的各大媒體紛紛報道的中國軟件測試人才缺口20萬、軟件測試工程師將成為未來10年最緊缺的人才之一、包括筆者所接觸的眾多國內外優秀企業對高端測試人才年薪10萬、15萬、20萬的招聘需求……可見,選擇軟件測試這個朝陽行業的朋友,做了一個比較正確的選擇!然而,如何任何事物總有它的兩面性和矛盾性:2006年初在北京、上海、深圳舉辦的幾次春季大型招聘會上,多家企業紛紛打出各類高薪招聘軟件測試人員的海報,出人意料的是,收到的簡歷尚不足招聘崗位數的50%,而合格的竟不足30%……引起我們思考的是,我們的軟件測試從業人員還有很大一部分不滿足當今社會的需求;而另一層含義是,我們還有很大的提升空間!因此解決該矛盾的突破點是:每個人在這個行業里找到自己的發展方向,規劃自己的職業藍圖,從而有針對性的鍛煉自己的職業技能,增加個人的職業砝碼!

          軟件測試職業發展方向,大體上與上述的通用職業發展路線圖相吻合,也可以分為管理路線、技術路線、管理+技術路線;只是針對該行業本身,有其特殊性和細致性。其圖示如同兩個重疊的”V”字樣,我們為其命名為“雙V模型”;該模型適用于大多數行業性軟件測試從業人員,一些特殊領域如游戲測試、嵌入式測試、硬件測試,也可作為參考。本文是三部曲之一,只介紹職業發展方向定義,在下一曲會介紹各個職業方向應該具備的知識與技能體系!

          雙V的底點是測試工程師,屬于軟件測試職業生涯的初級域,其適用范圍是入行軟件測試3年內的常規測試從業者,其主要工作內容是按照測試主管(即直接上司)分配的任務計劃,編寫測試用例、執行測試用例、提交軟件缺陷,包括提交階段性測試報告、參與階段性評審等。初入測試行業,進入企業從事測試工作的人員,都要從該層次做起,雖然有時感覺乏味無趣,甚至迷茫困惑,但是我們可以根據個人的興趣與特長,向上選擇適合自己的路線,因為誰都不會甘心一輩子只做一個普通的測試工程師,那么大家看到這里,就可以摩拳擦掌,看看向上發展的通道中,哪一個適合自己,然后立刻從現在開始,確定自己未來5年、10年甚至一生的發展目標邁進,用筆者經常跟學員說的一句話來形容:把握現在,即刻做起,相信自己是最強的!

          首先是常規路線,即雙V模型的重疊線,這條發展路線要求管理與技術并重,因為軟件測試的行業特點決定了這個因素:測試工程師向上晉升到測試主管、測試經理、測試總監,直至咨詢域的更高方向!

          測試主管是企業項目級主管,對于中小型軟件公司也可以是企業級主管,屬于中級發展域,適用范圍是2到5年職業經驗的測試從業者。其工作內容是根據項目經理或測試經理的計劃安排,調配測試工程師執行模塊級或項目級測試工作,并控制與監督軟件缺陷的追蹤,保證每個測試環節與階段的順利進行。嚴格來說,這個級別更多屬于測試的設計者,因為企業的測試流程搭建是由更高級別的測試經理或相關管理者來做的,測試主管負責該流程的具體實施;而更多的工作,是思考如何對軟件進行更加深入、全面的測試。因此筆者認為測試主管比較有創造性的工作內容就是測試設計,而恰恰很多公司忽略了或沒有精力來執行此工作內容!應該說,在一個企業里做了3年左右測試工作的人員,很容易晉升到該職位,而之所以晉升,是與個人測試技術的過硬、測試方法的豐富,加上對測試流程的監控力與執行力的職業素質息息相關!

          測試經理是更高級別的測試管理者,屬于高級測試方向域。對于大中型軟件公司,該職位尤為重要,并且對其職業要求也比較高,一般適合4到8年的測試從業者,在管理與技術能力雙雙比較成熟的情況下,可以結合具體環境晉升到該級別。測試經理負責企業級或大型項目級總體測試工作的策劃與實施。隨著軟件行業的發展,企業對軟件工程里各個角色的定位逐漸明顯,測試經理完全與開發經理(一些公司也成為項目經理)平齊,除了需要統籌整個企業級或項目級測試流程外,還要對于不同軟件架構、不同開發技術下的測試方法進行研究與探索,為企業的測試團隊成員提供指導與解決思路,同時還要合理調配不同專項測試的人力資源(如業務測試工程師、自動化測試工程師、白盒測試工程師、性能測試工程師),對軟件進行全面的測試;另外,一些企業里,測試經理還需要與客戶交流與溝通,負責部分的銷售性或技術支持性工作。嘿嘿,看看那些高薪招聘測試經理的企業對該職位的要求里外語口語的描述,就可見一斑!

          測試總監,屬于常規發展路線的最高域,如果再往上發展,那只能是咨詢域了;不過筆者并沒有將其在圖中標記出來,因為該職位對于國內目前的大多數軟件公司根本沒有設立,也就沒必要再在圖中體現了。該職位一般在大型或跨國型軟件企業,或者專向于測試服務型企業有所設立,由于其企業自身的職位定位不同,以及軟件測試整體行情所處的階段,這里不好歸納陳述;但是一般設立測試總監的企業,該職位都相當于CTO或副總的級別,是企業級或集團級測試工作的最高領導者,駕馭著企業全部的測試與測試相關資源,管理著企業的全部測試及質量類工作。而其職業要求,也是技術與管理雙結合;基于目前軟件測試行情看,這種高管理-高技能的發展目標,不會適合大多數人的選擇,社會也不會提供如此眾多的測試總監職位讓我們去應征!

          應該說,大多數測試從業者都不是技術與管理雙優的人,而如今一些到達測試經理或測試總監級別的優秀測試人才,已經領先一步開辟了這條發展路線的先河,希望這些朋友和大家多多分享經驗,讓更多的朋友彌補自己管理或技術上的不足,在這條路線上有所建樹,共同提高,在實現個人人生價值的同時,也自然而然的推動了軟件測試行業的發展;行業發展了,測試人員不再被忽視了,待遇自然也提高了,也就不會有很多朋友迷茫的跟我說“我的日常工作只是點擊按鈕和按鍵盤”了,因為我們相信行業的不斷成熟,會逐漸將軟件測試職業細化,我們的從業者就可以真正的在如下的管理路線和技術路線找到自己的位置,并潛心走向深入的!

          軟件測試,是技術主導的職業;不管選擇哪條發展路線,都是需要一定的技術沉淀,只是相對來說,管理路線對技術方面要求不高而已。那么我們就先挑重頭的技術路線展開討論。一般來說,一個普通的測試工程師剛入行,3個月左右熟悉企業的工作流程和模式,那么今后的工作內容趨于平穩。然而社會是殘酷的!如果單單停留在測試工程師的階段,若干年后,相信你再也競爭不過那個時候的應屆畢業生,當你的工作技能和職業素質趨于與那些朝氣蓬勃的年輕人相當時,企業會毫不留情的選擇他們,而release你,因為你的成本消耗要比他們高,這是大實話!然而現實又是公平的!因為軟件開發技術的不斷日新月異,軟件功能需求的不斷豐富多樣,決定軟件開發這一系統工程的錯綜復雜,因此為了保證軟件的質量,就要提高測試的水平,這也就為軟件測試職業的細化起到先決因素,也是目前社會上出現招聘專項測試工程師的必然趨勢!因此,這個趨勢給了我們這些常規測試工程師一個空前的好機會!所謂“以毒攻毒”,軟件開發靠的是技術,為了測試軟件,也必須用技術;那么我們就來看一下從技術路線,軟件測試職業發展有哪些方向。

          技術路線,筆者結合國內外軟件測試行業現狀,劃分為三個半方向,分別是自動化測試工程師、白盒測試工程師、性能測試工程師和認證測試工程師,在“雙V模型”中右側體現;前三者適用于通用軟件測試領域,認證測試工程師乃嵌入式測試領域職位,至少目前僅出現在嵌入式領域,因此以虛線標記,即“三個半”的“半”。前三條路線對技術的要求程度逐漸增加,三條曲線的斜率也依次遞增(認證工程師不參與比較)。

          自動化測試工程師,筆者為其定義在功能測試范疇,指通常所說的依靠自動化測試工具進行軟件黑盒測試的工程師。筆者接觸的很多測試界朋友,尤其年輕的剛入行者,對測試工具充滿了無限的興趣,他們喜歡那種編寫腳本、調試成功后的快感,喜歡看到自定義的日志里記錄了本來手工測試煩瑣的無聊頭頂的工作、而采用自動化方式實現后如此清晰豐富的內容后的興奮!可以理解,因為筆者也是從那段時光走過來的,現在也負責于我們學員的自動化測試教學工作。從大環境講,自動化測試是軟件測試執行階段的必然趨勢,社會對于軟件測試的認可度以及對自動化測試人才的需求必將日益增加,從目前國內做自動化測試的從業者薪資情況看,也普遍高于常規測試工程師,最淺顯的道理是“自動化測試比手工測試有了技術含量,^--^”雖然自動化測試在整個行業的普及不是一朝一夕,但是從個人角度講,自動化測試可以作為個人的發展方向之一,因為如果你率先掌握了這種技術,等到社會需要時,你已成為這個職位的成熟操作者!而國內的51testing把握了時代前沿,與自動化測試工具巨頭廠商Mercury(美科利)合作,在中國唯一推出Mercury自動化測試全套技能認證(CPE/SP/CPC),相比其它初等認證,它的實效性和價值性更具意義,也為測試從業者提供了一個進入自動化測試領域的快捷方式!

          白盒測試工程師,筆者定位于在軟件測試周期的單元測試階段對軟件進行的代碼級測試的人,包括代碼走讀、代碼功能與邏輯測試、代碼內存泄漏檢查、代碼運行效率檢查、代碼測試覆蓋率分析等。如果說,自動化測試只是依靠腳本語言完成測試腳本編寫與調試的過程(因為自動化測試工程師的工作重點不在編寫腳本),對于自動化測試工程師的技術要求要相對偏低的話,那么白盒測試工程師就要對大型程序開發語言的完全掌握,因此其技術要求相對偏高!而另一方面,白盒測試在目前國內軟件行情下,一些公司根本不做,其成本高、代價大的特點決定了這個現狀,而一些對軟件質量要求非常高(如軍事類、電信類、財務金融類等)的企業,也會調動開發工程師來實施此事。但是,還是那句話,測試行業在發展,測試人員能力在提升,軟件的開發技術在復雜化,要對軟件進行盡可能全面的測試,白盒測試不可忽視!當下專門高薪招聘白盒測試工程師的企業也比比皆是,從中我們可以感知,白盒測試工程師會是很多有開發背景、意欲進入測試行業的良好突破口,白盒測試人員的需求也會逐漸增加。

          性能測試工程師,即在系統測試階段、功能測試后對軟件系統性能指標進行采集分析和運行效率檢測的人。筆者認為,在一個盡量壓縮的測試流程里,功能測試可以手工進行,白盒測試可以不做,但是性能測試必須要做,除非該軟件非網絡類軟件即單機版軟件!這里筆者再提一個觀點供大家參考:軟件測試,從宏觀上可以劃分為三個大方面:功能測試、性能測試、安全性測試,功能測試說明軟件做對了,功能測試+性能測試說明軟件做好了,三者結合起來說明軟件做的非常好!安全測試暫且拋之不提,這是下一個發展域的內容,但是為了把軟件做好,為了真正保證軟件的質量,性能測試絕不容忽視;只因目前很多企業由于時間、成本、人力條件的限制,暫且不做性能測試。性能測試工程師相對來說,是三個技術路線里技術要求最高的,因為軟件的性能瓶頸歸根結底落實到代碼的運行效率這個問題上,因此性能測試要做好,性能測試工程師起碼要懂開發;而為了發現性能問題,要懂軟件開發架構;為了定位性能問題,要懂操作系統、網絡協議、應用服務器乃至數據庫的原理與使用;為了最終解決性能問題,要根據定位的問題有針對性的對代碼、操作系統、網絡架構、服務器、數據庫進行優化!當然性能測試是一個系統工程師,絕對不是一兩個人的事情,對于常規性能測試工程師,具備定位性能問題的能力即可。正因為性能測試工程師技術要求的高超,該職位的待遇也是目前測試技術路線最高薪的一個,實為綜合技術能力較強的測試人員的明智選擇!

          上述四職業路線由于其技術程度的突出,一般在企業里由測試經理直接所屬,與測試主管級別具有相同的待遇,并處于相同發展域。

        欄目推薦
        最新推薦