คำถามที่น่าสนใจ สำหรับคนที่อยากจะเป็น Java programmer/developer
ว่าจะต้องเรียนรู้ หรือมีความรู้และความสามารถอะไรบ้าง ?
เป็นคำถามที่ตอบยากมาก
เนื่องจากวิธีการมีเยอะมาก ๆ
ไม่ว่าจะเป็นการลงมือทำ การสอบถาม การเรียน
จากนั้นนำมาปรับปรุงอยู่อย่างสม่ำเสมอ

แต่เพื่อให้มีแนวทางที่เข้าใจง่ายหน่อย
จึงไปค้นหาว่ามีใครสรุปแนวทางไว้หรือไม่
ก็ไปเจอรูปสรุปเกี่ยวกับ Java programmer/developer roadmap 2021
จึงทำการสรุปไว้นิดหน่อย
น่าจะพอมีประโยชน์ต่อผู้เริ่มต้น

เรื่องที่ 1 ความรู้พื้นฐาน

  • Version Control System คือ Git
  • เกี่ยวกับการใช้งาน Linux ขั้นพื้นฐาน ทั้ง command line และ shell script
  • เรื่องของ Data structure และ algorithm ที่เหมาะสม สำหรับการจัดการข้อมูลและประมวลผล

เรื่องที่ 2 Programming skills

  • แนวคิดในการแก้ไขปัญหาต่าง ๆ
  • เรื่องของ networking เช่น HTTP protocol เป็นต้น
  • พื้นฐานของ Design pattern

เรื่องที่ 3 Java Programming

  • ทำความเข้าใจเกี่ยวกับ JDK vs JRE vs JVM ซึ่งมีทั้ง vendor และ version ที่ต้องเลือกใช้งาน
  • เกี่ยวกับ feature ที่สำคัญของ Java เช่น Collection framework ที่เตรียมเรื่องของ Data structure และ Algorithm ไว้ให้ใช้งาน
  • เครื่องมือที่สำคัญคือ IDE สำหรับการเขียนและ run code รวมทั้ง build tool ต่าง ๆ ทั้ง Apache Maven และ Gradle
  • Framework และ library ที่ได้รับความนิยมในการพัฒนาเช่น Spring framework และ Spring boot รวมถึง ORM เช่น Hibernate และ JPA
  • การทดสอบแบบอัตโนมัติใน level ต่าง ๆ ด้วย JUnit 5 สำหรับ Unit testing เป็นต้น
  • ความรู้เกี่ยวกับ Database ทั้ง RDBMS และ NoSQL

เมื่อเราเรียนรู้เรื่องพื้นฐานแล้ว จากนั้นก็ลงมือทำและเรียนรู้ต่อไปครับ
Keep learning …

แสดงดังรูป