Soft Skill & Technical Skill ของ Programmer ที่ดีมีอะไรบ้าง อ่านได้ที่นี่
Jan 4, 2023
ชวนดูลิสต์ Soft Skills & Technical Skills ที่ต้องมีให้พร้อมก่อนเป็น Programmer
หลายๆ คนที่สนใจในอาชีพ Programmer มักจะสงสัยกันว่านอกจาก Technical Skill แล้ว Soft Skill จำเป็นไหมสำหรับอาชีพนี้ ที่เป็นเช่นนี้ก็เพราะว่า หลายครั้งที่เราเห็นอาชีพนี้ผ่านภาพยนตร์หรือละคร สื่อเหล่านั้นมักพยายามพรีเซนต์ภาพของตัวละครที่เป็นมนุษย์สายเทคทุกคน ให้เป็นพวกเอกเทศรักสันโดษ หรือทำงานหน้าคอมเงียบๆ ไม่อะไรกับใคร เมื่อเป็นเช่นนี้ก็พานให้เข้าใจไปว่า โปรแกรมเมอร์น่าจะเป็นอาชีพเฉพาะทางที่ไม่ต้องใช้ทักษะอื่นๆ มากมาย ขอแค่ตัวเรามี Computer Skill ที่ดีก็คงทำได้เหมือนกัน ซึ่งแน่นอนว่าแท้จริงแล้วไม่ได้เป็นเช่นนั้น วันนี้เราจะพาไปดูกันว่า การเป็นโปรแกรมเมอร์ที่ดีได้นั้นควรต้องมีทักษะในการทำงานอะไรบ้างทั้ง Soft Skills และ Technical Skills หากพร้อมแล้วไปดูกันได้เลย
Soft Skill คืออะไร
Soft Skills คือทักษะด้านบุคคลที่มีอย่างแตกต่างกันไปขึ้นอยู่กับพื้นเพของการเติบโต ลักษณะนิสัยและการฝึกฝน ซึ่งเราสามารถนำมาส่งเสริมประสิทธิภาพในแง่ของการทำงานเชิงเทคนิคได้
4 Soft Skills จำเป็นของโปรแกรมเมอร์ มีอะไรบ้าง
-
การแก้ไขปัญหาเฉพาะหน้า
สำหรับอาชีพนี้ข้อผิดพลาดเล็กๆ น้อยๆ เป็นสิ่งที่เกิดขึ้นได้เป็นประจำ ความผิดพลาดของโค้ดแค่หนึ่งบรรทัดสามารถสร้างผลลัพธ์ที่ผิดแปลกไปจากที่คิดไว้ได้ ซึ่งไม่ใช่เรื่องง่ายและอาจต้องคอยแก้ซ้ำหลายๆ ครั้งกว่าจะได้โปรแกรมที่สมบูรณ์แบบใช้งานได้จริง โปรแกรมเมอร์จึงควรจะต้องมีความสามารถในการจัดการกับปัญหาตรงหน้าให้ได้ด้วยตนเอง -
การสื่อสาร
เนื้องานของโปรแกรมเมอร์ไม่ใช่งานแบบที่เอาไปทำคนเดียวแล้วจะได้ผลงานที่สมบูรณ์แบบออกมาได้ ระหว่างนั้นคนที่เป็นโปรแกรมเมอร์อาจต้องไปคุยกับคนอื่นๆ เช่น Product Designer หรือ Product Owner เพื่อช่วยกันประเมินความเป็นไปได้ของงาน ช่วยกันปรับแก้ตัวงาน ปรับขอบเขตเวลาและสรุปสิ่งต่างๆ ร่วมกันอยู่เสมอ ดังนั้น การมีทักษะการสื่อสารที่ดีจะทำให้การทำงานเป็นโปรแกรมเมอร์สามารถทำได้อย่างราบรื่นมากขึ้น -
การจัดการเวลา
เวลาและแรงงานหมายถึงต้นทุนที่บริษัทต้องเสียไปเพื่อให้ได้งานที่มีคุณภาพออกมา ซึ่งหมายความว่าโปรแกรมเมอร์เองที่เป็นส่วนหนึ่งขององค์กร ก็ควรกะประมาณให้ได้ว่างานที่ได้รับมาจะใช้เวลาเท่าไร และต้องควบคุมให้ตนเองสามารถสร้างโปรแกรมออกมาให้ได้ในขอบเขตเวลาที่วางไว้เหล่านั้น สำหรับบางคนที่รับงานมาทำที่บ้าน ก็จะต้องจัดการเวลาได้ถูกว่าวันไหนต้องทำอะไร -
ความอดทนและไม่ยอมแพ้อย่างง่ายดาย
อย่างที่รู้ว่าในการเขียนโค้ดอาจจะไม่ได้ผลลัพธ์ที่ต้องการตั้งแต่ครั้งแรกที่ทำ ดังนั้นแล้วการที่โปรแกรมเมอร์มีความพยายาม ไม่ย่อท้ออย่างง่ายดายนั้น หมายถึงความสามารถในการเผชิญหน้ากับปัญหาและการทำงานที่มากขึ้นด้วย
Hard Skills คืออะไร
Hard Skills หรือที่ชอบเรียกกันว่า Technical Skills คือทักษะรวมไปถึงความสามารถเชิงเทคนิคที่เกี่ยวข้องกับการทำงานเฉพาะสายแต่ละสายโดยตรง เป็นทักษะที่จำเป็นเกี่ยวกับวิชาชีพ หากไม่มีจะไม่สามารถประกอบอาชีพนั้นได้ตั้งแต่ต้น โดยสำหรับคนที่เป็นโปรแกรมเมอร์ แน่นอนว่าทักษะเชิงเทคนิคที่ต้องมี ได้แก่ Programming Skill ทั้งภาษาคอมพิวเตอร์ต่างๆ การใช้เครื่องมือในการเขียนโค้ดให้มีความถูกต้องคล่องแคล่ว รวมไปถึง English Skill ในกรณีที่ทำงานในบริษัทต่างชาติ
อะไรคือ Technical Test ทำไมคนอยากเป็นโปรแกรมเมอร์ถึงควรรู้
เพื่อทดสอบว่าเราสามารถทำงานได้จริง บริษัทหลายๆ แห่งจำเป็นต้องมีการทำ Technical Test หรือที่เรียกว่า Technical Interview เวลารับสมัครพนักงาน เพื่อทดสอบว่าเรามีความสามารถในการใช้ทักษะเฉพาะทางในการประกอบอาชีพจริง โดยจะเป็นการถามคัดกรองเบื้องต้นเพื่อให้มั่นใจว่าเราเป็น Candidate ที่มีขอบเขตความรู้มากพอจะทำงานให้กับองค์กรได้จริง
เทคนิคทำ Technical Test ในการสัมภาษณ์งาน
-
ท่องจำโค้ดต่างๆ โดยไม่ใช้โปรแกรมสำเร็จรูปเข้ามาช่วย
ความแม่นยำในเรื่องการเขียนโค้ดเป็นสิ่งสำคัญ หลายครั้งโปรแกรมเขียนโค้ดสำเร็จรูป เช่น VS Code หรือ Eclipse มักจะมี Auto-code ให้เราใช้เพื่อความสะดวกในการทำงาน แต่เราควรลองฝึกเขียนโค้ดเหล่านั้นโดยไม่ใช่โปรแกรมดูสักครั้งเพื่อทดสอบความแม่นยำในการเขียนโค้ดของเราว่า หากไม่มีโปรแกรมพวกนั้นคอยช่วยแล้ว เราจะยังสามารถรับมือกับการเขียนคำสั่งเบสิกบางอย่างได้ด้วยตนเองหรือไม่ ตัวอย่างเช่น Sequence (เขียนโค้ดเป็นบรรทัดไล่จากลำดับเหตุการณ์), Conditional Statements (คำสั่ง If, Else If, ฯลฯ), Loop (คำสั่ง While, For, ฯลฯ) -
ฝึกถามตอบเกี่ยวกับ Basic Coding และคำสั่งที่น่าจะต้องใช้หากได้ทำงานในองค์กรนั้น
ก่อนวันทดสอบให้ลองเข้าไปดูเว็บไซต์ของบริษัท ศึกษาเกี่ยวกับผลิตภัณฑ์ของพวกเขาที่เราอาจจะได้มีส่วนร่วม หรือลองติดตั้งซอฟต์แวร์ของทางบริษัทนั้นๆ (กรณีที่สามารถทำได้) และใช้งานดูสักครั้งว่าถ้าเราต้องเขียนโค้ดหน้าจอการใช้งานแบบนั้นขึ้นมา เราจะต้องเขียนอย่างไร หลังได้เข้าไปดู เชื่อว่าผู้สมัครน่าจะสามารถเก็งได้คร่าวๆ ว่าทีมโปรแกรมเมอร์ที่จะเข้ามาสัมภาษณ์เราในวันจริงต้องการอะไรจากเราหรือน่าจะถามอะไรบ้าง หรือหากมีจุดไหนที่เรามองว่าทำไม่ได้ ก็จะได้ศึกษาไปก่อนทำ Technical Test -
เตรียมพร้อมตอบคำถามเกี่ยวกับโปรเจกต์เก่าๆ ที่เราเคยทำ
ถ้าหากคุณเคยมีประสบการณ์ทำงานเกี่ยวกับซอฟต์แวร์ สิ่งที่เคยทำมาในอดีตเหล่านี้จะสร้างความโดดเด่นให้กับเรซูเม่ได้ แต่ทั้งนี้ เมื่อมีการถามคำถามเชิงลึกเกี่ยวกับโปรแกรมที่เราเคยได้มีส่วนร่วมเขียนขึ้น เราก็ควรจะตอบให้ได้อย่างชัดเจน เพื่อแสดงให้เห็นว่าอย่างน้อยเราก็สามารถรับมือเนื้องานที่มีลักษณะคล้ายกันได้ และแสดงให้เห็นว่าเรามีความรู้จริง
หากผู้ที่ได้อ่านบทความนี้รู้สึกว่างานโปรแกรมเมอร์คืองานในฝัน อยากมีโอกาสฝึกทุกทักษะที่ได้กล่าวมาให้แข็งแกร่งขึ้นเพื่อจะได้เติบโตในสายงานนี้ในอนาคต ทาง TechUp มีคอร์สฝึกสอนทักษะที่จำเป็นต่อการทำงานในสายเทคที่น่าสนใจเพื่อทุกคน ซึ่งในหลักสูตรจะมีการปูพื้นฐานให้ทั้ง Technical Skills, Soft Skills, English Skills และ Career Skills ให้ผู้เรียนมีความพร้อมทันทีหลังเรียนในระยะเวลาเพียง 4 เดือน พร้อมกับช่วยเหลือผู้เรียนในขั้นตอนการหางานด้วย หากใครสนใจลองดูรายละเอียดคอร์สของเราได้เลยที่นี่