BUNDLE.HEADER

Effective Software Development

แพ็กสุดคุ้ม รวม 3 ทักษะ Software Architecture, Database และ Microservices

4,650.00
บาท
5,470.00
บาท

SECTION_TITLE.PRODUCT_LIST

Software Architecture Design
COURSE

Software Architecture Design

เข้าใจหลักการออกแบบ Software อย่างเป็นระบบ เพื่อให้ผู้เรียนเข้าใจหลักการของแต่ละแบบ และสามารถนำไปเลือกใช้ให้ตรงกับงานและโมเดลขององค์กรได้
4 ชั่วโมง
Purpose-built Database
COURSE

Purpose-built Database

คอร์สนี้จะเป็นการรวบรวมเนื้อหาที่ช่วยทำให้ Developer เข้าใจหลักและสามารถตัดสินใจเลือกใช้ Database ให้ตรงกับวัตถุประสงค์การใช้งานอย่างถูกต้องเหมาะสม
2-3 ชั่วโมง
Microservices Essentials
COURSE

Microservices Essentials

องค์กรของคุณเหมาะกับ Monolithic หรือ Microservices? จะเริ่มทำ Microservices ในองค์กรต้องทำอย่างไร? สามารถหาคำตอบได้ในคอร์สนี้
2-3 ชั่วโมง

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 รายละเอียดเพิ่มเติม

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 รายละเอียดเพิ่มเติม

Purpose-built Database

หลายทศวรรษที่ผ่านมาเราได้เห็นการเปลี่ยนแปลงอย่างรวดเร็วของการสร้าง Database ทำให้นักพัฒนาไม่จำเป็นต้องสร้าง Relational Database ซึ่งอาจไม่ตอบโจทย์แอปพลิเคชันในปัจจุบันอีกต่อไป เพราะแอปพลิเคชัน ต่างๆ มีความซับซ้อนขึ้นมาก และมีโอกาสที่จะต้องรองรับจำนวนผู้ใช้งานจำนวนมาก เพื่อรักษาประสิทธิภาพในการทำงาน Developer จำเป็นต้องออกแบบโครงสร้าง Database ให้ดีขึ้น รวมไปถึงการแตกแอปพลิเคชันให้เป็นชิ้นเล็กๆ แล้วใช้เครื่องมือ และ Database ที่ต่างกันออกไป ซึ่ง Database เหล่านั้นถูกสร้างมาเพื่อตอบสนองวัตถุประสงค์นั้นๆ โดยเฉพาะ เราเรียก Database เหล่านี้ว่า Purpose-Built Database เพราะการเลือกใช้ Database ให้ตรงกับ Use case เป็นเรื่องสำคัญมากเพราะระบบจะล่มไม่ล่มก็อยู่ที่ตัว Database

คอร์สนี้จะเป็นการรวบรวมเนื้อหาที่ช่วยทำให้ Developer เข้าใจหลักการเลือกใช้ Database และสามารถตัดสินใจเลือกใช้ Database ให้ตรงกับวัตถุประสงค์การใช้งานอย่างถูกต้องเหมาะสม

Microservices Essentials รายละเอียดเพิ่มเติม

Microservices Essentials

ในโลกที่เทคโนโลยีเข้ามามีบทบาทสำคัญในธุรกิจ การพัฒนาซอฟต์แวร์ย่อมเป็นสิ่งที่สำคัญมากสำหรับองค์กรต่างๆ 2 วิธียอดฮิตในการพัฒนาซอฟต์แวร์ ซึ่งก็คือ Monolithic และ Microservices

Microservices architecture เป็นหนึ่งในแนวคิดสำหรับการออกแบบและพัฒนา software ซึ่งทำการแบ่งส่วนการทำงานของ software ออกเป็นส่วนการทำงานเล็ก ๆ เพื่อช่วยทำให้แต่ละส่วนการทำงานเป็นอิสระต่อกัน สามารถ deploy และรองรับการขยายตัวได้อย่างอิสระ (เปรียบเทียบการทำงานระหว่าง Microservices และ Monolithic)

องค์กรของคุณเหมาะกับ Monolithic หรือ Microservices? จะเริ่มทำ Microservices ในองค์กรต้องทำอย่างไร? หรือการทำ Microservices ที่ทำอยู่ในองค์กรมาถูกทางแล้วหรือไม่? สามารถหาคำตอบได้ในคอร์สนี้

โดยในคอร์สนี้จะมีเทคนิคและวิธีการเริ่มต้นทำ Microservices ที่หลากหลาย ที่จะทำให้คุณเริ่มต้นระบบงานตามแนวคิด Microservices ได้อย่างมีประสิทธิภาพ เตรียมพร้อมสู่การออกแบบ พัฒนา และติดตั้งระบบงาน Microservices ต่อไป สอนโดยผู้เชี่ยวชาญที่ทำงานด้านนี้มากว่า 10 ปี

SECTION_TITLE.INSTRUCTOR

พงศกร ธีรภาพวงศ์ (CTO ที่ Hato Hub) | Skooldio Instructor
พงศกร ธีรภาพวงศ์
CTO ที่ Hato Hub
สมเกียรติ ปุ๋ยสูงเนิน (Technical Coach และ Software Craftsman ที่สยามชำนาญกิจ) | Skooldio Instructor
สมเกียรติ ปุ๋ยสูงเนิน
Technical Coach และ Software Craftsman ที่สยามชำนาญกิจ
ชาคริต ฤทธาคนี (Technical Lead Innovation Studio Southeast Asia, ThoughtWorks) | Skooldio Instructor
ชาคริต ฤทธาคนี
Technical Lead Innovation Studio Southeast Asia, ThoughtWorks

SECTION_TITLE.COURSE_OUTLINE

01

Softwre Architecture

1.1 Introduction

  • Welcome to Classpreview
  • Introduction to Organize a Codebasepreview

1.2 Specialist Collaboration

  • N-Tier Architecture
  • Demystify N-Tier Benefits
  • Security
  • Easy to Manage
  • Scalability
  • Recap
  • Requirements
  • What is MVC ?
  • Applying MVC
  • Requirements
  • What is Clean Architecture ?
  • Applying Clean Architecture
  • When We Go Clean ?
  • Recap

1.3 Business Collaboration

  • Introduction
  • What is Domain-Driven Design
  • Three-level of Domain-Driven Design
  • Bounded Context and Ubiquitous Language
  • Drawing Bounded Context
  • Tactical DDD: Entity and Value Object (1)
  • Tactical DDD: Entity and Value Object (2)
  • Tactical DDD: Aggregate
  • Tactical DDD: Service
  • Tactical DDD: Domain Event
  • Recap
  • [Bonus] Connecting the Specialist to the Business

1.4 Organization Collaboration

  • IntroductionConway's Law
  • Cross-Functional Team
  • Monolith
  • SoA and Microservices
  • Differences between SOA and Microservices
  • Design Service Boundary
  • Recap

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!

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:

หากต้องการใบเสนอราคาและใบแจ้งหนี้ในนามนิติบุคคลสามารถส่งรายละเอียดดังนี้

  • คอร์สที่สนใจและจำนวนผู้เรียน
  • ชื่อ-นามสกุล, เบอร์โทรผู้ติดต่อ
  • ชื่อ-ที่อยู่บริษัท, เลขประจำตัวผู้เสียภาษี
  • จำนวนภาษีหัก ณ ที่จ่าย (ถ้ามี)

มาที่ hello@skooldio.com โดยใช้ระยะเวลาดำเนินการไม่เกิน 1 วันทำการ (จันทร์-ศุกร์)

A:

สามารถทำได้ โดยในหน้าคำสั่งซื้อ กดเครื่องหมายถูกในช่อง "ต้องการออกใบกำกับภาษี/ใบเสร็จรับเงิน" จากนั้นเลือก "นิติบุคคล/บริษัท" และคำสั่งซื้อจะมีการหักภาษี ณ ที่จ่าย 3% โดยอัตโนมัติ ในกรณีบริษัทของท่านไม่ใช่ 3% กรุณาส่งรายละเอียดที่ต้องการสั่งซื้อมาที่ hello@skooldio.com

A:

กดเครื่องหมายถูกในช่อง "ต้องการออกใบกำกับภาษี/ใบเสร็จรับเงิน" ในหน้าชำระเงินและเลือกประเภทบุคคลทั่วไปหรือนิติบุคคล และกรอกรายละเอียด

A:

สำหรับคอร์สที่ซื้อในนามบุคคลทั่วไป คอร์สมีอายุตลอดชีพ สำหรับคอร์สที่ซื้อในนามนิติบุคคล สามารถกลับมาเรียนซ้ำได้ภายใน 1 ปี

A:

หลังจากได้รับใบกำกับภาษีแล้ว หากต้องการแก้ไขข้อมูล สามารถทำได้ภายใน 7 วัน นับจากวันที่ได้รับใบกำกับภาษีแบบเต็มรูปทางอีเมล โดยสามารถแก้ไขข้อมูลได้เฉพาะ ชื่อ-นามสกุล เลขประจำตัวผู้เสียภาษีและที่อยู่เท่านั้น จะไม่สามารถแก้ไขข้อมูลคำสั่งซื้อได้

SECTION_TITLE.RELATED_ONLINE_COURSES