แชร์ประสบการณ์สัมภาษณ์งานที่ Thoughtworks
วันนี้จะมาแชร์ประสบการณ์สัมภาษณ์งานตำแหน่ง Senior/Lead Software Developer ที่ Thougthworks กันค่ะ
ก่อนอื่นขอเล่า Background เกี่ยวกับตัวเองนิดนึง
เราเป็น developer มาประมาณสิบปีแล้วและทำงานบริษัทต่างชาติมาตลอด ก่อนที่จะเริ่มหางานรอบนี้ เราเป็น Software Engineer Team Lead มาได้ประมาณ 2 ปีและเริ่มรู้สึกนิ่งๆ เลยคิดว่าจะเปิดโอกาสหางานใหม่ดู
จริงๆเล็ง Thougthworks ไว้ตั้งแต่ช่วงกลางปี 2020 แล้ว แต่ตอนนั้นเขายังไม่เปิดรับและเพิ่งมาเปิดช่วงปลายปีพอดี จัดเลยสิ…โอกาสทำงานบริษัทในฝันมาแล้วววว✨
เหตุผลที่สนใจงานที่ Thougthworks หลักๆเลยคือวัฒนธรรมขององค์กรที่เน้น Learn&Share ซึ่งเห็นได้จากการที่ Thougthworks มี event แชร์นู่นนี่นั่นที่น่าสนใจบ่อยๆ ทำให้รู้สึกว่าบริษัทนี้ให้คุณค่ากับการศึกษาหาความรู้ใหม่ๆเพื่อพัฒนาศักยภาพของบุคคลากรและแบ่งปันความรู้ให้สังคมมากๆ
เอาหล่ะ..จัดแจงอัพเดทเรซูเม่เรียบร้อยแล้ว ก็เริ่มต้นการพิชิตงานในฝันกันเลย ✌️
ในที่นี้เราจะเล่าประสบการณ์ของเราตั้งแต่ช่วง pre-interview, interview และ post-interview เลยนะคะ จะได้เห็นภาพรวมตั้งแต่ต้นจนจบเลย
Pre-interview
1. ส่งใบสมัคร
เราสมัครผ่านการ refer ของคนรู้จักที่ทำงานใน Thougthworks พี่บอกว่ามีระบบให้พนักงานกรอกข้อมูลข้อมูลแล้วก็อัพโหลดเรซูเม่เข้าไป แล้ว Recruiter จะพิจารณาและติดต่อเรากลับมาเองค่ะ 👍
แนะนำว่าไม่ต้องใส่รูปและอายุหรือวันเดือนปีเกิดในเรซูเม่นะคะ เพราะ Thougthworks เชื่อว่าสิ่งเหล่านั้นไม่มีผลต่อการพิจารณาเข้าทำงานและอยากลดการเกิด bias ค่ะ
ที่ Thougthworks เน้นเรื่องความเท่าเทียมและต่อต้าน bias ต่อเพศสภาพ, เชื้อชาติ, ศาสนา, อายุ, รูปลักษณ์ หรือความพิการ ฯลฯ มาก ๆ ค่ะ
2. คุยกับ Recruiter
ผ่านไปประมาณหนึ่งสัปดาห์ ก็ได้เมลจากคุณยศว่าจะขอนัดคุยเพื่อทำความรู้จักและอธิบายเกี่ยวกับกระบวนการสัมภาษณ์ โดยให้เราเลือกว่าเราสะดวกเป็นโทรคุยหรือใช้ Zoom และเลือกเวลาจาก slot เวลาว่างของคุณยศที่ให้มา
ถึงเวลานัดคุณยศก็โทรมาเล่าถึงการทำงานของ Thougthworks ว่าเป็นอย่างไร มีสาขาที่ไหนบ้าง ลักษณะการทำงานและวัฒนธรรมองค์กรเป็นอย่างไร แนวโน้มอนาคตการทำงานที่นี่จะเป็นอย่างไร คิดว่าเหมาะกับสไตล์เราไหม ใช่สิ่งที่เรามองหาอยู่หรือเปล่า ฯลฯ อะไรประมาณนี้ คือแทบจะไม่มีคำถามที่เราพบได้ทั่วไป เช่น แนะนำตัวหน่อยว่าทำอะไรมา? ทำไมถึงอยากออกจากงานปัจจุบัน? ซึ่งแปลกมาก เป็นครั้งแรกในชีวิตเลยที่คุยกับ Recruiter ในลักษณะนี้
ถามว่ามันดีมั้ย?..ดีนะ มันทำให้รู้ว่าเขาอ่านเรซูเม่เรามาแล้วจริงๆดังนั้นข้อมูลพวกนั้นไม่จำเป็นต้องอธิบายอีก และเน้นการทำความรู้จักกันมากขึ้นมากกว่า ว่าทำไมเราถึงสนใจอยากร่วมงานกับเขา เรากำลังมองหาอะไร บริษัทกำลังมองหาอะไร และความต้องการเราตรงกันมั้ย พอได้คุยแล้วก็ทำให้เห็นภาพชัดขึ้นว่าถ้าเราเข้าไปทำงานที่นี่จะเป็นอย่างไร
จากนั้นคุณยศก็อธิบายเกี่ยวกับ Interview Process ซึ่งจะมี 3 รอบ ได้แก่
- Pair Programming
เป็นการสัมภาษณ์แบบจำลองการทำ pair programming กับผู้สัมภาษณ์เพื่อให้เห็นลักษณะการทำงานของเราจริงๆ - Technical Interview
ให้ออกแบบระบบตามโจทย์ โดยเน้น Domain Driven Design คุณยศบอกว่า รอบนี้ยากสุด - Cultural Alignment Interview
คุณยศบอกว่ารอบนี้ง่ายสุด น้อยมากที่จะไม่ผ่านรอบนี้กัน แต่ก็เคยมีสำหรับคนที่เขาอาจจะรู้สึกเป็นกันเองมากไปจนเผลอแสดงทัศนะคติที่ไม่ค่อยโอเค
ปกติ รอบที่ 2 และ 3 จะเป็น Onsite Interview แต่เนื่องจากสถาณการณ์ Covid-19 ก็เลยเป็น Online Interview ทั้งหมด
ปิดท้ายด้วยการคุยเรื่อง expected salary และ notice period ฯลฯ ซึ่งทั้งหมดใช้เวลาคุยกับประมาณ 30 นาทีได้
Interview
มาถึงการสัมภาษณ์จริงๆกันแล้ว ตามที่คุณยศบอกเลย คือมี 3 รอบ โดยการนัดวันเวลาสัมภาษณ์ เขาจะให้เราเลือกจาก slot เวลาที่มีให้เหมือนเดิม เราแนะนำว่าให้เลือกทุกช่วงเวลาที่เราว่างไปเลยเพื่อให้คนจัดตารางสัมภาษณ์มีตัวเลือกเยอะขึ้นและช่วยให้เราได้สัมภาษณ์เร็วเพราะหาวันว่างตรงกันได้ง่ายขึ้น
1. Pair Programing Interview
ก่อนถึงวันสัมภาษณ์ทาง Thougthworks จะให้เราเลือกภาษาที่เราถนัดและส่งโคัดมาให้เราทำความเข้าใจก่อน ส่วนตอนสัมภาษณ์ก็จะเป็นการจำลองว่าเรากำลังจะหยิบงานชิ้นหนึ่งขึ้นมาทำต่อบนโค้ดที่ให้มา โดย pair programming กับผู้สัมภาษณ์ค่ะ
รอบนี้เน้นดูลักษณะงานทำงานของเราจริงๆว่าเป็นอย่างไร ไม่ได้เน้นว่างานชิ้นนั้นต้องเสร็จสมบูรณ์ ดังนั้นเราควรจะแสดงให้ผู้สัมภาษณ์เห็นถึงทักษะการทำงานที่ดีของเรา เช่น การวิเคราะห์และแก้ไขปัญหา, การใช้ TDD, การ refactor code ที่ไม่ถูกต้องตาม best practices เป็นต้น และที่สำคัญที่สุดคือเราต้องสื่อสารส่ิงที่เราคิดให้ผู้สัมภาษณ์ฟังตลอด
คำแนะนำของเราสำหรับรอบนี้คือ
ให้ทำความเข้าใจโค้ดอย่างดีที่สุด เพราะจะช่วยให้อ่านโจทย์แล้วคิดวิธีแก้ปัญหาได้เร็วขึ้น และให้ลองคิดว่าถ้านั่นเป็นโค้ดของเราจริงๆ เราจะปรับปรุงให้ดีขึ้นได้อย่างไรบ้าง
สำหรับใครที่ไม่มีประสบการณ์การทำ TDD มาก่อน ก็ให้ฝึกเพิ่มสักหน่อยเพื่อที่จะได้ไม่ขลุกขลักในตอนทำจริงค่ะ
2. Technical Interview
รอบนี้จะวัดความสามารถในการออกแบบระบบ รวมทั้งความรู้ทางเทคนิคทั้งเชิงลึกและเชิงกว้างของเรา
โดยเริ่มต้นผู้สัมภาษณ์จะให้เราเล่าถึงงานที่เคยทำมา และชวนคุยลงลึกในบางประเด็น เช่น ตอนนั้นเราเจอปัญหาอะไรบ้าง เราแก้ปัญหาอย่างไร ทำไมเราถึงเลือกวิธีหรือเครื่องมือนั้น ฯลฯ
จากนั้นก็จะให้ลองออกแบบระบบตามโจทย์ เราก็ออกแบบและนำเสนอแนวคิดของเราไป ถ้ามีจุดไหนที่เราไม่รู้หรือผู้สัมภาษณ์ไม่รู้ก็แลกเปลี่ยนความคิดกันได้ เหมือนเป็นการ discuss กันในห้องประชุมเพื่อให้ได้ Software และ System ที่ดีและเหมาะสมที่สุดมากกว่า
คำแนะนำของเราสำหรับรอบนี้คือ
เน้นอ่านเรื่อง Domain Modelling และฝึกคิดโดยสมมุติว่าเรากำลังจะทำระบบหนึ่ง เราจะออกแบบอย่างไรให้ดีและเหมาะสมที่สุด และแน่นอนว่าเราต้องรู้ว่าคุณลักษณะของระบบที่ดีคืออะไรบ้าง นอกจากนั้นก็ควรเตรียมข้อมูลเกี่ยวกับ project เก่าๆของเราที่น่าสนใจเอาไว้ด้วย
3. Cultural Alignment Interview
คำถามส่วนใหญ่เป็นคำถามที่ไม่มีคำตอบถูกผิด เราแค่แชร์สิ่งที่เราคิด เหมือนเป็นการพูดคุยแชร์แนวคิดกันมากกว่า ตัวอย่างคำถามก็เช่น เมื่อเราต้องเรียนรู้บางสิ่งอย่างรวดเร็วเราทำอย่างไร เราจะนำเทคโนโลยีมาช่วยแก้ไขปัญหาหรือพัฒนาสังคมได้อย่างไร ถ้าคุณรู้สึกว่าทีมกดดันมากเกินไปคุณจะทำอย่างไร ฯลฯ
Post Interview
เย้‼️ ในที่สุดเราก็ผ่านการสัมภาษณ์ทั้ง 3 รอบแล้ววว 🥳 🎊 🎉
ต่อไปก็เป็นขั้นตอน Job Offer แล้วค่ะ
Job Offer
ขั้นตอนนี้ก็ไม่แตกต่างจากที่อื่นมาก คือเป็นการพูดคุยกับ recuiter เกี่ยวกับความรู้สึกที่มีต่อกระบวนการสัมภาษณ์ทั้งหมด และตกลงเรื่องเงินเดือนและวันเริ่มงานกัน
ที่นี่เสนอ package ที่(สำหรับเรา)ถือว่าดีมากระดับต้นๆของบริษัท tech ในไทยที่เรารู้จักเลย และนอกจากนั้นที่น่าสนใจก็มี
🤩 กองทุนสำรองเลี้ยงชีพ 8% 🌟 (เพิ่มเป็น 10% และ 15% เมื่อครบ 3 และ 5 ปี)
🤩 Development Budget 40,000฿ ต่อปี ซึ่งเราสามารถเอาไปใช้ในการสมัครคอร์สเรียน, ซื้อหนังสือ หรือสอบ certificate ก็ได้
🤩 ประกันภัยกลุ่มที่ครอบคลุมครอบครัว แบบ OPD ครั้งละ 3,000฿ , IPD วันละ 3,000฿ (ล่าสุดเพิ่มเป็น 4,000 แล้ว), ทำฟัน ปีละ 5,000฿
🤩 MacBook Pro + Accessories Budget 6,000฿
🤩 Unlimited Free Udemy Courses
สรุปความประทับใจ
✅ เรารู้สึกประทับใจในทุก stages ของการสัมภาษณ์เลย มันแตกต่างและมีมาตรฐาน วัดผลจากการทำงานให้เห็นจริงๆ
✅ มีระบบการนัดสัมภาษณ์ที่ดี
✅ Recruiter คอยให้คำแนะนำที่เป็นประโยชน์และส่ง guidline มาให้อ่านเยอะมาก ถึงแม้มันจะไม่ได้เป็นจุดที่เอามาเป็นคำถามในการสัมภาษณ์ตรงๆ แต่ก็ช่วยให้เรามีความรู้เกี่ยวกับ technology, technique, practices ที่ Thoughtworks ใช้ รวมทั้งวัฒนธรรมองค์กรและความสามารถที่ทีมกำลังมองหาอยู่ได้
✅ กระบวนการสัมภาษณ์ไวมากกกก เรารู้ผลในวันเดียวทั้งสามรอบเลย 👍 รวมตั้งแต่ส่งใบสมัครจนถึงเซ็นสัญญาใช้เวลาประมาณเดือนนิดๆเอง
✅ มี feedback จากผู้สัมภาษณ์ทุกครั้งทำให้เรารู้ว่าจุดไหนทำดีแล้วและจุดไหนยังพัฒนาได้
✅ เขียนภาษาอะไรมาไม่สำคัญ ขอแค่แสดงให้เห็นว่าคุณเขียนมันได้ดี มีคุณภาพและถูกต้องตาม best practices
✅ Hard Skill ก็เน้น Soft Skill ก็ต้องได้ และ Mind Set ก็สำคัญ
✅ Competitive Package 💵💰
เป็นไงบ้างคะกับประสบการณ์ตั้งแต่ต้นจนจบแบบละเอียดเลย หวังว่าทุกคนจะได้ประโยชน์ไม่มากก็น้อยนะคะ
ถ้าใครอ่านมาถึงตรงนี้แล้วสนใจอยากมาร่วมงานกับ Thoughtworks ช่วงนี้เรากำลังมองหา Developer และ QA จำนวนมาก หลังไมค์มาคุยกันได้นะคะ หรืออาจจะเข้าไปดูข้อมูลเพิ่มเติมได้ที่ https://www.thoughtworks.com/careers/jobs