- An understanding of software development
- Experience with Golang
- Basic programming experience
Audience
- Developers
- Software Architects
This instructor-led, live training (online or onsite) is aimed at beginner-level / intermediate-level / advanced-level ___ who wish to use Golang to develop microservices oriented solutions.
By the end of this training, participants will be able to:
- Develop asynchronous microservices in Go
- Use REST APIs and gRPC in real-world scenario
- Integrate Kafka and tools for event-driven communication
- Dockerize and deploy Go microservices with Kubernetes
- Apply best practices for security, testing, and logging
Format of the Course
- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request a customized training for this course, please contact us to arrange.
Day 1 – Go Fundamentals and Microservices Architecture
Overview of Go: syntax, tools, and modules
Microservices architecture: principles, benefits, and approaches
Building REST APIs with the Gin framework
Introduction to GoFR as a modern alternative
Introduction to concurrent programming: goroutines and channels
Guided project: building a simple REST microservice
Day 2 – Concurrency, Event-Driven Systems, and gRPC
Asynchronous approach: designing microservices that interact with external systems
Kafka: building publishers and consumers in Go
REST vs gRPC: comparison of protocols
RPC lifecycle and gRPC API models (unary, streaming, bidirectional)
Error handling and timeout management in gRPC
Installing and configuring gRPC and Go Micro
Hands-on exercises: implementing microservices using gRPC
Day 3 – Security, Logging, and Deployment
Security: JWT authentication and OpenID Connect
Logging and observability in Go microservices
Authorization and access control with PermGuard approach
Dockerizing and orchestrating with Kubernetes
Organizing code with Go Workspaces
Lab: securing an existing microservice
Summary and Next Steps