Junior Developer ยุค AI: ควรฝึกทักษะอะไร

ถ้าคุณเพิ่งเริ่มทำงานเป็นนักพัฒนา หรือกำลังเรียนเขียนโปรแกรมอยู่ คงเคยมีคำถามในใจว่า "AI เขียนโค้ดได้ขนาดนี้ แล้วเราจะฝึกไปทำไม" คำถามนี้เข้าใจได้ แต่คำตอบจากประสบการณ์ของคนที่ทำงานจริงคือ AI ทำให้การ "พิมพ์โค้ด" ง่ายขึ้น แต่ไม่ได้ทำให้การ "เข้าใจว่าโค้ดถูกหรือผิด" ง่ายขึ้นเลย และทักษะอย่างหลังนี่แหละที่ทำให้คนหนึ่งคนมีคุณค่าในทีม บทความนี้จะชวนดูว่า junior developer ยุคนี้ควรฝึกอะไร ใช้ AI แบบไหนถึงเก่งขึ้นจริง และปิดท้ายด้วยแผนฝึก 30 วันที่ทำได้ควบคู่กับงานประจำ
พื้นฐานยังสำคัญ อาจสำคัญกว่าเดิมด้วย
ลองนึกภาพ AI เสนอโค้ดมาสองแบบ แบบหนึ่ง query ฐานข้อมูลในลูป อีกแบบใช้ eager loading ถ้าเราไม่รู้จักปัญหา N+1 query เราจะเลือกไม่ถูก หรือ AI เขียนโค้ดที่ต่อ string เข้าไปใน SQL ตรง ๆ ถ้าเราไม่รู้จัก SQL injection เราจะไม่เห็นว่ามันอันตราย
พื้นฐานที่ควรมีให้แน่นไม่ได้หมายถึงต้องท่องทุกฟังก์ชัน แต่หมายถึงความเข้าใจแนวคิดเหล่านี้
- ภาษาที่ใช้ทำงาน เช่น PHP หรือ JavaScript: type, scope, error handling, การทำงานของ array และ object
- HTTP และเว็บ: request/response, status code, cookie, session, การทำงานของฟอร์ม
- ฐานข้อมูล: SQL พื้นฐาน, join, index, transaction
- ความปลอดภัยพื้นฐาน: SQL injection, XSS, CSRF, การเก็บรหัสผ่าน (ดูหัวข้อ OWASP Top 10 ที่ owasp.org)
- Git: commit, branch, merge, การย้อนกลับ
สิ่งเหล่านี้คือ "เครื่องมือตรวจงาน" ของเรา ยิ่ง AI เขียนโค้ดได้มาก เรายิ่งต้องตรวจงานได้เก่ง
อ่านโค้ดให้เป็น
นักพัฒนาใช้เวลาอ่านโค้ดมากกว่าเขียนอยู่แล้ว และในยุคที่ AI สร้างโค้ดได้ทีละหลายสิบบรรทัด สัดส่วนนี้ยิ่งเพิ่มขึ้น ทักษะการอ่านโค้ดที่ควรฝึก
- ไล่ตาม flow ของ request หนึ่งตัว ตั้งแต่ route ไป controller, model, view
- อ่านโค้ดของ framework ที่ใช้ เช่น เปิดดูว่า
ActiveRecord::save()ของ Yii2 ทำอะไรบ้างข้างใน - อ่าน PR ของคนอื่นในทีม แม้ไม่ได้ถูกขอให้รีวิว แล้วลองตั้งคำถามว่าทำไมเขาเขียนแบบนี้
- อธิบายโค้ดที่ AI เขียนให้ตัวเองฟังทีละบรรทัด ก่อนกดยอมรับ
กติกาง่าย ๆ ที่ใช้ได้ผล: ถ้าอธิบายไม่ได้ อย่า commit
Debug ให้เป็นระบบ
เมื่อโค้ดพัง วิธีที่ง่ายที่สุดคือแปะ error ให้ AI แล้วลองทุกวิธีที่มันเสนอจนกว่าจะหาย แต่ถ้าทำแบบนี้ตลอด เราจะไม่เคยเข้าใจว่าปัญหาเกิดจากอะไร และจะติดอยู่ทันทีเมื่อเจอปัญหาที่ AI ก็เดาไม่ถูก
ฝึกขั้นตอนนี้จนเป็นนิสัย ก่อนจะถาม AI
- อ่าน error message และ stack trace ให้จบ ดูว่าเกิดที่ไฟล์ไหน บรรทัดไหน
- ทำให้ปัญหาเกิดซ้ำได้ (reproduce) ด้วยขั้นตอนที่แน่นอน
- ตั้งสมมติฐาน แล้วพิสูจน์ด้วยการ log หรือ debugger ไม่ใช่ด้วยการเดาแก้
- เมื่อแก้แล้ว อธิบายได้ว่าทำไมมันหาย
จากนั้นค่อยใช้ AI ช่วยในขั้นที่ติด เช่น "สมมติฐานของผมคือ X เพราะเห็น Y ใน log มีความเป็นไปได้อื่นอีกไหม" คำถามแบบนี้ได้คำตอบที่มีประโยชน์กว่า "ช่วยแก้ error นี้ให้หน่อย" มาก
ถามคำถามให้ดี ทั้งกับคนและกับ AI
ทักษะการถามเป็นทักษะเดียวกันไม่ว่าจะถามรุ่นพี่ ถามในกลุ่มชุมชน หรือถาม AI คำถามที่ดีมีองค์ประกอบคล้ายกัน คือบอกว่าพยายามทำอะไร ทำอะไรไปแล้ว ผลที่คาดหวังคืออะไร ผลที่ได้จริงคืออะไร และแนบโค้ดหรือ error ที่เกี่ยวข้องแบบพอดี
เป้าหมาย: บันทึกฟอร์มสมัครสมาชิกใน Yii2
ทำไปแล้ว: สร้าง model SignupForm และ action signup
คาดหวัง: กดบันทึกแล้ว redirect ไปหน้า login
ได้จริง: หน้าเดิมโหลดใหม่ ไม่มี error แสดง
ตรวจแล้ว: $model->validate() คืนค่า false แต่ $model->errors ว่าง
สงสัยว่า: rules() อาจตั้ง scenario ไม่ตรง
โค้ดที่เกี่ยวข้อง: (แนบ rules() และ action)
หลายครั้ง แค่เขียนคำถามให้ครบแบบนี้ เราก็เจอคำตอบเองก่อนจะได้ส่ง
ใช้ AI เป็นครู ไม่ใช่คนทำการบ้าน
AI เป็นครูที่อดทนที่สุดที่เราเคยมี ถามซ้ำได้ไม่จำกัด ขอตัวอย่างเพิ่มได้ ขอให้อธิบายแบบง่ายลงได้ แต่ถ้าใช้ผิดวิธี มันจะกลายเป็นคนทำการบ้านแทนเรา แล้วเราจะไม่ได้อะไรเลย
| ใช้แบบคนทำการบ้าน | ใช้แบบครู |
|---|---|
| "เขียนระบบ login ให้หน่อย" | "ผมเขียน login แบบนี้ ช่วยชี้จุดที่ไม่ปลอดภัยโดยยังไม่ต้องแก้ให้" |
| "แก้ error นี้ให้" | "error นี้หมายความว่าอะไร และควรตรวจอะไรก่อน" |
| คัดลอกคำตอบไปใช้ทันที | พิมพ์ตามเอง แก้เอง แล้วถามเมื่อไม่เข้าใจ |
| ไม่เคยถามว่าทำไม | "ทำไมใช้วิธีนี้ มีทางเลือกอื่นไหม ข้อเสียคืออะไร" |
เทคนิคที่ได้ผลคือบอก AI ตรง ๆ ว่า "ผมกำลังฝึก อย่าเพิ่งเฉลย ให้ถามนำหรือให้ hint ทีละขั้น" และอย่าลืมว่า AI ก็ผิดได้ เมื่อมันอธิบายอะไร ให้ไปตรวจกับเอกสารทางการ เช่น php.net หรือ www.yiiframework.com ด้วย
แผนฝึก 30 วัน
แผนนี้ออกแบบให้ใช้วันละประมาณ 30–60 นาที ควบคู่กับงานประจำ ปรับหัวข้อตามภาษาและ framework ที่คุณใช้ได้
| ช่วง | เป้าหมาย | กิจกรรม |
|---|---|---|
| วันที่ 1–7 | ทบทวนพื้นฐาน | เลือกหัวข้อวันละเรื่อง (HTTP, SQL join, index, XSS, CSRF, Git branch, error handling) อ่านจากเอกสารทางการ แล้วให้ AI ตั้งคำถาม 5 ข้อเพื่อทดสอบความเข้าใจ ตอบเองก่อนดูเฉลย |
| วันที่ 8–14 | อ่านโค้ด | วันละหนึ่งส่วนของโปรเจกต์จริงหรือของ framework ไล่ flow แล้วเขียนสรุปสั้น ๆ ด้วยภาษาตัวเอง จากนั้นค่อยให้ AI ตรวจว่าสรุปถูกไหม |
| วันที่ 15–21 | Debug | ใช้ bug จริงจากงาน หรือให้ AI สร้างโค้ดที่มี bug ซ่อนอยู่ แล้วหาเองด้วยขั้นตอน reproduce → สมมติฐาน → พิสูจน์ จดบันทึกทุกครั้ง |
| วันที่ 22–28 | เขียนและรีวิว | สร้างฟีเจอร์เล็กหนึ่งอย่าง (เช่น CRUD พร้อมค้นหา) เขียนเองก่อน แล้วให้ AI รีวิวในมุมความปลอดภัย ประสิทธิภาพ และความอ่านง่าย แก้ตามที่เห็นด้วยและจดเหตุผลข้อที่ไม่เห็นด้วย |
| วันที่ 29–30 | สะท้อนและแบ่งปัน | ทบทวนบันทึกทั้งเดือน เขียนสรุปสิ่งที่เรียนรู้หนึ่งโพสต์ แล้วแบ่งปันในทีมหรือชุมชนนักพัฒนา |
ข้อสำคัญคือ "จดบันทึก" ทุกวัน สั้น ๆ ก็ได้ ว่าวันนี้เรียนอะไร ติดตรงไหน บันทึกนี้จะเป็นหลักฐานความก้าวหน้าของตัวเอง และใช้คุยกับหัวหน้าเรื่องการพัฒนาตัวเองได้ดีด้วย
สรุป
- AI ทำให้พิมพ์โค้ดง่ายขึ้น แต่ทักษะตรวจว่าโค้ดถูกหรือผิดยังต้องสร้างเอง และพื้นฐานคือเครื่องมือตรวจงานนั้น
- ฝึกอ่านโค้ดและ debug อย่างเป็นระบบ กติกาง่าย ๆ คือถ้าอธิบายไม่ได้ อย่า commit
- ถามคำถามให้ครบองค์ประกอบ ใช้ได้ทั้งกับคนและกับ AI
- ใช้ AI เป็นครูที่ให้ hint และอธิบาย ไม่ใช่คนทำการบ้านแทน และตรวจกับเอกสารทางการเสมอ
ลองทำ
เริ่มแผน 30 วันตั้งแต่วันนี้ด้วยวันแรก เลือกหัวข้อพื้นฐานหนึ่งเรื่องที่คิดว่าตัวเองยังไม่แน่น เช่น database index อ่านเอกสารทางการ 20 นาที แล้วพิมพ์ใส่ AI ว่า "ผมเพิ่งอ่านเรื่อง index ช่วยตั้งคำถาม 5 ข้อทดสอบความเข้าใจ อย่าเพิ่งเฉลยจนกว่าผมจะตอบ" ตอบให้ครบ แล้วจดลงบันทึกว่าข้อไหนตอบผิดและเพราะอะไร
ความคิดเห็น (0)
ยังไม่มีความคิดเห็น — เริ่มคุยเป็นคนแรก ถามสิ่งที่สงสัย หรือแชร์ประสบการณ์ของคุณ