เรียน Python แล้วนำไปใช้งานด้านไหน ? นี่คงจะเป็นคำถามที่ใครหลาย ๆ คนคงตั้งขึ้นมาในหัวเมื่อเริ่มต้นศึกษาใหม่ ๆ ซึ่งสายงาน developer หรือเรียกสั้น ๆ ว่า dev นั้น ก็เป็นอีกสายงานหนึ่งที่โดดเด่นของภาษาไพธอน ซึ่งปกติด้าน web development จะแบ่งรวม ๆ คร่าว ๆ ออกเป็นสองฝั่งคือฝั่ง Front-end (ฝั่งหน้าบ้าน) ก็จะมีภาษาสำหรับฝั่งนี้คือ HTML, CSS และ JavaScript โดยทั้งสามเป็น a must (จำเป็นต้องรู้) สำหรับสาย Front-end เลยก็ว่าได้ ส่วนสายงานของไพธอนก็จะเป็น Back-end อ่านต่อได้เลยครับ
Back-end Developer คืออะไร ?
Back-endเป็นสายงานที่ทำหน้าที่จัดการในส่วนของหลังบ้านหรือมักเรียกอีกแบบว่าฝั่ง “Server Side” โดยหน้าที่ของ dev ฝั่ง back-end นี้ก็จะจัดการทุกอย่างที่เกี่ยวข้องกับหลังบ้าน ไม่ว่าจะเป็นการติดต่อสื่อสารกับฐานข้อมูล การเขียน business logic การจัดการกับ request ที่เข้ามาจากฝั่ง client แล้ว response ข้อมูลออกไป รวมไปถึง process ต่าง ๆ ที่ต้องมีการคำนวณ ฯลฯ แน่นอนครับว่าภาษาไพธอนนั้นเป็นอีกหนึ่งภาษาที่โดดเด่นในด้านนี้
Python Developer Roadmap
โดยในวันนี้จะขอนำเสนอ Roadmap สำหรับ Back-end Developers ว่าเส้นทางก่อนที่จะก้าวไปสู่สายงานนี้ มีหัวข้ออะไรบ้างที่ต้องศึกษา ซึ่งบางคนก็อาจจะยังฉงนสงสัยว่าต้องเรียนอะไรบ้าง ซึ่งเชื่อว่าบทความนี้จะเป็นไกด์ไลน์ให้เป็นอย่างดีได้ครับ
โดยจะอ้างอิง Roadmap ของคุณ Kamran ซึ่งหลาย ๆ คนคงจะเคยผ่านหูผ่านตามาบ้างแล้วครับกับกราฟฟิกดังภาพด้านล่าง ซึ่ง roadmap นี้ยังถูกเก็บไว้ใน repo บน GitHub ของคุณ Kamran ที่มีชื่อว่า developer-roadmapซึ่งมียอด stars สูงถึง 173k stars ซึ่งถือได้ว่าสูงมาก ๆ ติดอันอัน 7 บน GitHub (One of the most starred repositories on GitHub) กัน repo ที่มียอด star สูงสุด
ก่อนที่จะไปดู roadmap มาดูตัวอย่าง tech stack ท่ีทางเว็บที่ทุกคนกำลังอ่านอยู่ในตอนนี้ใช้กันครับ ซึ่งนั่นก็คือเว็บไซต์เล็ก ๆ เรียบง่ายของเราอย่าง stackpython.co ที่หลาย ๆ คนมักจะสอบถามว่าพัฒนาด้วยเทคโนโลยีอะไรบ้าง ซึ่งก็มีการผนวกเอาหลายส่วนมาใช้ร่วมกันเพื่อให้เกิดเป็นเว็บไซต์ ดังนั้นจึงมีความเกี่ยวข้องกับ roadmap นี้ด้วยครับ
STACKPYTHON Website Tech Stack
| Back-end | Django |
| Front-end | Bootstrap |
| Database | PostgreSQL |
| WSGI Server | Gunicorn |
| Web Server | NGINX |
| Cloud (Platform As A Service) | AWS |
| Video Hosting Service | Vimeo |
| Version Control System | GitHub |
| Web Consultant | Stackoverflow |
DevOps: Isara STACKPYTHON
Dev: Non STACKPTYHON
Dev: Oil STACKPYTHON
Dev: Son STACKPYTHON

Credit photo: Python Developer Roadmap
คราวนี้ก็มาถึง roadmap กันจริง ๆ จัง ๆ เสียทีครับ ซึ่งหัวข้อด้านล่างนี้ ทุกคนไม่จำเป็นต้องเรียนให้ครบทุกเทคโนโลยีตามที่ลิสต์มา ยกเว้นในส่วนของพื้นฐานครับในหัวข้อไม่ว่าจะเป็น
- Learn the Basics
- Data Structure and Algorithms
- Advanced Topics (OOP, Regular Expression, etc)
- Version Control Systems
เป็นเหตุผลส่วนตัวของผมเองครับ โดย 4 หัวข้อพื้นฐานด้านบนนี้สำคัญมากกว่าการเลือก tech stack หรือ เทคโนโลยีอื่น ๆ เหตุผลก็เพราะว่าถ้าเรามีพื้นฐานที่ดีแล้ว การที่จะต่อยอดไปศึกษาเทคโนโลยีต่าง ๆ ที่เกี่ยวข้องเพื่อประยุกต์ต่อยอดใช้งานนั้น จะไม่ใช่เรื่องยากอีกต่อไป ยกตัวอย่างเช่น API ถ้าคุณไม่รู้คอนเซ็ปต์หรือพื้นฐานโครงสร้างของ API แต่เราไปเขียนโค้ดอะไรบางอย่างเพื่อให้ API ใช้งานได้ สุดท้ายเราจะได้แค่ก็อปโค้ดคนอื่นมาใช้ แต่เราจะไม่รู้เบื้องลึก เบื้องหลังของมันเลยครับว่า มีการทำงานอย่างไร ดังนั้นเน้นย้ำอีกครั้งครับว่า “พื้นฐาน สำคัญยิ่ง”
ปล. ผมจะพยายามอ้างอิงจากต้นฉบับให้ได้มากที่สุดแต่ใน roadmap ของคุณ kamran ซึ่งผมเห็นว่ายังมีบางหัวข้อที่อาจจะขาดหายไปนิด และขอเสริมเข้ามาเพิ่มเติมให้ครับเช่นหัวข้อ
- Virtual Environments
- Databases
- Cloud Services
- Containerization
โดยจะมีเครื่องหมาย ** เป็นตัวบอกหัวข้อหรือลิสต์ที่ผมเพิ่มเข้ามาให้ครับ
ในลิสต์ด้านล่างหลายคนอาจจะอุทานว่าทำไมมันเยอะอย่างนี้ จะเรียนหรือศึกษาไหวหรอ ? ซึ่งจริง ๆ ถ้าเราศึกษาและเริ่มลงมือทำจริง ๆ จริง ๆ มันจะค่อย ๆ ซึมซับเองครับและค่อย ๆ เก็บทีละส่วนไป
Note: ในแต่ละหัวข้อย่อยด้านล่างจะมีลิ้งค์ไปยังบทความหรือแหล่งอ้างอิงให้ศึกษาเพิ่มเติม
1. Learn the Basics
- Basic Syntax
- Variables and Data Types
- Conditionals
- Type Casting and Exception
- Functions, Built-in Functions
- Lists, Tuples, Sets, Dictionaries
2. Data Structures and Algorithms
- Arrays and Linked Lists
- Heaps, Stacks and Queues
- Hash Tables
- Binary Search Trees
- Recursion
- Sorting Algorithms
3. Advanced Topics
- OOP
- Classes
- Inheritance
- Methods, Dunder
- Regular Expressions
- Decorators
- Lambdas
- Iterators
- Modules (Built-in, Custom)
4. Version Control Systems
5. Package Managers
6. Virtual Environments**
7. 1 Learn a Framework (Synchronous)
7.2 Learn a Framework (Asynchronous)
8. Databases **
- SQLite
9. Cloud Services **
10. Containerization **
11. Testing your Apps
เป็นอย่างไรกันบ้างครับกับ Python Developer Roadmap และในบทความนี้มีส่วนไหนที่ต้องการแนะนำเพิ่มเติมสามารถคอมเมนต์ร่วมแสดงความคิดเห็นได้ที่โพสต์นี้บนเฟซบุ๊คได้เลยครับ และซัพพอร์ตเราโดยการกดไลก์และแชร์ไปที่เฟซบุ๊คได้เลยครับ
หรืออยากสมัครเรียน 📒📒Python Web Programming full Courses 2021 เต็ม ๆ คุ้มค่าและราคาจาก Stackpython ก็เข้าไปอ่านรายละเอียดเพิ่มเติมได้เลยครับ
