อีกหนึ่งอาชีพดาวเด่นประดับวงการเทคโนโลยีที่เก่งการวิเคราะห์ระบบ และเป็นนักแก้ปัญหาตัวยงให้แก่ทีมงานและลูกค้าแบบจับใจจูต้องยกให้ System Analyst สุดเนี๊ยบ ฤกษ์งามยามดีเลยขอลัดคิวเชิญพี่มะปราง System Analyst Manager มาช่วยแชร์เบื้องหน้า เบื้องลึก เบื้องหลัง การทำงานของ SA ให้เพื่อนๆที่สนใจงานสายนี้ได้อ่านกันแบบไม่กั๊ก ขอบอกว่าใครอยากได้เคล็ดลับดีๆพร้อมวางแผนอาชีพในวงการเทคฯแบบยาวๆไม่ควรพลาดจริงๆเพราะ 10 10 10 ไปเลยจ้า
โปรดแนะนำตัวเองและเล่าจุดเริ่มต้นว่ามาทำงาน SA ได้อย่างไรคะ?
สวัสดีค่ะ พี่มะปราง เป็น System Analyst Manager ที่ SCB TechX นะคะ ตอนนี้ดูแลระบบงานเกี่ยวกับสินเชื่อเป็นหลัก ทั้ง Mobile Application, Website และ Backend service ค่ะ ย้อนไปเมื่อหลายปีก่อนหลังจากเรียนจบปริญญาตรี Computer Science ก็เริ่มทำงานในตำแหน่ง Programmer เขียน VB.Net ค่ะ ชอบเขียนโปรแกรมตั้งแต่ตอนเรียนตรี รู้สึกว่าเป็นงานที่ท้าทายและสนุกกับการได้คิด ได้สร้าง ได้ทดลองทำอะไรใหม่ๆ หรือทำให้ดีขึ้นกว่าเดิม ทำงานเป็น Programmer ได้ประมาณ 5 ปี พี่ๆเริ่มเห็นแววความเป็น System Analyst (SA) เลยได้ลองทำงานที่เกี่ยวกับ SA มากขึ้นแต่ก็ยังเขียน Program ด้วยในบางโปรเจ็ค และก็มาค้นพบความสนุกอีกครั้ง ตอนได้ลองเขียน PL/SQL บน Oracle Database รู้สึกว่าท้าทายมาก ยิ่งได้ทำงานกับข้อมูลจำนวนมหาศาลก็ยิ่งทำให้ต้องคิดหาวิธีการออกแบบระบบอย่างไรที่จะทำให้ระบบทำงานได้เร็ว และยังช่วยฝึกให้ตัวเองจัดการความคิดอย่างเป็นระบบมากขึ้นค่ะ ซึ่งพื้นฐานเหล่านี้ ช่วยให้การทำงานใน Role SA มีความสนุกมากขึ้นเช่นกัน
ความสนุกของงาน SA คือ มีอะไรให้เรียนรู้อยู่ตลอด มีโจทย์ใหม่ที่ท้าทายความสามารถมาให้เราได้เรียนรู้ ฝึกคิด ฝึกแก้ปัญหา คิดนอกกรอบ และนอกจาก SA จะต้องออกแบบระบบให้ตรงตาม Requirement แล้ว ยังต้องมีการสอดแทรกการออกแบบที่เรียกว่า “เผื่อ” มีการเปลี่ยนแปลงบางอย่างในอนาคต และการออกแบบระบบให้สามารถแก้ไขปรับเปลี่ยนได้ง่าย รองรับการทำงานในหลายๆรูปแบบโดยไม่ต้องแก้ไขโปรแกรมแค่ปรับ Configuration นอกจากนี้ยังต้องออกแบบระบบโดยคำนึงถึงการใช้งานได้จริงทั้งในมุมของ Business user , End user และการ Support หลังขึ้นงานด้วย แค่คิดก็สนุกแล้ว 🙂
System Analyst ที่ SCB TechX ทำหน้าที่อะไรบ้าง? และอยู่ในขั้นตอนไหนของการทำงานในแต่ละ Project คะ?
System Analyst หรือนักวิเคราะห์ระบบ ในนิยามของพีคือนักแก้ปัญหา เป็นคนที่จะต้องหา Solution ตามโจทย์ที่ได้มา ไม่ว่าจะเป็น New Requirement, Enhancement, Incident หรือ Product Improvement ต่างๆ ซึ่ง SA จะต้อง Design Solution เพื่อแก้โจทย์เหล่านี้ตาม Resource & Timeline ที่อาจจะจำกัดในบางกรณี เช่น ต้อง Implement Function นี้ภายในสินเดือนธันวาคม
หน้าที่ SA ต้องทำ Impact Assessment (Analyze) ก่อนเป็นลำดับแรกว่าจะต้องทำอะไรบ้าง เช่น ต้องเพิ่มหน้าจอใหม่ ที่มีเส้น API ไปดึงข้อมูลจากดาต้าเบส หรือจากระบบอื่นๆมาแสดงบนหน้าจอ โดยลูกค้าสามารถแก้ไขได้บางค่า และต้องตรวจเช็ครูปแบบข้อมูลก่อนส่งไปบันทึกที่ดาต้าเบส เป็นต้น เมื่อได้ Impact Assessment โดยคร่าวแล้ว จะมีการส่งต่อให้ทีมงานประเมิน High Level Effort เพื่อพิจารณาว่าสามารถ Implement ได้ตาม Resource & Timeline ที่กำหนดหรือไม่ หากไม่ได้ จะต้องตัดงานส่วนใดไปทำภายหลัง เพื่อให้ Main Requirement ขึ้นไปให้ลูกค้าใช้งานก่อนและขึ้นส่วนที่เหลือในรอบถัดๆไป จากนั้นจึงจะเริ่ม Application Design เพื่อให้ได้ Application Specification ส่งต่อให้ทาง Developer ทำการ Coding ตามที่ Design ไว้ต่อไป
โดย SA จะมีบทบาทใน Project ตั้งแต่ช่วงเริ่มแรกเลย โดย Product Owner (PO) & Business Analyst (BA) อาจจะชวน Senior SA เข้าไปร่วมฟัง Requirement จากทาง User ตั้งแต่แรก เพื่อให้ SA เข้าใจภาพรวมของ Requirement และนำไปคุยกับ Enterprise Architect จัดทำเป็น High Level solution Diagram เข้าไปนำเสนอใน Solution Committee และช่วย BA ในการคิด Solution ไปนำเสนอ User จนได้เป็น Solution ที่ตรงตาม Requirement และเหมาะสมกับ Resource & Timeline มากที่สุด นี่เป็นแค่การเริ่มต้น งานสนุกๆของ SA ยังมีตามมาอีกมากมายค่ะ ทั้งออกแบบระบบ(Detail Design) ได้เป็น Specification ส่งให้ทาง Developer นอกจากนี้เรายังทำหน้าที่ Support ทุกๆ Role ที่เกี่ยวข้องตั้งแต่ Requirement, Design, Implement, Testing, Deploy และ Post production ด้วย พี่มักจะบอกน้องๆเสมอว่า ในฐานะที่เราเป็นคนคิดและออกแบบระบบขึ้นมา ดังนั้น SA จะเป็นคนแรกที่ทุกคนนึกถึงและเราต้องสามารถให้คำแนะนำที่เป็นประโยชน์ได้ ถึงแม้บางอย่างเราไม่ได้ลงมือทำเอง แต่จำเป็นจะต้องรู้จัก End-to-End process และบุคคลที่เกี่ยวข้องเพื่อนำไปสู้การวิเคราะห์ปัญหาได้อย่างตรงจุด
ในแต่ละวันมีสัดส่วนของการทำงานอย่างไรบ้างคะ?
การทำงานแต่ละวันอาจจะไม่ได้กำหนดสัดส่วนชัดเจนเหมือนกันทุกวัน ขึ้นอยู่กับว่ากำลังอยู่ช่วงต้น กลาง หรือ ท้าย Sprint (เราทำงานกันเป็น Sprint ประมาณ 2 สัปดาห์) แต่งานที่จะเหมือนกันในทุกวันก็คือการประชุมช่วงเช้าประมาณ 1–1.5 ชั่วโมง เริ่มจาก SA Daily Session ประมาณ 20–30 นาที เพื่อให้ SA เล่างานที่ได้ทำไปแล้ว งานที่กำลังจะทำและปัญหาที่เกิดขึ้น(ถ้ามี) ให้ทีม SA ด้วยกันฟัง โดยพี่จะเข้าทุก Daily Session ของน้องๆ SA เพื่อรับทราบผลการทำงาน และปัญหาต่าง ๆ ที่เกิดขึ้นระหว่างการทำงาน รวมทั้งช่วยแนะนำหรือช่วยแก้ปัญหา จากนั้น จะมี Project Daily Session ประมาณ 30–40 นาที เพื่อให้ทุก Roles ได้ Update progress ต่างๆ รวมทั้งการเปิดประเด็นสำคัญเพื่อให้ทีมงานได้รับทราบและร่วมกันแก้ปัญหา
เวลาที่เหลือ อาจจะมีการนัดประชุมเกี่ยวกับ Requirement, Solution, Incident ต่างๆ แต่ไม่จำเป็นต้องเข้าทุกคน เพื่อให้น้องมีเวลาทำงานของตัวเอง โดยส่วนใหญ่จะให้ Senior SA เข้าไปประชุมแล้วนำกลับมาเล่าให้ทีมฟัง หรือ Assign ให้น้องๆช่วยตรวจสอบในเรื่องที่น้องรับผิดชอบ เป็นต้น นอกจากนี้น้องๆ SA ก็อาจจะมีการนัดประชุมเพื่อให้ทีมช่วย Review งานต่างๆก่อนส่งต่อให้ Developer ทั้งนี้ SA Team จะรับผิดชอบในการเตรีม Program Specification และ Grooming ให้ทั้ง Dev และ QA นำไปทำงานต่อ ซึ่งก็จะมี Time plan ที่ชัดเจนในแต่ละ Sprint ค่ะ
สนใจงานด้านนี้ต้องจบ IT ไหมคะ หรือ ควรทำงานด้านไหนมาก่อน หรือ ควรมีความรู้ด้านไหน จึงจะได้รับการพิจารณาเป็นพิเศษคะ?
งาน SA ต้องการคนที่มีประสบการณ์ในการ Implement ระบบมาระดับหนึ่งค่ะ ซึ่งอาจจะมาจาก Programmer, Tester, BA หรือ Role ที่ทำงานด้าน IT โดยน้องๆอาจจะจบ Computer Science, Computer Engineer, Statistic หรืองานที่เกี่ยวข้องกับ IT สามารถมาทำงาน SA ได้หมดเลย
โดยคุณสมบัติที่ต้องมี คือ ต้องเป็นคนใฝ่เรียนรู้ มีการคิดและการแก้ปัญหาเชิงตรรกะ (Logical thinking and problem solving) สามารถทำงานใต้ความกดดันได้ และต้องสามารถสื่อสารหรืออธิบายสิ่งที่เราออกแบบให้คนอื่นเข้าใจได้ ไม่ว่าจะเป็นการพูดอธิบาย การเขียน หรือการทำเป็นภาพ (Diagram) ซึ่งการสื่อสารเป็นสิ่งสำคัญมากสำหรับการเป็น SA เพราะถ้าเราสื่อสารน้อยไปหรือให้ข้อมูลที่ไม่เพียงพอ อาจจะทำให้การ Implement ระบบออกมาผิดไปจากที่ตั้งใจไว้ได้ค่ะ
นอกจากนี้ หากน้องมี Positive Attitude และ Service mind ก็อาจจะได้รับการพิจารณาเป็นพิเศษอีกด้วยเพราะที่ SCB TechX เราทำงานแบบพี่น้อง ช่วยเหลือกันและกัน ซึ่งเป็นหัวใจสำคัญที่ทำให้ทีมทำงานมีความสุขและสร้างผลงานดีๆให้กับลูกค้าค่ะ
เส้นทางการทำงานของ SA สามารถต่อยอดไปทำอะไรต่อได้บ้างคะ?
เนื่องจากงาน SA ใช้หลายศาสตร์ในการทำงาน เช่น Technical Skills, Logical Thinking, Problem Solving, Management, Communication & Negotiation เป็นต้น
พี่คิดว่า นอกจากน้องๆจะเติบโตในสายงาน SA ในระดับที่สูงขึ้นแล้ว ยังสามารถผันตัวเองไปเป็น BA, PM, PO, QA, Developer, Technical Support ได้เช่นกัน เพราะงานเหล่านี้มาจากพื้นฐานใกล้เคียงกัน อยู่ที่เราชอบงานแบบไหน
หรือจะนำความรู้และประสบการณ์ของเราไปใช้ในสายงานอื่นๆ เช่น น้องที่สื่อสารเก่ง อธิบายเรื่องยากให้ง่ายได้ อาจจะลองเป็น Trainer หรือ Speaker ทั้งในส่วนงาน Digital Technology หรืองานอื่นๆที่น้องๆสนใจได้ หรือน้องๆที่ชอบทำงานกับ Data อาจจะลองสายงาน Data Scientist ก็ดูน่าสนุกเช่นกันค่ะ
และคำถามสุดท้าย เวลามีปัญเกิดขึ้นในงาน มีวิธีจัดการกับปัญหาอย่างไร? และมีวิธีการผ่อนคลายความเครียดหลังเลิกงานอย่างไรบ้างคะ?
ในชีวิตการทำงาน เราทุกคนต่างก็ต้องเรียนรู้ ฝึกฝน ลองผิดลองถูก แต่ยิ่งทำมาก ก็ยิ่งได้ประสบการณ์มาก และแน่นอนว่าต้องเจอปัญหาระหว่างการทำงานบ้างไม่มากก็น้อย โดยปัญหาที่เจอบ่อยในสายงาน SA จะมี 2 แบบ 1) ปัญหาการทำงานของระบบที่ไม่ถูกต้องหรือที่เราเรียกว่า Incident 2) ปัญหาจากตัวคนที่อาจจะเป็นเพื่อนร่วมงานหรือบุคคลอื่นๆที่เกี่ยวกับกับงานของเรา
วิธีจัดการปัญหาข้อแรก สิ่งแรกต้อง Focus ที่ตัวปัญหาก่อนว่าสิ่งที่เรากำลังจะหาทางแก้คืออะไร จากนั้นเริ่มวิเคราะห์ความน่าจะเป็นของสาเหตุปัญหา ลิสต์ออกมาเป็นข้อๆแล้วค่อยๆหาวิธีตรวจสอบจาก Evidence ต่างๆที่เกิดขึ้น และเริ่ม Scope สาเหตุของปัญหาให้เล็กลง ตัดปัจจัยที่ไม่เกี่ยวข้องออก และในที่สุดเราจะเจอสาเหตุของปัญหา ทั้งนี้สิ่งสำคัญที่สุดคือต้อง Focus ว่ากำลังจะแก้ปัญหาอะไร เพื่อจะได้ไม่หลงทางและควรจะแก้ปัญหาให้ตรงจุด
สำหรับข้อ 2 ปัญหาเรื่องคน ต้องทำความเข้าใจก่อนว่า คนแต่ละคนมีลักษณะนิสัยที่ไม่เหมือนกัน มีบุคลิคลักษณะ การแสดงออก ที่แตกต่างกัน การคาดหวังให้ทุกคนเป็นแบบที่เราอยากให้เป็น ก็ยิ่งจะเป็นไปไม่ได้เลย ดังนั้น หากได้ทำงานกับคนดีๆ คนน่ารัก ก็ให้รักษาเพื่อนคนนั้นไว้ แต่หากเจอคนที่ตรงกันข้าม ก็ต้องพยายามเข้าใจในความต่างและ Focus เรื่องการทำงานและไม่นำไปเป็นความรู้สึกส่วนตัว เราเปลี่ยนคนทั้งโลกไม่ได้ แต่เปลี่ยนตัวเองให้เข้าใจในความต่างของเขาเหล่านั้นได้ และชีวิตเราจะเป็นสุขค่ะ
วิธีการผ่อนคลายความเครียดหลังจากการทำงาน การรู้จักปล่อยวางช่วยเราได้ในทุกสถานการณ์ ไม่ว่าจะการเรียน การทำงาน การใช้ชิวิต ตอนทำงานพี่ค่อนข้างจริงจังและกดดันตัวเองพอสมควร คิดเสมอว่าต้องทำให้ได้ ต้องทำให้ทัน ต้องทำให้ดีกว่าเดิม แต่พอเลิกงานจะปล่อยวางงานทั้งหมด และเริ่มทำสิ่งที่ชอบ เช่น ทำอาหาร ทำขนม ดูหนัง ฟังเพลง จัดทริปเที่ยว จัดปาร์ตี้ หรือแม้แต่การ Shopping Online ก็ทำให้จิตใจผ่อนคลายได้เช่นกัน และที่สำคัญต้องนอนให้ได้วันละ 7–8 ชั่วโมง ทานอาหารที่มีประโยชน์ ออกกำลังกายเบาๆ แค่นี้ก็พร้อมที่จะลุยงานในวันต่อๆไปได้แล้ว และไม่ลืมให้กำลังใจตัวเองในทุกๆวันและแบ่งปันเสียงหัวเราะและสิ่งดีๆให้น้องๆและทีมงาน จะได้มีแรงใจช่วยกันทำงานต่อไปด้วยค่ะ