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.
Course Outline
Advanced Go Concepts
- In-depth exploration of Go’s type system
- Handling pointers, memory management, and garbage collection
- Advanced interface implementation and struct embedding
Concurrency and Parallelism
- Advanced management of goroutines
- Utilizing buffered and unbuffered channels
- Implementing Select statements and worker pool patterns
Error Handling and Logging
- Defining custom error types and error wrapping
- Implementing structured logging and monitoring
- Best practices for error propagation
Testing and Benchmarking
- Executing unit and integration tests in Go
- Leveraging Go’s native testing framework
- Performing application benchmarking and profiling
Modular Programming and Packages
- Managing dependencies via Go modules
- Versioning strategies and module publishing
- Constructing reusable Go libraries
Building APIs and Microservices
- Developing RESTful APIs with Go
- Integrating Go with Docker and containerization
- Service orchestration and deployment workflows
Performance Optimization
- Memory profiling and tuning techniques
- Strategies for optimizing concurrent operations
- Monitoring performance using pprof
Summary and Next Steps
Requirements
- Practical experience programming in Go
- Solid grasp of Go syntax, data structures, and function definitions
- Hands-on exposure to packages and fundamental concurrency concepts
Target Audience
- Seasoned software developers
- Backend engineers
- Cloud-native application developers
21 Hours
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.