► Join & Access the full course: https://selfmadeengineer.com
In this course instead of flipping burgers you'll build an Order Management System with microservices in Go.
This journey will start from a simple service from which we'll build & scale out up to 5 different microservices communicating & working together to finalise the users order ...and we're going to build all of this from scratch...
🎉 This video is going live in conjunction with our Skool Community, if you are interested in leveling up as a software engineer, check it out: https://selfmadeengineer.com
Tip: watch it 1.5x if you want to save time
0. Getting Started
00:00:00 Welcome
00:03:03 Preface for Youtube viewers
00:05:20 OMS Project Overview
00:10:54 Introduction & Motivation to use Microservices
00:18:29 Setting the Stage Why Go
1. Project Architecture & Design
00:23:23 Architecting a Scalable Order Management System
00:32:43 Services Recap
2. Scaffolding our first Microservice
00:34:55 Setting Up Your Development Environment & Go Workspaces
00:40:34 Orders Service Clean & Layered architecture
00:45:09 Gateway Service
00:49:55 Commons Package
00:53:11 Hot Reloading
3. Service-to-Service Communication
00:55:00 Understanding Service-to-Service Communication
00:56:19 Leveraging gRPC for Efficient Intra-Service Communication
01:20:20: Payload validation
4. Service Discovery
01:32:40 Service Discovery
[Paid Curriculum]
- Creating the Registry
- Adopting Service Discovery with Consul
5. Async Communication with Message Brokers
- Asynchronous Communication with Message Brokers
- Connecting to AMQP & Creating the Exchange
6. The Payment Service
- Introduction & Setup to the Payment Service
- Consuming the Order Created Event
- Integrating Payment Processor Stripe
- Unit Testing the Payments Service
- Building the UI and Get Order endpoint
- Payment Notifications
- Fanning Out the Order Paid Event
7. Reliability
- Implementing Retries & Dead Letter Queues
8. Observability
- Intro to Distributed Tracing with OpenTelemetry
- Setup and Send Telemetry data from the gateway
- Telemetry Middleware
- Sending Telemetry though RabbitMQ
- Structured Logging
9. Managing Inventory: Stock service
- Introduction & Setup
- Order Stock Validations & gRPC Handler
- Storing Service data with MongoDB
10. Finishing Order Processing: Kitchens Service
- Real-Time Order Fulfilment
And more...
🙋🏼♂️ Socials:
X: https://x.com/tiago_taquelim_
Github: https://github.com/sikozonpc
Thank you for watching 💪
#golang #microservices #go