อภิเดช มหาโคตร (แจ็ค), Software Engineer, ชลบุรี

ผมสร้างระบบซอฟต์แวร์ ที่โตแค่ไหนก็ยังเข้าใจได้

Software Engineer ที่ให้ความสำคัญกับสถาปัตยกรรม ประสบการณ์ของนักพัฒนา และวิธีที่คนกับ AI agent จะสร้างซอฟต์แวร์ไปด้วยกัน

01 · บทความ

คิดดังๆ

ผมเขียนเรื่องวิศวกรรมซอฟต์แวร์ ทั้งสถาปัตยกรรม ประสบการณ์นักพัฒนา และวิธีสร้างซอฟต์แวร์ในยุคที่มี AI agent ร่วมทีม

02 · หลักคิด

ผมมองซอฟต์แวร์ยังไง

หลักไม่กี่ข้อที่ผมยึดไว้เวลาเจอระบบที่ซับซ้อน

  1. “ซอฟต์แวร์เป็นเรื่องของการสื่อสาร ก่อนจะเป็นเรื่องของการเขียนโค้ด”

    โค้ดต้องสื่อสารกับคนอ่านคนต่อไป ไม่ใช่แค่สั่งคอมพิวเตอร์

  2. “สถาปัตยกรรมที่ดี ทำให้เปลี่ยนอะไรก็ไม่แพง”

    จะรู้ว่าออกแบบมาดีหรือไม่ ให้ดูว่าฟีเจอร์ต่อไปทำแล้วรู้สึกธรรมดาแค่ไหน

  3. “abstraction ที่ดีที่สุด คืออันที่เราไม่ต้องสร้าง”

    ทุกเลเยอร์คือภาระที่ใครสักคนต้องแบก มีให้น้อยที่สุดดีกว่า

  4. “เขียนเผื่อคนอ่าน ไม่ใช่เผื่อคนเขียน”

    โค้ดเขียนครั้งเดียว แต่อ่านไปอีกหลายปี

  5. “เทคโนโลยีที่น่าเบื่อแต่เลือกมาอย่างดี มักชนะ”

    ของใหม่มีราคา จ่ายเฉพาะจุดที่คุ้มจริงๆ

  6. “AI ทำให้เขียนโค้ดถูกลง สิ่งที่มีค่าคือวิจารณญาณ”

    คอขวดย้ายจากการพิมพ์ ไปอยู่ที่การตัดสินใจว่าอะไรควรสร้าง

03 · เกี่ยวกับผม

วิศวกรก่อน นักเขียนทีหลัง

ผมชื่อแจ็ค เป็น software engineer อยู่ชลบุรี ผมชอบสร้างระบบที่มีคนใช้งานจริง ตั้งแต่แพลตฟอร์มมหาวิทยาลัย เครื่องมือภายใน ไปจนถึงเว็บขายของ และชอบทำให้มันยังเข้าใจง่ายแม้เวลาจะผ่านไปนานแค่ไหน

โจทย์ที่ผมสนุกที่สุดคือโจทย์เชิงโครงสร้าง ว่าขอบเขตควรอยู่ตรงไหน อะไรควรแก้ได้ง่าย และอะไรไม่ต้องมีก็ได้ ผมใส่ใจประสบการณ์ของนักพัฒนา เพราะคนที่ต้องมาอ่านโค้ดก็เป็นส่วนหนึ่งของระบบเหมือนกัน

นอกจากตัวโค้ด ผมสนใจวิธีที่คนเราสร้างซอฟต์แวร์ด้วยกัน ทั้งการคุยกัน การรีวิว และการตัดสินใจ และช่วงนี้ก็สนใจว่า AI agent จะเข้ามาอยู่ตรงไหนในกระบวนการนั้น ผมเลยเขียนเรื่องพวกนี้ไว้ที่นี่ด้วย

04 · ติดต่อ

มีโจทย์น่าสนใจไหม มาคุยกัน

ผมยินดีคุยเรื่องสถาปัตยกรรม ประสบการณ์นักพัฒนา หรือการสร้างระบบที่เข้าใจง่าย โดยเฉพาะในยุคที่ AI agent เข้ามาร่วมทีม