Course Outline
Advanced Go Concepts
- Deep dive into Go’s type system.
- Managing pointers, memory, and garbage collection.
- Advanced interfaces and embedding.
Concurrency and Parallelism
- Advanced goroutine management.
- Buffered and unbuffered channels.
- Select statements and worker pools.
Error Handling and Logging
- Custom error types and wrapping.
- Structured logging and monitoring.
- Error propagation and best practices.
Testing and Benchmarking
- Unit and integration testing in Go.
- Utilising Go’s built-in testing tools.
- Benchmarking and profiling applications.
Modular Programming and Packages
- Dependency management with Go modules.
- Versioning and module publishing.
- Building reusable Go libraries.
Building APIs and Microservices
- Creating RESTful APIs using Go.
- Integrating Go with Docker and containers.
- Service orchestration and deployment.
Performance Optimisation
- Memory profiling and tuning.
- Concurrency optimisation strategies.
- Performance monitoring with pprof.
Summary and Next Steps
Requirements
- Programming experience with Go.
- Understanding of Go syntax, data structures, and functions.
- Experience working with packages and basic concurrency.
Audience
- Experienced software developers.
- Backend engineers.
- Cloud-native application developers.
Custom Corporate Training
Training solutions designed exclusively for businesses.
- Customized Content: We adapt the syllabus and practical exercises to the real goals and needs of your project.
- Flexible Schedule: Dates and times adapted to your team's agenda.
- Format: Online (live), In-company (at your offices), or Hybrid.
Price per private group, online live training, starting from 3900 € + VAT*
Contact us for an exact quote and to hear our latest promotions
Testimonials (2)
The structure of the training and the exercises were fantastic. The trainer was able to get me excited to work with Go in the future, which is not an easy thing!
Noah Van Tiggel - Spot Buy Center BV
Course - Advanced Go Programming
The trainer proved himself to be an expert of the topic, which I never give for granted. He provided very useful insight on industry standards.