วันก่อนเห็นคนแชร์โพสต์ของ ดร. แป้ง เกี่ยวกับว่าองค์กรในไทยต้องการ Data Engineer มากกว่า Data Scientist ก็เลยอยากมาแชร์เพิ่มเติมเพื่อให้เข้าใจความแตกต่างของ 2 อาชีพนี้กันมากขึ้นครับ
สำหรับท่านใดยังไม่เคยอ่าน ด้านล่างนี้เป็นโพสของ ดร.แป้ง เขียนได้ดีมากครับ ลองอ่านกันดูก่อน
และสำหรับท่านใดที่ยังไม่เคลียร์ว่า Data Science คืออะไร แนะนำให้อ่านบทความ Data Science คืออะไร? สายงานนี้ทำงานอะไรบ้าง กันก่อนครับ
Data Engineer ต่างกับ Data Scientist ยังไง
โปรเจค Data Science ไม่ได้ต้องการแค่ Data Scientist เท่านั้นครับ แต่มันเป็นการนำข้อมูลตั้งแต่ต้นน้ำ (เช่น จากฐานข้อมูล MySQL) มาเก็บในระบบฐานข้อมูลที่เหมาะกับการนำไปวิเคราะห์ (เช่น Data Warehouse) เสร็จแล้วนำมาวิเคราะห์ สร้างโมเดลเพื่อนำไปใช้ประโยชน์ทางธุรกิจ หรือ Data Visualization / Report เพื่อนำเสนอผู้ที่มีอำนาจตัดสินใจ
ตัวละครหลัก ๆ ในโปรเจค Data Science ก็เลยจะมี 2 ตัวละครใหญ่ ๆ ครับ
- Data Engineer
- Data Scientist
Data Engineer คือ คนที่ช่วยสร้างระบบในการส่งข้อมูล (Data Pipeline) และระบบจัดเก็บข้อมูล (เช่น Data Warehouse หรือ Data Lake) อาชีพนี้เน้นความสามารถด้านการเขียนโปรแกรม, Software Engineering, และความรู้เกี่ยวกับเครื่องมือการจัดการ Big Data ที่มีเป็นสิบ ๆ ตัวให้เลือกใช้
คนที่เป็น Data Engineer ควรตอบได้ว่าในงานแบบไหนต้องใช้เครื่องมือแบบไหน และถ้าสามารถใช้งาน Public Cloud เช่น Google Cloud Platform (GCP) หรือ Amazon Web Services (AWS) ได้ก็จะมีประโยชน์มากในหน้าที่การงาน
Data Scientist คือ คนที่ช่วยวิเคราะห์ข้อมูล (Data Analysis) และสร้างโมเดล อาชีพนี้เน้นความรู้ด้านคณิตศาสตร์ และควรมีความเข้าใจในธุรกิจเพื่อให้สื่อสารกับฝ่ายต่าง ๆ ในบริษัทได้เข้าใจว่าเค้าต้องการอะไร เพื่อจะได้นำเสนอข้อมูลที่ตอบโจทย์
ตำแหน่ง Data Scientist ไม่จำเป็นต้องเก่งด้าน Software Engineering มากนัก แต่ควรจะเขียนโค้ดพอได้ในระดับหนึ่ง เพราะในปัจจุบัน ภาษา R และ Python มี Library ที่ช่วยให้ชีวิตการวิเคราะห์ข้อมูล หรือทำโมเดลของเราง่ายขึ้นเยอะมาก ๆ
บางคนอาจจะเคยได้ยินคำว่า Data Analyst ด้วย อันนั้นคืออาชีพร่าง 1 ก่อนพัฒนาเป็น Data Scientist ครับ เน้นการวิเคราะห์ข้อมูล และสรุปส่งเป็น Report ให้กับทีมบริหาร
สรุปง่าย ๆ ได้ว่า Data Engineer เป็นคนสร้างระบบ ส่วน Data Scientist เป็นคนเอาระบบมาใช้ประโยชน์ นั่นเอง
แอดเพิร์ธ Data science ชิลชิล
Data Engineer สำคัญกว่า Data Scientist หรือเปล่า
คำตอบ คือ ขึ้นอยู่กับองค์กรว่ามีความพร้อมในระดับไหน ครับ
สำหรับองค์กรที่ยังใหม่ในการทำโปรเจค Data Science จำเป็นต้องสร้างระบบจัดการข้อมูลของตัวเองขึ้นมาก่อนครับ เพราะฉะนั้นเค้าก็ต้องการทีม Data Engineer มาช่วยพัฒนาระบบ อาจจะมี Data Scientist / Data Analyst สัก 1 คน เพื่อคอยทำ Report
ตัวอย่างเคสจริง: บริษัทด้านโทรคมนาคมขนาดใหญ่แห่งหนึ่ง มีลูกค้าเป็นล้านราย และมีข้อมูลเข้ามาจำนวนมาก เค้าก็จ้างทีม Data Engineer เข้ามาพัฒนา Hadoop Cluster ของตัวเอง หลักจากนั้นเค้าค่อยจ้าง Data Scientist กับ Data Analyst เพื่อนำข้อมูลใน Hadoop Cluster มาวิเคราะห์อีกที
แปลว่าถ้าองค์กรไหนมีทีม Data Engineer ทำระบบพร้อมใช้แล้ว ก็ได้เวลาที่จะจ้าง Data Scientist และ Data Analyst เข้ามานำข้อมูลไปใช้ให้เกิดประโยชน์กับองค์กรต่อครับ
วันก่อนแอดอ่าน บทความของ Oreilly มา เค้าแนะนำว่า สัดส่วนของ Data Engineer ต่อ Data Scientist ควรเป็น 2 – 5 Data Engineer : 1 Data Scientist
อย่างไรก็ตาม ถึงแม้ Data Engineer จะเป็นอาชีพที่ต้องการมากกว่า แต่โปรแกรมที่สอนในมหาวิทยาลัยส่วนใหญ่จะเป็นเกี่ยวกับ Data Science ทำไมถึงเป็นแบบนั้น ?
ถ้าอยากรู้ รอติดตามบทความหน้าเกี่ยวกับ Data Engineer ครับ แอดจะมาเล่าให้ฟังกันแบบเจาะลึกว่าอาชีพนี้เป็นยังไง (จริง ๆ เขียนไว้นานแล้ว แต่แอดดองเพราะเนื้อหาแน่นมาก เขียนไม่จบซะที)
ถ้าบทความนี้มีประโยชน์ ฝากแชร์ให้เพื่อน ๆ กันครับ ยิ่งแชร์เยอะ แอดยิ่งมีแรงกดดันในการเขียนบทความหน้าให้เสร็จครับ และติดตามบทความใหม่ ๆ จาก Data Science ชิลชิลได้ตลอด ทาง Facebook Page Data Science ชิลชิล นะครับผม