วันนี้ทำงาน

AEM คืออะไร มารู้จัก CMS ที่บริษัทระดับ Enterprise ใช้กัน

AEM คืออะไร มารู้จัก CMS ที่บริษัทระดับ Enterprise ใช้กัน

ถ้าถามว่า “รู้จัก WordPress มั้ย” คนทำเว็บแทบทุกคนตอบได้ทันที แต่ถ้าถามว่า “รู้จัก AEM มั้ย” หลายคนส่ายหัว บางคนเคยได้ยินชื่อแต่ไม่รู้ว่าคืออะไร และส่วนน้อยมากที่รู้จักดีเพราะเคยทำงานกับมันจริงๆ

และผมก็แอบไปได้สัมผัสกับมันมาครับ

AEM คือ CMS อีกตัวหนึ่ง แต่ไม่ธรรมดา

AEM มาจาก Adobe Experience Manager เป็น CMS (Content Management System) หรือระบบจัดการเนื้อหาเว็บไซต์ เหมือนกับ WordPress แต่ทำโดย Adobe

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

ฟังดูเหมือน WordPress เลยและใช่ครับ หน้าที่หลักมันคล้ายกัน แต่ target user ต่างกันอย่างสิ้นเชิง

WordPress กับ AEM ต่างกันยังไง

ถ้าจะเปรียบให้เห็นภาพ WordPress เหมือนบ้านสำเร็จรูปที่ซื้อมาอยู่ได้เลย ราคาเข้าถึงได้ ปรับแต่งได้เยอะ และมีคนใช้เยอะมากจนหาช่างได้ง่าย

AEM เหมือนตึก custom ที่สถาปนิกออกแบบให้องค์กรขนาดใหญ่โดยเฉพาะ ทุกอย่าง built-to-spec ตั้งแต่ต้น รองรับการใช้งานพร้อมกันหลักพันคน มีระบบ permission ซับซ้อน มีระบบ workflow สำหรับอนุมัติเนื้อหาก่อนเผยแพร่ มีระบบ multi-site จัดการหลายเว็บในระบบเดียว และ integrate กับ product อื่นใน Adobe ecosystem ได้ครบ

สำหรับ WordPress สิ่งเหล่านี้ทำได้บางส่วน แต่ต้องพึ่งปลั๊กอินต่างๆ และยิ่งเว็บใหญ่ขึ้น การ maintain ก็ยิ่งซับซ้อนขึ้นเรื่อยๆ

ทำไมถึงแพงมาก

ราคา license ของ AEM อยู่ในระดับหลักล้านบาทต่อปี ขึ้นอยู่กับขนาดและ package ที่เลือก

ยังไม่รวม implementation cost ที่ต้องจ้าง developer มา setup ระบบ, ค่า hosting บน Adobe cloud, และค่า maintain ระบบต่อเนื่อง

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

คนที่ใช้ AEM จึงมักเป็นธนาคาร, บริษัทประกัน, สายการบิน, แบรนด์ retail ขนาดใหญ่, หรือองค์กรที่มีเว็บหลายภาษาหลายประเทศและต้องการจัดการทุกอย่างในระบบเดียว

ทำไมคนเรียนรู้น้อย

เหตุผลตรงมากครับ ถ้าคุณไม่ได้ทำงานในองค์กรที่ใช้ AEM คุณก็แทบไม่มีโอกาสได้สัมผัสมันเลย

WordPress นั้น download ฟรี ติดตั้งบน local ได้ภายใน 5 นาที มี documentation เป็นล้านหน้า และมี tutorial บน YouTube ที่ทำให้คนเริ่มต้นได้ทุกวัน

AEM ไม่มี free tier ไม่มี trial ง่ายๆ ให้ลองเล่น documentation หลักอยู่บน Adobe site ซึ่งถ้าไม่มีพื้นฐาน Java และ OSGi (framework ที่ AEM ใช้ข้างใต้) อ่านแล้วก็งงอยู่ดี

ผลคือ knowledge เรื่อง AEM มันถ่ายทอดกันผ่านการทำงานในโปรเจกต์จริงเป็นหลัก ถ้าไม่มีคนพา เรียนเองแทบไม่ได้ แต่จริงๆ แล้วก็มีช่อง Youtube พี่ๆ อินเดียสอนอยู่นะ 555

เรื่องที่น่าสนใจบางอย่างเกี่ยวกับ AEM

AEM อยู่บน Java ในขณะที่ WordPress อยู่บน PHP, AEM ถูกสร้างบน Java และใช้ Apache Sling เป็น framework หลัก ซึ่งหมายความว่า developer ที่จะมาทำ AEM ต้องมีพื้นฐาน Java หรืออย่างน้อยก็ต้องไม่กลัวมัน

เนื้อหาเก็บแบบ tree แทนที่จะเก็บเนื้อหาในฐานข้อมูลตาราง แบบที่ WordPress ทำ AEM เก็บทุกอย่างเป็น JCR (Java Content Repository) ซึ่งมีโครงสร้างแบบ folder ซ้อนกัน นึกภาพ file system ที่ทุกอย่างเป็น node และ property

Author กับ Publish แยกกัน AEM มีสองสภาพแวดล้อมที่แยกขาดจากกัน ฝั่ง Author คือที่ที่ทีม content เข้ามาแก้ไขเนื้อหา ฝั่ง Publish คือที่ที่ user ทั่วไปเห็น ทุกครั้งที่อนุมัติเนื้อหาแล้ว มันจะ replicate ข้ามไปยัง Publish server การแยกแบบนี้ทำให้ระบบปลอดภัยและ stable มากขึ้น แต่ก็เพิ่มความซับซ้อนในการ setup

AEM สามารถ render เองได้เหมือน WordPress หรือสามารถทำ Headless แยกได้เช่นเดียวกับ WordPress เพื่อลด Load

แล้วมันเกี่ยวกับเราในฐานะ web developer ยังไง

ถ้าคุณทำงานกับ startup, agency เล็กๆ, หรือฟรีแลนซ์ ความจริงคือคุณอาจไม่จำเป็นต้องรู้ AEM เลยก็ได้ WordPress, Next.js, หรือ platform อื่นๆ ตอบโจทย์ได้ดีกว่าในแง่ cost และ speed

แต่ถ้าคุณสนใจทำงานกับ enterprise, บริษัทขนาดใหญ่, หรือ agency ที่รับงาน corporate AEM เป็น skill ที่หายากมากและค่าตัวสูงตามไปด้วย เพราะคนที่รู้จริงในตลาดมีน้อย

ผมมองว่า AEM ไม่ใช่สิ่งที่ทุกคนต้องรู้ แต่ถ้าได้โอกาสทำงานกับมัน มันสอนหลายอย่างที่เปลี่ยนวิธีคิดเรื่อง content architecture ไปเลยครับ

มีใครเคยทำงานกับ AEM บ้างมั้ยครับ