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 mechanisms
- Utilizing advanced interfaces and struct embedding
Concurrency and Parallelism
- Sophisticated goroutine lifecycle management
- Implementation of buffered and unbuffered channels
- Applying select statements and worker pool patterns
Error Handling and Logging
- Designing custom error types and effective error wrapping
- Implementing structured logging and monitoring solutions
- Adhering to error propagation best practices
Testing and Benchmarking
- Conducting unit and integration testing in Go
- Leveraging Go’s integrated testing toolkit
- Performing application benchmarking and 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 workflows
- Orchestrating services and managing deployment pipelines
Performance Optimization
- Conducting memory profiling and runtime tuning
- Applying concurrency optimization strategies
- Monitoring performance using pprof
Summary and Next Steps
Requirements
- Demonstrated programming experience with Go
- Solid grasp of Go syntax, data structures, and function usage
- Practical experience with packages and fundamental concurrency concepts
Target Audience
- Seasoned software developers
- Backend engineers
- Developers specializing in cloud-native applications
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.