Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Duration 21 hours
Course Outline
Advanced Go Concepts
- In-depth exploration of Go’s type system
- Managing pointers, memory, and garbage collection
- Utilizing advanced interfaces and structural embedding
Concurrency and Parallelism
- Advanced goroutine lifecycle management
- Implementing buffered and unbuffered channels
- Utilizing select statements and worker pool patterns
Error Handling and Logging
- Designing custom error types and error wrapping
- Implementing structured logging and monitoring
- Best practices for error propagation
Testing and Benchmarking
- Conducting unit and integration testing in Go
- Leveraging Go’s native testing tools
- Performance benchmarking and application profiling
Modular Programming and Packages
- Managing dependencies via Go modules
- Handling versioning and module publication
- Constructing reusable Go libraries
Building APIs and Microservices
- Developing RESTful APIs with Go
- Integrating Go with Docker and containerization
- Orchestrating and deploying services
Performance Optimization
- Tuning through memory profiling
- Strategies for concurrency optimization
- Monitoring performance using pprof
Summary and Next Steps
Requirements
- Practical experience in programming with Go
- Familiarity with Go syntax, data structures, and functional programming
- Background in working with packages and basic concurrency concepts
Target Audience
- Experienced software developers
- Backend engineers
- Cloud-native application developers
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.