軟體測試工程師[] / []

職業心智圖
軟體測試工程師_職業心智圖

軟體測試工程師 (半導體|IC設計|軟體開發部)  SQA Engineer,正式的名稱應該是軟體品質保證工程師。該職務主要是幫助開發人員找出程式碼的盲點,擬定測試策略與測試排程,及早發現問題,維護軟體的品質。從unit testing逐步到system testing,SQA工程師必須確保自己的驗證工作能涵蓋到全域,不讓bug有逃脫的空間。

雖處在軟體開發環節中的末端,但仍須具備對專案全局掌握的能力,除去基本的自動化測試外,舉凡測試時程的管控、測試環境的建置、品質文件的撰寫、錯誤報告的產出與追蹤、或是客訴的處理。在這整個過程中,業務往往略顯繁雜,也會有不少paper work,因此最好具備謹慎與耐心的特質,才能有效統合,完成好自己份內的工作。

IC設計公司為了搭配販售的IC,必須提供IC驅動程式,像軟體一樣安裝在作業系統之上。所以,也必須配置SQA工程師。

職場

年度工作目標
   藍色   軟體驗證測試(50%)
紅色   建立軟體品質保證計畫(20%)
橘色   客戶支援(20%)
綠色   內部討論(10%)
日常工時分佈
   藍色   環境架設與bugs釐清(40%)
紅色   客戶支援(20%)
橘色   內部討論(20%)
綠色   工作文件撰寫(20%)

績效評核

軟體驗證測試(50%):軟體品質的維護、驗證測試、版本控制。若能早一步發現issue甚至root cause(問題發生的根本原因),協同相關人員修正可以讓專案更順利。衡量標準為發現問題與解決問題的能力。

建立軟體品質保證計畫(20%):用精確的文字呈現計畫,可以讓同仁有依循的標準,對測試流程有所掌握。衡量標準為文字敘述能力與英文能力。

客戶支援(20%):服務客戶時若中途遇到問題,要讓客戶充分理解delay的原因,並再度確認客戶需求。衡量標準為溝通技巧。

內部討論(10%):與內部相關部門的負責人員進行討論,確認驗證的範圍。衡量標準為情緒管控、快速理解問題能力。

工作內容

客戶支援(20%):客戶email回覆,並與客戶討論issue狀況以及發生時的作業環境與操作情況,協助其釐清問題或是商借機器事宜。

內部討論(20%):與RD、UI討論具體規格,了解想要呈現的樣子或是欲完成的目標,並決定驗證範圍、時間掌控與人力配置。

工作文件撰寫(20%):test Plan、test Case、issue report等工作文件的撰寫,bugs的追蹤與紀錄。

環境架設與bugs釐清(40%):自動化測試、人工測試、實驗環境機器架設、bugs的釐清。因為有時不見得會是程式的問題,也有可能是使用的作業系統太新而第三方廠商還未推出patch修補,必須依情況釐清問題發生的原因。

崗位關係

上級:在小公司裡的直接主管可能是軟體部門經理,至於大公司職稱結構較多的,可能是測試主任或Leader。主管會安排下屬在測試任務中的主要區塊,SQA工程師必須將測試結果直接彙報給主管,主管才能進一步評估測試在專案中需要佔據的時程。

同儕:舉凡軟體介面的UI部門,程式開發的RD部門,負責電路的HW部門皆是SQA常常接觸的單位,因為不知道下一個問題要出在哪裡,確認問題後也必須要協助這些部門複製問題,重現issue發生時情況,並請相關人員做出相應的更新。軟體的部分會由各部門匯聚成一包package,確認各部門的code都有進去後,SQA工程師才開始展開驗證工作。

部屬:若有新進人員,通常由資深的軟體測試工程師帶領認識其他同仁,也會先給予工作文件請新人研讀,幫助他盡快步上軌道,適應工作環境,公司端也會安排教育訓練。若有專案性的需求,也可能另外聘請臨時性的助理工程師來協助SQA工程師。

任職要求

教育程度/經驗

  • 學歷:一般而言,以專科或大學資訊工程、資訊管理相關科系畢業為主。因為在學時對相關軟體已經稍有接觸,也較具備邏輯概念,能取代人工測試的部份就讓程式來代勞,可為日後工作節省下許多時間。非相關科系亦可,前提是對SQA已經有所了解。
  • 經驗:1年左右經驗即可。若是剛畢業的新鮮人,在學時有擅長的資訊學科,例如熟悉作業系統、資料結構等等。

特別知識和技能

  • 溝通技巧:會直接對RD,或是HW AE。在部分公司,有可能也會直接面對客戶,還是免不了人際關係的部分,因此有效率的溝通十分重要。
  • 程式語言:C或C#,熟悉一些Script腳本語言可以避免會耗掉大量時間的routine job,像是需要反覆開機100次之類的issue。
  • 工具應用能力:有時拿到的code是基於新需求而開發,由於處在實驗的階段,也許埋了許多bugs,SQA工程師還是必須驗證它的相容性。熟悉像是微軟Visual Studio、Ghost備份技巧或建置VMware虛擬化運算環境,都能有效幫助快速切換不同的作業系統來完成測試。

工時薪水

薪資成長:依公司規模與薪資政策,多數情況新人軟體測試工程師起薪約在3萬至4萬元不等。隨著經歷的累積,若能逐步凸顯自己在公司的價值,4到5年資歷待遇在6萬以上並非難事。

工作機會:資深的軟體測試工程師有機會可以晉升為QA Leader、測試經理。若很熟悉軟體開發的流程,也可以轉型當PM,或對code已經很上手,亦可以轉RD,甚至是業界中的sales,當然,自己要能夠熟悉自家與競爭廠商的產品。

討論區[前往論壇]