ETL Developer ต่างกับ Data Engineer อย่างไร??

Data Engineer ทำหน้าที่ออกแบบ Data Pipeline ตั้งแต่การนำข้อมูลจากแหล่งข้อมูลต่าง ๆ มาเก็บไว้รวมกันใน Data Lake และจะมีการจัดโครงสร้างของข้อมูลก่อนที่จะนำไปเก็บไว้ที่ Data Warehouse รวมไปถึงการออกแบบ Data Mart สำหรับข้อมูลที่เป็นผลลัพธ์พร้อมสำหรับการแสดงผล Data Engineer จะเป็นผู้ออกแบบว่า จะใช้เทคโนโลยีอะไรเพื่อให้ Pipeline ทำงานได้อย่างมีประสิทธิภาพ ดังนั้น Data Engineer จะต้องมีความรู้ด้านระบบ และรู้จักเครื่องมือที่หลากหลาย คำว่า ETL ย่อมาจาก Extract-Transform-Load โดย Extract คือ การนำข้อมูลเข้า Transform คือ การปรับแต่งให้ข้อมูลอยู่ในรูปแบบที่เหมาะสม และ Load คือ การนำข้อมูลไปเก็บไว้ในสถานที่ที่จัดเตรียมเอาไว้ กระบวนการ ETL โดยส่วนใหญ่ จะอยู่ในส่วนของ Data Warehouse เนื่องจากใน Data Warehouse เป็นส่วนที่จำเป็นต้องมีการ Transform ข้อมูลก่อนที่จะเข้า Warehouse ในขณะที่ Data Lake จะเก็บเป็น Raw File ทำให้อาจไม่จำเป็นต้อง Transform ดังนั้น ETL Developer จึงทำหน้าที่พัฒนากระบวนการ ETL นั่นเอง แตกต่างจาก Data Engineer ตรงที่ Data Engineer จะ Focus ทั้ง Pipeline ของระบบข้อมูล ตั้งแต่การออกแบบ Data Lake การออกแบบ Data Warehouse การเขียน ER-Diagram การพัฒนา ETL และการทำความเข้าใจในเชิงธุรกิจ ในขณะที่ ETL Developer จะทำงานในส่วนของ ETL อย่างเดียวเท่านั้น สาเหตุที่บางองค์กร มีการแยกตำแหน่ง ETL Developer ออกมาจาก Data Engineer ก็อาจจะเป็นเพราะงาน Query ข้อมูล และการพัฒนางานในส่วนของ ETL มีปริมาณงานจำนวนมาก และเป็นงานที่ไม่ได้ต้องการ Skill เยอะเท่า Data Engineer ในขณะเดียวกัน การเป็น ETL Developer นั่น สามารถต่อยอดไปเป็น Data Engineer ได้ ในอนาคต แต่นั้นก็ขึ้นอยู่กับความสามารถของคนแต่ละคน เพราะงานด้าน Data Engineer จะมีส่วนของการออกแบบ Flow ของข้อมูล ที่มิได้เป็นงานด้านการพัฒนาโปรแกรมเพียงอย่างเดียว ข้อสรุป คือ Data Engineer จะทำงานทั้งในแนวลึก และแนวกว้าง กล่าวคือ คนที่เป็น Data Engineer จะต้องมีความรู้ด้านการบริหาร Database และ Data Management อย่างครบวงจร และควรมีความรู้ในด้านอื่นที่เกี่ยวข้องอีกด้วย เช่น Data Governance, Data Privacy Policy, Security และ Data Analytics ส่วน ETL Developer จะทำงานเป็นส่วนย่อยของ Data Engineer ทั้งนี้ สิ่งที่เหมือนกัน ก็คือ ทั้ง 2 ตำแหน่ง ต้องการความรู้พื้นฐานด้าน Database นั่นเอง

ETL Developer ต่างกับ Data Engineer อย่างไร??

Data Engineer ทำหน้าที่ออกแบบ Data Pipeline ตั้งแต่การนำข้อมูลจากแหล่งข้อมูลต่าง ๆ มาเก็บไว้รวมกันใน Data Lake...