Tags:
Node Thumbnail

พบกันทุกสุดสัปดาห์กับซีรีส์ "สัมภาษณ์คนไทยในซิลิคอนวัลเลย์" บทสัมภาษณ์ตอนที่หก เรามาคุยกับคุณสุนทร แซ่อึ่ง วิศวกรคนไทยในบริษัทอีคอมเมิร์ซรายใหญ่ eBay ที่จะมาเล่าประสบการณ์ด้าน automation testing, software quality engineering แบบลงลึก (มาก) น่าจะเป็นประโยชน์กับคนที่สนใจงานด้านนี้เป็นอย่างยิ่งครับ

No Description

ประวัติความเป็นมา แนะนำตัวแบบคร่าวๆ

ชื่อ สุนทร แซ่อึ่ง ครับ จบปริญญาตรีสาขาวิศวกรรมคอมพิวเตอร์จากมหาวิทยาลัยสงขลานครินทร์ ปริญญาโทบริหารธุรกิจจากมหาวิทยาลัยเทคโนโลยีมหานคร และ Master of Computer Science จาก San Jose State University ครับ มีเรียนเสริม Project Management ​ของ UC Berkeley Extension

ผมมีความสนใจหลายด้าน ช่วงเริ่มทำงานแรกๆ มีตำแหน่งเป็นอาจารย์และเทรนเนอร์ โฟกัสจึงเป็นเรื่องของการสอน มีความตั้งใจว่าอยากให้รุ่นน้องมีความอยากเรียนรู้ สามารถหาแหล่งข้อมูลในการเรียนรู้

ช่วงที่สองเป็นเรื่องของ system integration เกี่ยวกับการ design, implement, deploy, maintenance รวมไปถึง disaster recovery

ช่วงที่สามเป็นช่วงที่มาเรียน ก็สนใจด้าน distributed computing และช่วงสุดท้ายนับถึงปัจจุบัน เป็นเรื่องของ automation engineering ทางด้าน software quality เน้นไปที่ quality engineer โดยสร้าง automation test ด้วยภาษา Java เป็นหลักครับ

ประวัติการทำงานที่เมืองไทย

ผมได้ทุนพัฒนาอาจารย์จากมหาวิทยาลัยสงขลานครินทร์ เป็นทุนของภาควิชาที่เรียน พอจบเลยทำงานเป็นอาจารย์ที่นั่นเลย หลังจากนั้น 2 ปีย้ายไปทำงานเป็น Microsoft Certified Trainer ที่บริษัท Metro System ในกรุงเทพ งานช่วงแรกส่วนใหญ่เกี่ยวกับการสอนและแนะนำประสบการณ์การออกแบบระบบโดยประยุกต์ใช้ทฤษฎีตามตำรา

ผมเปลี่ยนงานค่อนข้างบ่อยเพราะต้องการความก้าวหน้าเร็วๆ ต่อมามีโอกาสทำงานกับบริษัทข้ามชาติ เช่น ExxonMobile (เอสโซ่) และ J.Walter Thomson (ปัจจุบันเปลี่ยนชื่อเป็น JWT) งานช่วงนี้เป็นงานด้าน IT System Administration ดูแลเกี่ยวกับระบบเซิร์ฟเวอร์ของบริษัท

มาอยู่ที่อเมริกาได้อย่างไร และมาทำงานกับ eBay ได้อย่างไร

ส่วนตัวพบว่าเราคนไทยเป็นผู้บริโภคทางด้านไอที เลยสงสัยว่าทำไมเราไม่สามารถผลิตซอฟต์แวร์และฮาร์ดแวร์ขึ้นใช้เองได้

ช่วงนั้นของชีวิต เริ่มถามตัวเองว่า "เราจะไปได้ไกลแค่ไหน" จึงเกิดความคิดอยากร่วมทำงานกับบริษัทระดับโลกที่สร้างนวัตกรรมที่เราใช้กัน และเริ่มวางแผนมาทำงานที่อเมริกา ทำงานใน Silicon Valley แหล่งกำเนิดของสิ่งประดิษฐ์ทางด้านคอมพิวเตอร์

ผมพบว่าการจะได้งานที่อเมริกา โดยใช้เพียงใบปริญญาจากเมืองไทยและประสบการณ์ที่ผมมีเป็นเรื่องยากมาก จึงวางแผนมาเรียนปริญญาโทที่อเมริกาก่อน และค่อยหางานที่อยากทำทีหลัง

ช่วงที่เรียน เริ่มเปลี่ยนความสนใจจากทางด้าน system admin มาเป็น programming เพราะตลาดทางด้านการเขียนโปรแกรมมีค่าตัวสูงกว่า บวกกับประเด็นว่าผมอยากเรียนรู้ในด้านที่ไม่เคยทำ เลยเลือก Java เป็นภาษาที่สองนอกจาก C

ช่วงนั้นเหมือนจังหวะชีวิตเปลี่ยน เพราะไปสนใจงาน automation test งานแรกที่ได้คือแอปเปิล ทำตำแหน่ง Quality Engineer โดยเขียน automation test ร่วมกับเอาต์ซอร์สจากอินเดีย แต่เนื่องจากตำแหน่งงานเป็นเอาต์ซอร์ส พอหมดสัญญาก็ต้องหางานใหม่ เลยมาได้งานที่ eBay และยังคงทำมาถึงปัจจุบัน

No Description

ทำไมถึงเลือกมาทำงานที่ eBay ครับ

ตอนเรียนที่ San Jose State University เทอมสุดท้ายก็เริ่มมองหางาน ผมเองไม่มีประสบการณ์ในอุตสาหกรรมซอฟต์แวร์มาก่อน การหางานแรกเลยยากมาก

ผมได้งานที่แอปเปิลเป็นที่แรก แต่ไม่ได้เป็นพนักงานเต็มเวลา พอหมดสัญญาจ้างเลยต้องหางานต่อ ผมสมัครและได้สัมภาษณ์ที่ Google กับ VMWare แต่ไม่ได้งาน เนื่องจากขาดประสบการณ์ด้านสัมภาษณ์งานที่อเมริกา แถมตอนนั้นไม่ได้มีเพื่อนคนไทยมากนัก เลยไม่รู้จะไปถามใคร

พอพลาดหลายๆ ครั้งก็เริ่มเรียนรู้และปรับตัวเรื่อยมา สุดท้ายมาได้งานที่ eBay ผมไม่มีตัวเลือกมากนักในตอนนั้น เพราะวีซ่าทำงานมีข้อจำกัดหลายอย่าง แต่มาถึงตอนนี้ ดีใจครับที่ได้ทำงานที่นี่ เนื่องจาก eBay เป็นบริษัทที่ดูแลพนักงานได้ดีเป็น Top 10 ของ Silicon Valley เลย

คนทั่วไปรู้จัก eBay ในฐานะบริษัทประมูล แต่จริงๆ eBay มีอะไรมากกว่านั้นเยอะ อยากให้แนะนำองค์กรหน่อย

จริงๆ แล้วรายได้หลักของ eBay มาจากการขายสินค้าที่เป็นของใหม่ บริษัทมีรายได้จากสินค้าประมูลเพียง 20-30% เท่านั้น

ถ้าพิจารณาสัดส่วนรายได้ของบริษัท ส่วนที่มากที่สุดมาจากระบบการจ่ายเงินผ่าน PayPal ที่เป็นคนกลางในการถือเงินระหว่างคนซื้อและคนขาย ส่วนที่สองมาจาก listing fee (ค่าลงประกาศขายสินค้า) และส่วนที่สามมาจากโฆษณา

ปัจจุบันวงการอีคอมเมิร์ซเปลี่ยนจากเดิมไปมาก ความท้าทายของ eBay คืออะไร

การเติบโตของการค้าออนไลน์ขึ้นอยู่กับปัจจัยหลักเรื่องความสะดวก ราคา และความน่าเชื่อถือของผู้ซื้อขาย

eBay ทำตัวเป็นชุมชนที่ผู้ขายมาพบเจอกับผู้ซื้อ โดยที่ eBay ไม่ลงไปแข่งขันขายกับผู้ขายเอง ข้อนี้ถือเป็นจุดขายสำคัญของบริษัท และต่างกับ Amazon ที่เป็นคู่แข่งรายใหญ่ที่สุดของบริษัท เนื่องจากบน Amazon มีสินค้าที่บริษัท Amazon ขายเอง ชนกับผู้ขายทั่วไป จนทำให้ผู้ขายบางคนใน Amazon บางรายถึงกับเลิกขาย และหันมาเปิดร้านบน eBay เท่านั้น

เมื่อ eBay ไม่ได้สร้างรายได้จากการขาย ความท้าทายของ eBay คงเป็นเรื่องการทำอย่างไรให้เติบโตไปได้เรื่อยๆ การมองหาโอกาสเพื่อให้เกิดการซื้อขายมากที่สุดถือเป็นเป้าหมายหลักของบริษัทในปีนี้

บริษัทมีไอเดียที่ว่าทุกคนย่อมมีของที่ไม่ได้ใช้ ซึ่งอาจอยู่ในห้องเก็บของ โรงรถ ตู้เสื้อผ้า การทำให้ผู้ซื้อกลายร่างเป็นผู้ขายถือเป็นโอกาสสร้างรายได้จากการขาย สิ่งที่ยากตรงนี้คือทำอย่างไรผู้ซื้อสามารถขายสินค้าได้ง่ายที่สุด

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

สรุปคือผู้ซื้อแค่ถ่ายรูปกับพิมพ์ลงไปในแอพว่าสินค้าคืออะไร ที่เหลือ eBay จัดการให้หมด ตลาด C2C (Customer to Customer) อันนี้เป็นกลุ่มเป้าหมายที่บริษัทประเมินมูลค่าไว้ไม่น้อย

อีกด้านหนึ่ง บริษัทพยายามช่วยจัดการระบบสินค้าคงคลังของผู้ขายรายใหญ่ (B2C: Business to Customer) ที่เปิดร้านบน eBay โดยช่วยให้ผู้ขายสามารถทำ data mining กับฐานข้อมูลการขายของผู้ขาย มีการวิเคราะห์ข้อมูลเรื่องของ trend, growth และ recommendations ตัวอย่างคือระบบจะวิเคราะห์แนวโน้มของสินค้า x ทั้งระบบ และแนะนำได้ว่า ถ้าลดราคาลง 5% ยอดขายจะเพิ่ม 8% ผู้ขายก็สามารถคำนวณกำไรสุทธิ และปรับราคาตามจำนวนสินค้าคงคลังเพื่อให้ได้กำไรสูงสุด

สำหรับผู้ขายรายใหญ่ บริษัทยังจะเพิ่มเครื่องมือช่วยจัดโปรโมชั่น ตัวอย่างเช่น สามารถจัดโปรโมชั่นให้ลด 10% ถ้าซื้อสินค้าจากผู้ขายคนเดียวกัน 3 ชิ้นขึ้นไป เป็นต้น

No Description

ถ่ายกับ John Danahoe อดีตซีอีโอของ eBay ก่อนแยกกิจการ PayPal (ปัจจุบันเป็นบอร์ด)

อยากให้อธิบายงานด้าน automation ของ eBay

eBay เป็นแพลตฟอร์มอีคอมเมิร์ซ ที่เปิดให้ผู้ขายนำเสนอสินค้าขึ้นบนเว็บและมือถือ ส่วนผู้ซื้อก็เข้ามาเลือกซื้อจากผู้ขายหลายๆ เจ้า โดยสามารถเปรียบเทียบราคาระหว่างผู้ขายแต่ละเจ้าได้

หลักการทำงานของ eBay ดูไม่มีอะไรซับซ้อน ผู้ซื้อย่อมต้องการสินค้าตามที่คาดหวัง ค่าส่งฟรี และสามารถคืนได้หากผู้ซื้อไม่พอใจ ฝั่งผู้ขายต้องส่งสินค้าที่มีคุณภาพตามที่โฆษณาไว้ ได้ตามเวลาที่กำหนด และต้องคอยระวังผู้ซื้อที่ใช้ช่องโหว่ของการคืนสินค้า แต่จริงๆ แล้วการรองรับผู้ใช้พร้อมกันหลายล้านคน และดูแลการซื้อขายหลายร้อยล้านทรานแซกชัน เป็นเรื่องที่ต้องใช้ระบบที่รัดกุมและทรัพยากรมหาศาล

การทำให้ระบบต่างๆ ดำเนินไปได้อย่างราบรื่น ทำให้ eBay ต้องเน้นการพัฒนาแพลตฟอร์มใช้เองทั้งหมด ไม่ว่าจะเป็น development, quality control และ release งานอะไรที่ต้องทำซ้ำๆ จะใช้โปรแกรมทำแทนทั้งหมดเพื่อลดความผิดพลาดของมนุษย์ (human error)

ในอุดมคติมีคำพูดว่า "automate all possible things" คือใช้โค้ดทำงานทุกอย่างเท่าที่เป็นไปได้

แต่ทางปฏิบัติ นักพัฒนาต้องสร้างโปรแกรมใหม่ขึ้นมาเรื่อยๆ เทียบได้กับ functional code ทำหน้าที่ขายและซื้อสินค้า ส่วนที่ได้ใช้ระบบอัตโนมัติกลับเป็นเรื่อง quality control ของซอฟต์แวร์

งานหลักของระบบ automation คือการทำ regression test เพื่อรัน test script ทดสอบว่าเมื่อเพิ่มฟีเจอร์ใหม่ลงไปแล้ว ฟีเจอร์เดิมยังใช้งานได้เหมือนเดิม ความสามารถของโปรแกรมไม่ได้ถดถอย (regress) ลงจากเดิม

อยากให้อธิบายเรื่อง regression เพิ่มเติมหน่อยครับ

สำหรับคนที่ไม่คุ้นเคยกับคำว่า regression ยกตัวอย่างโปรแกรมเครื่องคิดเลข ถ้าโค้ด V1 สามารถรับค่าตัวแปรแรก บวก ตัวแปรสอง แล้วให้ผลลัพธ์ การทดสอบโค้ด V1 ก็คือให้คนใส่ค่า 2 + 3 แล้วดูว่าผลลัพธ์ได้ 5 หรือไม่ นี่คือ test case อันแรก เรายังสามารถมี test case อื่นๆ เช่น ถ้าใส่ค่าติดลบ บวกกับ ค่าลบ, ถ้าใส่ค่าตัวเลขที่สูงมากๆ อย่างเลข 20 หลัก, ถ้ามีเลขมีทศนิยมบวกกัน ฯลฯ แต่ละอันก็เป็น test case ที่เราต้องทดสอบ

ต่อมาเราพัฒนาโค้ด V2 เพิ่มการคูณ มี test case ของการคูณให้เราทดสอบ ถ้าทดสอบแล้วทั้งหมดผ่าน ก่อนจะปล่อยโค้ด V2 ให้ผู้ใช้งาน เราต้องแน่ใจว่าฟีเจอร์การบวกยังทำงานได้ถูกต้อง อันนี้เรียกว่า regression

ลองคิดดูว่า ถ้าทำการทดสอบทั้งหมดด้วยคน ด้วยการเรียกโปรแกรมแล้วพิมพ์ค่าลงไป แล้วตรวจสอบคำตอบที่ได้ตาม test case ข้างต้น คนที่ทดสอบก็ต้องทำงานซ้ำเดิมทุกรอบ ยิ่งไปกว่านั้น หากทุกสัปดาห์ต้องออกโค้ด V3, V4, ... ไปเรื่อยๆ ถ้าเราใช้คนทดสอบแบบเดิม ทำงาน 1 คนต่อ 1 ฟีเจอร์ พอถึงสัปดาห์ที่ 90 เราคงต้องมีคนทดสอบมากถึง 90 คน

หากย้อนกลับไปสัปดาห์ที่ 1 ถ้าเราเขียนโปรแกรมขึ้นมาอีกชุดหนึ่ง มีหน้าที่เพื่อทดสอบการบวกตาม test case ต่างๆ เราจะสามารถใช้โปรแกรมนี้ทดสอบการบวกไปได้เรื่อยๆ ในเวอร์ชันต่อไป การทำงานแบบนี้เรียกว่า run regression test

งานที่ทำอยู่ใน eBay ปัจจุบัน

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

ผมทำ QA ส่วนของระบบสินค้าคงคลัง ทำ automation test สำหรับ Inventory API และ Load and Performance testing ครับ

จากที่ทำงานสาย automation test มาพอสมควร มีคำแนะนำไหมครับว่าถ้าสนใจศึกษาต่อเรื่องนี้ควรทำอะไรบ้าง

วงการ automation test มีเครื่องมือมากมาย แต่เครื่องมือจะไม่มีความหมายเลย ถ้าคนใช้ไม่เข้าใจถึงพื้นฐานเรื่องของคุณภาพของซอฟต์แวร์

การทำ test มี 3 ขั้นตอนหลักคือ

  1. เตรียมข้อมูล (data setup)
  2. รันสิ่งที่ต้องการทดสอบ (run what to be tested)
  3. ตรวจสอบผลลัพธ์ (validation)

บริษัทใหญ่ๆ มีเฟรมเวิร์คสำหรับการทดสอบของตัวเอง และจะเชื่อมกับฝ่ายพัฒนาโปรแกรม จนเป็น full pipeline ด้วยหลักการ Continuous Integration (CI) โดยใช้ซอฟต์แวร์โอเพนซอร์สอย่าง Jenkins

No Description

การพัฒนาโปรแแกรมขนาดใหญ่จะใช้กระบวนการแบบ SaaS (Software as a Service) โดยแตกงานออกเป็นหน่วยย่อยเรียกว่า (I) service เพื่อทำหน้าที่เพียงไม่กี่อย่าง และมี (II) user interface ที่ทำหน้าที่ติดต่อกับผู้ใช้

หลักการของ software testing จะเน้นไปที่การทดสอบ service กับ user interface ตามที่กล่าวมา

service automation testing

การทดสอบ service จะใช้แนวทาง automation test เขียนโปรแกรมให้ทำงานเหมือนกับการที่คนทำการทดสอบซอฟต์แวร์ ตามที่กล่าวไปแล้ว

ก่อนที่เราจะสร้าง automation test เราต้องทำ manual test หรือรันการทดสอบด้วยมืออย่างน้อยหนึ่งครั้ง จากนั้นเราสร้าง automation script เป็น Test Job บน CI (Continuous Integration) เพื่อสามารถใช้ซ้ำได้เรื่อยๆ

ตัวอย่างของ service automation test คือ ถ้ามี​​ service หน่วยหนึ่งไว้บวกเลข การเขียนโปรแกรมจะแตกออกเป็น test case หลายอันคือ (1) ตัวตั้งเป็นบวก + ตัวบวกเป็นบวก (2) ตัวตั้งเป็นบวก ตัวบวกเป็นลบ (3) ทศนิยม (4) 0 + 0 (5) ล้านๆ (6) null และอื่นๆ

เครื่องมือของ service testing เป็น API call ที่เราป้อน request และได้ response กลับมา ส่วนใหญ่มักเป็นเฟรมเวิร์คของบริษัทเอง เพราะต้องสามารถเข้าถึงฐานข้อมูลและเรียกใช้ service แต่ละตัวได้

เครื่องมือที่ผมใช้มี SOAP UI, Postman สำหรับ manual test ก่อนเขียนโค้ด

user interface testing

ส่วนของ UI testing เป็นการจำลอง user actions ที่ทำบนหน้าจอ เช่น การล็อกอิน การกดปุ่มคำสั่งต่างๆ

สำหรับเครื่องมือ UI test ของ eBay ใช้ Selenium ซึ่งเป็นเครื่องมือรันทดสอบบนเบราว์เซอร์ที่มีผู้ใช้มากที่สุด

ภาษาที่เขียนโค้ดเป็น Java โดยเลือก IDE ตามที่ถนัด (Eclipse, IntelliJ IDEA) เครื่องมืออย่างอื่นมี source code management (Git, SCM, Perforce); Build (Maven, Gradle); load and performance testing (JMeter, Loadtest) และไลบรารีอื่นๆ (Springs, Hibernate)

ถ้าสนใจเรื่องของ automation test แนะนำให้เริ่มจากพื้นฐานเรื่องของคุณภาพซอฟต์แวร์ และ software life cycle แล้วค่อยๆ เจาะลึกลงไปทางลงมือทำ

ส่วนตัวมองว่าคนทำงาน Quality Engineer (QE) มักมีความสงสัยและอยากรู้ในเรื่องต่างๆ ชอบตั้งคำถาม และคิดนอกกรอบได้พอสมควร ดังนั้นลองสำรวจบุคลิกก่อนจะหันมาเป็น QE ได้ครับ

No Description

ถ่ายกับ Devin Wenig ซีอีโอคนปัจจุบันของ eBay (หลังแยก PayPal)

ในฐานะที่ทำงานมาทั้งสาย system และ programming อยากให้เปรียบเทียบสองสายนี้สักหน่อยครับ

ผมว่าการเปรียบเทียบอาจไม่ค่อยแฟร์เท่าไรนะครับ เพราะงาน system สมัยทำที่ไทย เป็นระดับ user ไม่ใช่ creator ครับ

ส่วนงาน programming ที่มาทำในสหรัฐก็ตรงข้ามกันโดยสิ้นเชิง เพราะต้องเป็นคนสร้างซอฟต์แวร์ให้คนอื่นใช้

แต่เท่าที่มีประสบการณ์ งานสาย system มักเป็นงานประจำเป็นส่วนใหญ่ เช่น setup, configure, deploy, Maintenance ทำงานเป็นชิ้นๆ ไป ในทีมมีแต่ System Engineer ด้วยกัน หรืออย่างมากก็ Sales แล้วปิดงานเป็นโครงการไป หรือถ้าเป็นแอดมินระบบ ก็จะทำงานซ้ำๆ ตามที่ได้รับมอบหมาย

งานสาย programming ต้องทำงานเป็นทีมมากกว่า ในทีมเดียวกันต้องเข้าใจ product specifications จาก Product Manager, รับโค้ดจาก Developer, ทำงานด้วยกันกับทีม QE และสุดท้ายพอตอน release จะยิ่งไปกว่านั้น ต้องทำงานข้ามทีมอื่นด้วย เพราะต้องใช้ VM platform, pool vitualization, test framework, environment, integration tests, database โดยรวมแล้ว งานมีความซับซ้อนและท้าทายมากกว่าครับ

ประสบการณ์การทำงานในสหรัฐ พบว่าวัฒนธรรมการทำงานแตกต่างกับเมืองไทยมากน้อยแค่ไหน

ส่วนตัวผมเป็นคนตรงๆ เลยมีความชอบวัฒนธรรมการทำงานที่นี่พอสมควร

สิ่งที่ดี

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

สิ่งที่แย่ จริงๆ ก็ไม่ได้ถึงกับแย่ แต่ที่ไทยดีกว่า

  • ความสัมพันธ์ในที่ทำงานของคนไทยจะแนบแน่นกว่าครับ กินข้าวด้วยกันทุกวัน คุยเรื่องส่วนตัวกันได้ คนที่นี่ส่วนใหญ่จะรีบๆ กินข้าวแล้วกลับมาทำงาน บางคนก็เอาข้าวมากินที่โต๊ะแล้วทำงานไปด้วย เสร็จงานรีบกลับบ้าน
  • วัฒนธรรมคนไทยในเรื่องของอาวุโสก็เป็นสิ่งดีครับ เด็กที่รู้จักอ่อนต่อผู้ใหญ่ในขณะที่แสดงความสามารถในการทำงานได้ดี เรื่องของการขอบคุณ ไหว้ ผมชอบอะไรที่เป็นไทยนะ (โดยเฉพาะด้านดี ฮา)

การมาอยู่ในสหรัฐ นอกจากเรื่องงานแล้ว การใช้ชีวิตต้องปรับตัวเรื่องอะไรบ้าง

  • เรื่องภาษาเป็นเรื่องหลักเลยครับ ผมใช้เวลา 5 ปีถึงรู้สึกว่าตัวเองพอพูด อ่าน เขียนได้จริงๆ ก่อนนั้นนี่กาไก่ มากๆ ครับ
  • ส่วนเรื่องความเป็นอยู่ ผมไม่ค่อยเหงาเพราะมีภรรยามาด้วย และเทคโนโลยีทำให้การติดต่อกับครอบครัวที่เมืองไทยเป็นเรื่องง่าย
  • นิสัยการเป็นคนตรงๆ ทำให้ผมรู้สึกว่าอยู่ไทยแล้วทำตัวลำบาก (ฮา) จะชมจะว่าอะไรก็ต้องระมัดระวัง แต่ที่อเมริกานี่เป็นเรื่องปกติมากครับ
  • ผมชอบสภาพอากาศที่อเมริกามากกว่า เพราะมีความแตกต่างร้อนหนาว มีหิมะให้เล่น
  • เรื่องสุดท้ายคือเรื่องค่าแรงและรายได้ เท่าที่ผมเจอมา คิดว่าความแตกต่างของรายได้ระหว่างคนจน-คนรวยที่นี่น้อยกว่าเมืองไทย ถ้าขยัน ต่อให้ทำงานใช้แรงงาน ก็สามารถมีรถ มีบ้านได้ ถ้าตกงานยังไปขอเงินรัฐบาลได้เลย (ฮา) แต่คนต่างชาติก็ต้องสู้เยอะกว่าหน่อย

ถ้ามีโอกาสดีๆ ก็ลองมาใช้ชีวิตอยู่ที่อเมริกา จะได้ประสบการณ์ที่ต่างไปครับ

No Description

ถ้าน้องๆ รุ่นหลังที่อยากมาทำงานสายไอทีในสหรัฐ มีคำแนะนำอย่างไรบ้างครับ

ความสามารถด้านเทคนิคของคนไทยไม่แพ้ชาติใดในโลก ผมเชื่อว่าถ้าเรามีความสามารถในการเรียนรู้สูง เราสามารถทำงานอะไรก็ได้

ผมแนะนำว่าให้เรียนรู้เชิงลึกของเทคโนโลยีเฉพาะอย่างไปเลยครับ แต่ตอนเลือกว่าจะเรียนรู้อะไร ให้เลือกอย่างมีเป้าหมาย เช่น เป็นเทคโนโลยีที่บริษัทใหญ่ที่มีอนาคตไกลใช้อยู่, ตัวรากฐานทฤษฎีไม่ค่อยเปลี่ยนแปลงมากนัก เช่น network layers, tax system และหมั่นตั้งคำถามว่าทำไม อย่างไร มากกว่าการจดจำเฉพาะอะไร ที่ไหน เมื่อไร

อีกอย่างผมอยากเน้นเรื่อง soft skills นะครับ การจะให้คนที่นี่ยอมรับ ส่วนตัวแล้วผมอยากให้มีความถ่อมตน ทำให้ความคาดหวังในตัวเราในสายตาคนอื่นไม่สูง เมื่อเราทำงานกับคนอื่น เราพูด แสดงความคิด แสดงผลงาน คนรอบข้างจะเห็นเอง แล้วเราจะ exceed expectation เสมอ

  • จะคิด จะพูดให้รอบคอบ คนฉลาดจะไม่แสดงความคิดเห็นที่ไม่ได้กลั่นกรองออกไป เรื่องเล็กๆ น้อยๆ ก็สำคัญ ให้ใส่ใจรายละเอียด
  • คิดดี ทำดี แต่อย่าแกล้งทำไร้เดียงสา เพราะไม่มีใครรู้สึกดีที่โดนหลอกครับ อาจจะโดนมองในแง่ลบไปอีกนานครับ
  • ทำงานให้ได้มากกว่าที่ควรต้องทำเสมอ always deliver more than expected เน้นที่ผลงานนะครับ ไม่ใช่เวลาที่ใช้ทำ เน้นประสิทธิผล คนที่ใช้เวลาทำงานน้อยแต่ได้งานเท่าคนอื่นมักจะดูดีในสายตาผู้บริหาร
  • แต่ที่ดียิ่งกว่าคือคนที่ใช้เวลาเท่าคนอื่นแต่ได้งานมากกว่าคนอื่น คิดอยู่เสมอครับว่าถ้าหัวหน้าเลือกเอาคนออก เราไม่ควรเป็นคนแรกๆ ที่เค้าคิดถึง
  • หมั่นสำรวจตลาด เราไม่จำเป็นต้องเปลี่ยนงานบ่อย แต่เมื่อไรที่คิดว่าเราได้ค่าตอบแทนคงที่ ขณะที่ตลาดจ่ายสูงกว่ามาก ควรจะคุยกับหัวหน้า
  • เลือกทำงานกับหัวหน้าที่เราพอใจ ลองเป็นนายตัวเอง แล้วถามว่าเราตั้งความคาดหวังอะไร ระหว่างเจ้านายกับลูกน้อง

ทุกวันนี้ผ่านมาจากช่วงที่ถามตัวเองว่า "เราจะไปได้ไกลแค่ไหน" มาพอสมควร ถ้ามองย้อนกลับไปแล้วประเมินตัวเองอย่างไร และตั้งเป้าอย่างไรต่อไป

ผมคิดว่าผมโชคดีมากที่ได้มาถึงจุดนี้ ในอดีตมีทั้งได้ในสิ่งที่หวัง ไม่ได้ดังหวัง และได้ในสิ่งที่ไม่ได้หวัง มีภรรยาที่น่ารักและคอยสนับสนุนผมในทุกเรื่อง

สิ่งที่ผมคิดว่าทำได้ดีคือมีเป้าหมายอยู่เสมอ ทำหรือยังไม่ทำนั้นเรื่องหนึ่ง แต่อย่างน้อยผมมีความฝันในระยะสั้น อาจจะ 6 เดือน 2 ปี หรือ 10 ปี จะทำโน่นทำนี่ อยากได้โน่นได้นี่ แล้วค่อยๆ คิดว่า ทำอย่างไรถึงจะได้ ถ้าคุณยังไม่มีความฝัน เริ่มคิดมาหนึ่งอัน แล้วทำมันให้เป็นจริง อาจจะเริ่มจากสิ่งเล็กๆ และเพิ่มความท้าทายไปเรื่อยๆ

ผมคิดว่าผมมีความสุขกับทุกเรื่องๆ ในชีวิต ทั้งการทำงาน และชีวิตส่วนตัวครับ ส่วนในอนาคตอยากมีอะไรที่ทิ้งชื่อไว้ให้โลกบ้าง (แอบฝัน) อาจจะมีบริษัทเล็กๆ ของตัวเอง, องค์กรไม่หวังผลกำไร หรืองานการกุศลที่ทำประโยชน์ให้ส่วนรวม ให้โอกาสคนอื่นครับ

Get latest news from Blognone

Comments

By: tontpong
Contributor
on 25 July 2015 - 13:58 #829697

"งาน system สมัยทำที่ไทย เป็นระดับ user ไม่ใช่ creator ครับ.. ส่วนงาน programming ที่มาทำในสหรัฐก็ตรงข้ามกันโดยสิ้นเชิง เพราะต้องเป็นคนสร้างซอฟต์แวร์ให้คนอื่นใช้"

โฮก >_<"

By: I3assy on 25 July 2015 - 14:07 #829698
I3assy's picture

บทความเซ็ตนี้มีประโยชน์มากๆครับ

By: cartier
iPhoneAndroid
on 25 July 2015 - 14:54 #829703
cartier's picture

ตั้ง​แต่​อ่าน​ series นี้​มา​ ผม​ชอบ​บท​ความ​นี้​สุด​ครับ​ ข้อ​คิด​เยอะ​ดี​

By: taepeep
AndroidIn Love
on 25 July 2015 - 18:05 #829719
taepeep's picture

"เราจะไปได้ไกลแค่ไหน" ไฟนี่ลุกเลยครับ พรึ่บๆๆๆ

ขอบคุณครับ =)

By: dampreecha
iPhoneWindows PhoneAndroidBlackberry
on 25 July 2015 - 18:42 #829722

คงตอบคำถามหลายท่านได้ที่ถามว่ามีแต่คนจบจากจุฬาฯ เป็นบทความที่ดีมากครับ

By: toooooooon
iPhoneWindows PhoneAndroidBlackberry
on 25 July 2015 - 22:06 #829745

สุดยอดบทความ จากสุดยอดคนคนครับ...

เอาไว้ให้เด็มหาลัยอ่านก็ดีนะ

By: panurat2000
ContributorSymbianUbuntuIn Love
on 25 July 2015 - 23:06 #829750
panurat2000's picture

อยากร่วมทำงานกับบริษัทระดับโลกทีสร้างนวัตกรรมที่เราใช้กัน

ทีสร้าง => ที่สร้าง

หลักการทำงานของ eBay ดูไม่มีอะไรซับซ้อน ผู้ซื้อย่อมต้องการสินค้าตามที่ความหวัง

ตามที่ความหวัง ?

ดังนั้นลองสำรวจบุคคลิกก่อนจะหันมาเป็น QE ได้ครับ

บุคคลิก => บุคลิก

ตัวรากฐานทฤษฏีไม่ค่อยเปลี่ยนแปลงมากนัก

ทฤษฏี => ทฤษฎี

ทำให้ความความหวังในตัวเราในสายตาคนอื่นไม่สูง

ความความหวัง => ความคาดหวัง

คิดดี ทำดี แต่อย่างแกล้งทำไร้เดียงสา

อย่างแกล้งทำ => อย่าแกล้งทำ

แล้วถามว่าเราตั้งความความหวังอะไร

ตั้งความความหวัง ?

By: anoid on 26 July 2015 - 01:43 #829763

Combo Breaker!! ขำๆนะครับ

By: spicydog
ContributoriPhoneAndroidUbuntu
on 26 July 2015 - 11:28 #829797
spicydog's picture

อ่านแล้วฮึดเลย ให้ข้อคิดและกำลังใจมากๆ ครับ


SPICYDOG's Blog

By: adente
ContributorSUSESymbianWindows
on 27 July 2015 - 01:09 #829929
adente's picture

อ่านแล้วมันโดนใจหลายๆเรื่อง กว่าบทความชุดก่อนๆ
1.อยากมาตามฝันว่า "เราจะไปได้ไกลแค่ไหน" มาหางานก่อน ที่ผ่านๆมาๆจะเป็นว่ามาเรียนก่อนแล้วหางาน
2.เห็นภาพสุดว่าวัฒนธรรมเรากับเขาต่างกันแบบไหน (บทความอื่นๆอ่านแล้วยังไม่สุดเท่านี้)
3.soft skills อันนี้ดีมาก เอาไปใช้ได้ทุกประเทศครับ
4.ถ้าคุณยังไม่มีความฝัน เริ่มคิดมาหนึ่งอัน แล้วทำมันให้เป็นจริง

By: au8ust
AndroidSymbianWindows
on 30 July 2015 - 21:18 #831008

ExxonMobile?

By: iNfected on 31 July 2015 - 09:50 #831096 Reply to:831008
iNfected's picture

ExxonMobil มากกว่ามั้งครับ 555+

By: Virusfowl
ContributorAndroidSymbianWindows
on 31 July 2015 - 06:01 #831066

การพัฒนาโปรแแกรมขนาดใหญ่จะใช้กระบวนการแบบ SaaS

โปรแแกรม => โปรแกรม


@ Virusfowl

I'm not a dev. not yet a user.