Effective Software Development
แพ็กสุดคุ้ม รวม 3 ทักษะ Software Architecture, Database และ Microservices
SECTION_TITLE.PRODUCT_LIST
Software Architecture Design
SECTION_TITLE.OVERVIEW
โปรโมชันสุดคุ้ม!
- พิเศษสำหรับสมัครแบบซีรีส์! กับ Effective Software Development ซื้อแพ็กเดียวได้ถึง 3 คอร์สสุดคุ้ม! ลดพิเศษเหลือเพียง 4,650 บาท จากราคาเต็ม 5,470 บาท
ผ่อนชำระ 0% สูงสุด 10 เดือน
ในปัจจุบันเทคโนโลยีมีการเติบโตขึ้นอย่างก้าวกระโดด ระบบซอฟต์แวร์มีความสามารถและการทำงานที่ซับซ้อนขึ้น ดังนั้นการ Coding จึงไม่ใช้ทักษะทั้งหมดของสายงานโปรแกรมเมอร์ สำหรับการพัฒนาซอฟต์แวร์ในการทำงานจริงย่อมมีองค์ประกอบ Hard skill อื่น ๆ ที่เกี่ยวข้องกับระบบซอฟต์แวร์ องค์ความรู้เหล่านี้ถือเป็นอีกความรู้เชิงลึกของเทคโนโลยีสำคัญ ๆ ที่ทำให้นักพัฒนาซอฟต์แวร์สามารถเขียนโปรแกรมออกมาได้มีประสิทธิภาพ และซอฟต์แวร์ทำงานได้ถูกต้องตามจุดประสงค์มากยิ่งขึ้น
แพ็กคอร์สออนไลน์ รวมทักษะขั้นสูงที่สายงาน Developer ต้องการ เพื่อที่จะทำให้คุณสามารถมองภาพรวมของการทำงานพัฒนาระบบโดยเฉพาะระบบในองค์กรใหญ่ได้ชัดเจนขึ้น เติบโตใน Career path ในสายงานได้อย่างรวดเร็ว เพราะทีม Software Developer หลายทีมทั่วโลกกำลังต้องการบุคลากรที่มีความสามารถทั้งเชี่ยวชาญการเขียนโปรแกรม และมีความรู้เชิงลึกเทคโนโลยีอื่น ๆ ที่จะตอบโจทย์การทำงานในองค์กร Technology ปัจจุบัน
Software Architecture Design รายละเอียดเพิ่มเติม
ในการออกแบบซอฟต์แวร์ขนาดใหญ่ในองค์กร มักจะมีการทำงานร่วมกันโดยคนจำนวนมาก หากเราต่างคนต่างเขียนซอฟต์แวร์ไปในทางที่ตัวเองเห็นว่าดี ซอฟต์แวร์ที่แต่ละคนทำก็อาจจะทำงานร่วมกันไม่ได้หรือมีปัญหาตอนที่ Integrate เป็น Solution ใหญ่
ดังนั้น การทำซอฟต์แวร์ในระดับนั้นจึงจำเป็นต้องมีการแบ่งสันปันส่วน และมีการออกแบบโครงสร้างเพื่อให้ทำงานร่วมกันได้ดีและมองเห็นภาพรวมไปในทางเดียวกัน ทั้งระหว่างนักพัฒนาในทีมพัฒนากันเอง และระหว่างทีมพัฒนาและทีมธุรกิจ รวมไปถึงทีมอื่นๆที่เกี่ยวข้อง นอกจากนี้หลังพัฒนาเสร็จยังต้องสามารถดูแลต่อได้ทั้งงานซัพพอร์ต แก้ไขปัญหาบั๊ก และการพัฒนาต่อยอดเพิ่มเติมได้ในอนาคต
ในคอร์สนี้เราจะพูดถึง Software Architecture Pattern พื้นฐานที่นิยมใช้ในการออกแบบซอฟต์แวร์ขนาดใหญ่ โดยเน้นไปที่เรื่องของรูปแบบการร่วมมือ (Collaboration Pattern) ต่างๆ ตั้งแต่
- Specialist Collaboration การออกแบบโครงสร้างทำงานร่วมกันของทีม Software Developer หลากหลายส่วน เช่น Frontend, Backend, Database และส่วนอื่นๆ เป็นต้น
- Business Collaboration การออกแบบโครงสร้างล้อไปตาม Business model ขององค์กร
- Organization Collaboration การออกแบบโครงสร้างสำหรับองค์กรขนาดใหญ่ที่มีหลายทีมทำงานร่วมกันโดยไม่ขัดแย้งกัน
โดยพูดถึง ข้อดี-ข้อเสีย ประโยชน์และจุดประสงค์ของแต่ละ Pattern เพื่อให้ผู้เรียนเข้าใจหลักการของแต่ละแบบ และสามารถนำไปเลือกใช้ได้ตรงกับงานและโมเดลขององค์กรได้ ประกอบการสอนด้วยวิดีโอการจำลองสถานการณ์ที่เกิดขึ้นในการทำงานจริง และ Case Study ต่างๆ แทรกประกอบตลอดบทเรียน
Purpose-Built Database รายละเอียดเพิ่มเติม
หลายทศวรรษที่ผ่านมาเราได้เห็นการเปลี่ยนแปลงอย่างรวดเร็วของการสร้าง Database ทำให้นักพัฒนาไม่จำเป็นต้องสร้าง Relational Database ซึ่งอาจไม่ตอบโจทย์แอปพลิเคชันในปัจจุบันอีกต่อไป เพราะแอปพลิเคชัน ต่างๆ มีความซับซ้อนขึ้นมาก และมีโอกาสที่จะต้องรองรับจำนวนผู้ใช้งานจำนวนมาก เพื่อรักษาประสิทธิภาพในการทำงาน Developer จำเป็นต้องออกแบบโครงสร้าง Database ให้ดีขึ้น รวมไปถึงการแตกแอปพลิเคชันให้เป็นชิ้นเล็กๆ แล้วใช้เครื่องมือ และ Database ที่ต่างกันออกไป ซึ่ง Database เหล่านั้นถูกสร้างมาเพื่อตอบสนองวัตถุประสงค์นั้นๆ โดยเฉพาะ เราเรียก Database เหล่านี้ว่า Purpose-Built Database เพราะการเลือกใช้ Database ให้ตรงกับ Use case เป็นเรื่องสำคัญมากเพราะระบบจะล่มไม่ล่มก็อยู่ที่ตัว Database
คอร์สนี้จะเป็นการรวบรวมเนื้อหาที่ช่วยทำให้ Developer เข้าใจหลักการเลือกใช้ Database และสามารถตัดสินใจเลือกใช้ Database ให้ตรงกับวัตถุประสงค์การใช้งานอย่างถูกต้องเหมาะสม
Microservices Essentials รายละเอียดเพิ่มเติม
ในโลกที่เทคโนโลยีเข้ามามีบทบาทสำคัญในธุรกิจ การพัฒนาซอฟต์แวร์ย่อมเป็นสิ่งที่สำคัญมากสำหรับองค์กรต่างๆ 2 วิธียอดฮิตในการพัฒนาซอฟต์แวร์ ซึ่งก็คือ Monolithic และ Microservices
Microservices architecture เป็นหนึ่งในแนวคิดสำหรับการออกแบบและพัฒนา software ซึ่งทำการแบ่งส่วนการทำงานของ software ออกเป็นส่วนการทำงานเล็ก ๆ เพื่อช่วยทำให้แต่ละส่วนการทำงานเป็นอิสระต่อกัน สามารถ deploy และรองรับการขยายตัวได้อย่างอิสระ (เปรียบเทียบการทำงานระหว่าง Microservices และ Monolithic)
องค์กรของคุณเหมาะกับ Monolithic หรือ Microservices? จะเริ่มทำ Microservices ในองค์กรต้องทำอย่างไร? หรือการทำ Microservices ที่ทำอยู่ในองค์กรมาถูกทางแล้วหรือไม่? สามารถหาคำตอบได้ในคอร์สนี้
โดยในคอร์สนี้จะมีเทคนิคและวิธีการเริ่มต้นทำ Microservices ที่หลากหลาย ที่จะทำให้คุณเริ่มต้นระบบงานตามแนวคิด Microservices ได้อย่างมีประสิทธิภาพ เตรียมพร้อมสู่การออกแบบ พัฒนา และติดตั้งระบบงาน Microservices ต่อไป สอนโดยผู้เชี่ยวชาญที่ทำงานด้านนี้มากว่า 10 ปี
SECTION_TITLE.INSTRUCTOR
SECTION_TITLE.COURSE_OUTLINE
Purpose-built Database
1.1 Introduction
- Welcome to Class
- Why purpose-built Databases
- Choosing purpose-built Databases
- Factors when choosing DB
- Conclusion
1.2 Relational, NoSQL and In-memory
- Introduction
- Hosting DB Options
- Scaling Relational DB
- In-memory Cache
- Federation/ Sharding
- NoSQL CAP Theorem
- DynamoDB Data Model
- Conclusion
1.3 Other Purpose-built Databases
- Introduction
- In-AppSubscription
- Data Warehouse
- Data Lake
- Time Series
- Graph
- Search Engine
- Conclusion
1.4 6 Pillars of Well-architected Frameworks
- Intro to The 6 Pillars of Well-Architected Framework
- (1) Operational Excellence
- (2) Security
- (3) Reliability
- (4) Performance Efficiency
- (5) Cost Optimization
- (6) SustainabilityConslusion
1.5 Example System Architecture
- Introduction
- Use case- Geek Pizza 3.141 Delivery Web App
- Creating Database Part 1
- Creating Database Part 2
- Introducing CacheReports and Analytics
- Group Ordering
- Loyalty Program
- Product Recommendation
- Thanks for Joining!
Microservices Essentials
1.1 Intro to Microservices
- Why Microservices?
- Microservices in Real Lifepreview
1.2 Understanding Microservices
- What Are Microservices?
- Types of Coupling: Tight, Loose, No
- Types of Communication: Synchronous vs Asynchronous
- Deploying and Scaling
1.3 Using Microservices
- How to Use Microservices?
- API Composition
- Storing Copy of Data
- Command Query Responsibility Segregation
- CQRS Example
- Managing Data Consistency
- Synchronous Process
- Event-based with Saga Pattern
- Saga Pattern Example
- Application Metrics
- Distributed Tracing
- Log Aggregation / Centralized Log
- Microservices Testing
1.4 Advantages and Disadvantages of Microservices
- Advantages of Microservices
- Disadvantages of Microservices
SECTION_TITLE.FAQS
Q:
ซื้อคอร์สออนไลน์ในนามนิติบุคคลผ่านหน้าเว็บไซต์ได้หรือไม่
A:
สามารถทำได้ โดยในหน้าคำสั่งซื้อ กดเครื่องหมายถูกในช่อง "ต้องการออกใบกำกับภาษี/ใบเสร็จรับเงิน" จากนั้นเลือก "นิติบุคคล/บริษัท" และคำสั่งซื้อจะมีการหักภาษี ณ ที่จ่าย 3% โดยอัตโนมัติ ในกรณีบริษัทของท่านไม่ใช่ 3% กรุณาส่งรายละเอียดที่ต้องการสั่งซื้อมาที่ hello@skooldio.com
Q:
วิธีขอใบกำกับภาษีในนามนิติบุคคลและใบกำกับภาษีสำหรับบุคคลทั่วไป
A:
กดเครื่องหมายถูกในช่อง "ต้องการออกใบกำกับภาษี/ใบเสร็จรับเงิน" ในหน้าชำระเงินและเลือกประเภทบุคคลทั่วไปหรือนิติบุคคล และกรอกรายละเอียด
Q:
คอร์สออนไลน์สามารถกลับมาเรียนซ้ำได้หรือไม่
A:
สำหรับคอร์สที่ซื้อในนามบุคคลทั่วไป คอร์สมีอายุตลอดชีพ สำหรับคอร์สที่ซื้อในนามนิติบุคคล สามารถกลับมาเรียนซ้ำได้ภายใน 1 ปี
Q:
สามารถแก้ไขใบกำกับภาษีจากในนามนิติบุคคลเป็นใบกำกับภาษีบุคคลทั่วไป และ ใบกำกับภาษีบุคคลทั่วไปเป็นใบกำกับภาษีในนามนิติบุคคลได้หรือไม่
A:
หลังจากได้รับใบกำกับภาษีแล้ว หากต้องการแก้ไขข้อมูล สามารถทำได้ภายใน 7 วัน นับจากวันที่ได้รับใบกำกับภาษีแบบเต็มรูปทางอีเมล โดยสามารถแก้ไขข้อมูลได้เฉพาะ ชื่อ-นามสกุล เลขประจำตัวผู้เสียภาษีและที่อยู่เท่านั้น จะไม่สามารถแก้ไขข้อมูลคำสั่งซื้อได้