นักพัฒนาในการทดสอบคืออะไร? [ปิด]


14

เมื่อเร็ว ๆ นี้ฉันได้พูดคุยกับนายหน้าที่ต้องการให้ฉันเป็น บริษัท ในตำแหน่ง Developer in Test เขาทำให้มันฟังดูเหมือนเป็นตำแหน่งที่คุณคุ้นเคยกับเทคนิคการเขียนโปรแกรมใหม่และทดสอบข้อบกพร่องและปรับปรุงซอฟต์แวร์ แต่คุณไม่ต้องกังวลเกี่ยวกับกำหนดเวลามาตรฐาน คุณมีความคิดสร้างสรรค์ในงานของคุณ

แต่คำอธิบายนั้นยังคงคลุมเครือสำหรับฉัน ฉันเป็น Web Developer มาหลายปีแล้วส่วนใหญ่ทำงานใน PHP ดังนั้นฉันอยากรู้ว่าคนอื่น ๆ ในชุมชนรู้เพิ่มเติมเกี่ยวกับตำแหน่งเหล่านี้โดยทั่วไปหรือไม่

ฉันรู้ว่านี่อาจไม่เหมาะสมสำหรับฟอรัมนี้ แต่มันเป็นแบบที่ดีที่สุดที่ฉันสามารถหาได้ใน Stack Exchange และฉันจะขอบคุณถ้ามันไม่ได้ปิดเพราะไม่มีที่อื่นที่นี่เพื่อถามเกี่ยวกับมัน .

ฉันลองใช้ Google แล้ว แต่มีข้อมูลไม่มากนัก นักพัฒนาในการทดสอบคืออะไร?


ฉันมักจะได้ยินสิ่งนี้เรียกว่า "skunkworks" ถ้าช่วยได้
Adrian

คุณแน่ใจหรือว่าเขาไม่ได้หมายถึง 'การทดสอบ' ไม่เคยได้ยินคำว่า 'นักพัฒนาในการทดสอบ' มันเป็นนายหน้าได้เพียงแค่คำศัพท์ของเขาผิดหรือเปล่า? จะไม่เป็นครั้งแรก
GrandmasterB

ฉันไม่เคยได้ยินมาก่อนเลยดังนั้นฉันจึงขอให้เขาหลายต่อหลายครั้งเพื่อให้แน่ใจ ฉันจะพูดกับ บริษัท เกี่ยวกับความหมายของพวกเขาในไม่ช้า ฉันแค่อยากให้หัวเป็นแบบนี้ ฟังดูเหมือนจะเป็นหลาย ๆ อย่างที่ฉันเคยได้ยินมา
แพทริค

1
ฉันแน่ใจว่าเป็นชื่อที่ผู้สรรหามีไว้สำหรับการเปิด .. ความสงสัยของฉันคือเขาเพิ่งไม่รู้พอที่จะรู้ว่ามันอาจจะไม่ใช่ตำแหน่งงานที่ถูกต้อง หรืออาจเป็นได้ว่า บริษัท นั้นอ้างถึงชื่อเรื่องใดเพราะพวกเขาขี้เกียจเกินกว่าที่จะเพิ่มตอนจบ
GrandmasterB

2
คำตอบทั้งสามด้านล่างค่อนข้างจะสรุป นักพัฒนาในการทดสอบเป็นวิศวกร QA ที่มีทักษะการพัฒนาดังนั้นเขาจะคาดว่าจะเขียนการทดสอบอัตโนมัติมากกว่าทำการทดสอบด้วยตนเอง
Michael Brown

คำตอบ:


27

ฉันเป็นวิศวกรพัฒนาซอฟต์แวร์ในการทดสอบและอยู่ที่ 2 บริษัท แยกกัน ปัจจุบันฉันทำงานให้กับ Microsoft

พูดอย่างกว้าง ๆ Bryan Oakley ถูกต้อง: คุณเขียนซอฟต์แวร์ที่ทดสอบซอฟต์แวร์

ยิ่งไปกว่านั้นขึ้นอยู่กับระดับประสบการณ์ขอบเขตความรับผิดชอบของคุณและประเภทของซอฟต์แวร์ที่นายจ้างจะผลิต ตำแหน่ง SDET สามารถรวมถึงการเขียนอะไรก็ได้ตั้งแต่พื้นฐานของการทดสอบการตรวจสอบระดับคุณสมบัติไปจนถึงการเขียนและการบำรุงรักษาโครงสร้างพื้นฐานการทดสอบเพื่อใช้การทดสอบเหล่านั้น มันไม่ใช่เรื่องแปลกที่จะมี SDETS ที่เชี่ยวชาญในการทดสอบแบบเจาะจงสำหรับความต้องการบางประเภท (การทดสอบความปลอดภัยประสิทธิภาพ / มาตราส่วนการใช้งานและอื่น ๆ เป็นตัวอย่างที่เกิดขึ้นทันทีในใจ)

คำอธิบายที่คุณได้รับจากผู้สรรหาดูเหมือนว่าเทคนิคการขายที่ไม่ดี

  • คุณไม่ได้เล่นซอ คุณมีเวลาnวันในการรับความคุ้มครองการทดสอบอัตโนมัติผ่านคุณสมบัติx ที่ใช้งานในสภาพแวดล้อมที่รองรับyในภาษาz ที่แตกต่างกัน
  • โอ้ btw: การทดสอบเหล่านั้นต้องทำงานเร็วพอสำหรับผู้ที่มีรอบ dev / test ที่รวดเร็วเพราะ ...
  • ไม่มีกำหนดส่งมาตรฐาน คุณรับผิดชอบด้านคุณภาพของผลิตภัณฑ์และกำหนดวันวางจำหน่ายโดยการตลาดเมื่อ 6 เดือนที่แล้ว ทีมงานพัฒนาล่าช้ามา 6 สัปดาห์ส่งมอบงานสร้างที่มีความเสถียรให้กับทีมทดสอบของคุณและ บริษัท ไม่ได้ผลักดันวันที่วางจำหน่ายนั้น (อีกครั้ง) ผลิตภัณฑ์หรือบริการมีความเสถียรพอที่จะปล่อยให้คนสองล้าน (พันล้านคน) ในวันเดียวกันหรือไม่?
  • ... และถ้า ( เมื่อ ) ลูกค้าโทรเข้ามาด้วยปัญหา ... "ทำไม (นรก) คุณถึงไม่จับมันก่อน"

ฉันหวังว่าจะเป็นตัวอย่างของการเป็น SDET ให้คุณ


เสียงเหมือนนักพัฒนาและผู้ควบคุมคุณภาพได้รับความเสียหายในเวลาเดียวกันกับที่ฉันเป็นอยู่ตอนนี้ แต่ฉันขอขอบคุณคำอธิบายที่ชัดเจนยิ่งขึ้น
แพทริค

1
@ pthurmond: มันมักจะเป็นประสบการณ์ที่คุ้มค่าโดยเฉพาะอย่างยิ่งหาก บริษัท มีความจริงจังในเรื่องคุณภาพ ไม่ใช่เรื่องแปลกที่ SDET จะเขียนโค้ดมากกว่า dev แต่มันก็ขึ้นอยู่กับขั้นตอนของโครงการ การทดสอบด้วยตนเองจะไม่หายไป 100% จากกระบวนการ
Steven Evers

ตกลงดังนั้นฉันจึงพูดคุยกับ บริษัท และพวกเขาอธิบายว่ามันเป็นตำแหน่งใหม่ที่ไม่ได้กำหนดไว้อย่างสมบูรณ์ แต่โดยพื้นฐานแล้วมันเป็นบุคคลที่ควบคุมคุณภาพซึ่งเขียนโค้ดและการทดสอบอัตโนมัติที่ออกแบบมาเพื่อทำลายรหัสของผู้พัฒนารายอื่น ฟังดูน่าสนใจ.
แพทริค

1
ว้าวฉันดีใจที่ฉันไม่ได้ตำแหน่ง SDET ดูเหมือนทุกสิ่งที่ฉันเกลียดเกี่ยวกับการพัฒนาซอฟต์แวร์
ldog

8

"นักพัฒนาในการทดสอบ" มักจะหมายความว่าคุณอยู่ในแผนก QA หรือในบทบาท QA แต่จุดเน้นคือการเขียนการทดสอบอัตโนมัติมากกว่าการสร้างและดำเนินการกรณีทดสอบด้วยตนเอง สิ่งที่มันเขียนซอฟต์แวร์เพื่อทดสอบซอฟต์แวร์ มันอาจเป็นทางเลือกอาชีพที่ท้าทายอย่างยิ่งเพราะใช้ทั้งทักษะการเขียนโปรแกรมและความเข้าใจที่ดีของการทดสอบซอฟต์แวร์

อย่างไรก็ตามชื่อที่แตกต่างหมายถึงสิ่งต่าง ๆ สำหรับ บริษัท ต่าง ๆ ดังนั้นคำตอบที่ชัดเจนต้องมาจากนายหน้า


อืมคนส่วนใหญ่ของ QA ที่ฉันรู้ว่าไม่พัฒนาเลย บางทีนั่นอาจเป็นสิ่งที่แตกต่าง
แพทริค

2
@pthurmond: ถูกต้อง: ผู้คนจำนวนมากใน QA ไม่ได้ทำการพัฒนาซอฟต์แวร์ใด ๆ บทบาทของนักพัฒนาในการทดสอบเรียกว่าวิศวกรซอฟต์แวร์ในการทดสอบเป็นสาขาที่ค่อนข้างใหม่
Bryan Oakley

1
ผู้คนใน QA ที่ฉันทำงานพัฒนาอยู่ สคริปต์ส่วนใหญ่ที่สามารถเรียกใช้การถดถอยกับรีลีส
Rig

1

บทบาทของ SDET นั้นเป็นสิ่งที่คุณสร้างขึ้นมาดังที่เห็นได้จากชื่อต่าง ๆ ทั้งหมด: QA / Developer, QA Engineer, Developer Developer ชื่อปัจจุบันของฉันคือ Test Engineer จริง ๆ ซึ่งฉันไม่เคยได้ยินชื่อนี้มาก่อนจะรับงานนี้ โดยไม่คำนึงถึงชื่อเฉพาะมันเป็นตำแหน่งใหม่ใน บริษัท ส่วนใหญ่ดังนั้นความคาดหวังอาจหลวม "ช่วยเราทำการทดสอบอัตโนมัติและอื่น ๆ ... " เนื้อหาอาจรวมถึงเครื่องมือ CI, การทดสอบ API, บริการคลาวด์, การรวมเข้ากับระบบภายใน ฯลฯ

อีกแง่มุมของงานที่ฉันไม่เห็นในหัวข้อนี้คือการปรับปรุงกระบวนการ โดยทั่วไปแล้ว SDET ได้ทำ QA มาระยะหนึ่งแล้วโดยทั่วไปพวกเขามีเทคนิคมากกว่าทีม QA อื่น ๆ รวมถึงผู้จัดการของพวกเขาด้วย พวกเขารู้มากเกี่ยวกับระบบภายใต้การทดสอบกล่าวคือ "ศพถูกฝังอยู่" ด้วยเหตุผลเหล่านี้ SDET มีแนวโน้มที่จะรับฟังโดยฝ่ายบริหารและมีอิทธิพลอย่างมากต่อกระบวนการ - ไม่ใช่เพียงแค่กระบวนการทดสอบ แต่เป็นวิธีการสร้างผลิตภัณฑ์ ซึ่งอาจเจ๋งถ้าคุณเป็นอย่างนั้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.