REST based microservices API development in Golang (Udemy.com)
Master the concept of microservices API development using the Hexagonal Architecture in Go
Created by: Ashish Juyal
Last updated April 2022
What you will learn
- Apply SOLID design principles in Go
- Master the Hexagonal Architecture design and its implementation
- Implement authentication and authorization using JWT access & refresh tokens
- Apply RBAC Authorization to APIs
- Understand how dependency injection works in Go
- Understand and implement the structured logging
- Build microservices API in Go
- Code Refactoring in Go
- Decoupling the domain objects and DTOs
- Working with small steps
- Take the informed decision on choosing various libraries
- Understand the role of multiplexer in HTTP web server
- Encoding structs to JSON or XML
- Understand the routing capabilities of gorilla/mux
- Design your own error library
- State based unit testing
- Unit testing using the mocks
How it compares
Against the other 815 rated Udemy courses in Web Development on CourseDuck:
- Rating4.7 out of 5higher than 86% of them
- Reviews1,166#164 of 816 by number of reviews
- Length6.7 hoursshorter than 53% of them
- Last updatedApril 2022earlier than 76% of them
Course Description
In this course, you will learn microservices API development using the Hexagonal Architecture. We will start the development from the scratch. Taking the small steps, we will be building the foundation by continuously improving the design of the application. We will explore how the dependency inversion plays a pivotal role in implementing the Hexagonal architecture.
Later on, we will be building an auth API to manage the Authentication and Authorization of our main application.
By the end of the course, we will learn to unit test various components using state and mocks and will also understand the complexities in testing those components.
Instructor Details
- 4.7 Rating
1,166 Reviews
Ashish Juyal
I am a passionate all-round IT consultant with around two decades of experience in IT, I have developed a broad interest in various technologies and specialized in Cloud computing, Continuous Delivery, and DevOps. Having experience with multiple enterprise customers, my passion for the latest technologies, my role as Principal Architect at various projects has allowed me to translate technical and organizational challenges in projects into successful solutions. I have an excellent understanding of agile team methodologies and practices including XP engineering practices.
I have been contributing towards the Design, Coding, Code Optimisation, laying out Testing Strategies and Integration techniques. Gaining and sharing of knowledge is a big drive for me. Over the years I have helped and coached multiple development teams sizing from small startups to enterprise-sized companies. Together we have built great new applications and architectures and we have gained experiences and knowledge. I have an in-depth understanding of design patterns and domain-driven design. I have the knowledge and extensive experience in application integration, distributed application architecture, object-oriented modeling and design.
More Web Development courses
Python Fullstack Mastery: Build Modern Web Apps with Django (2025)
5.0 (165 Reviews)
Provider: Udemy
Time: 35h
$19.99
NgRx Signal store for Angular - The missing guide (2026)
4.9 (436 Reviews)
Provider: Udemy
Time: 11.3h
$89.99
Vue 3: Create a Mobile & Desktop App (with Quasar 2 & Pinia) (2024)
4.9 (177 Reviews)
Provider: Udemy
Time: 7.6h
$79.99
Build a URL Shortener App with ASP.NET: Step by Step (2026)
4.9 (100 Reviews)
Provider: Udemy
Time: 9.6h
$10.99
The Complete Elixir and Phoenix Bootcamp (2021)
4.8 (7,773 Reviews)
Provider: Udemy
Time: 17.4h
$84.99
Reviews
By Anonymized User on 12/3/2024
Es una buena explicación de como ir armando y des armando una aplicación, llevado a una arquitectura hexagonal. Lo que más me agradó, es el "punta a punta" del temario. Hola Mundo, diseño, explicación de la arquitectura y su relación con el scaffolding, conexiones, seguridad, testing.
By Rashad Aliyev on 9/24/2023
Very useful topics were covered. And it’s good that it was provided source codes, in other case it could be difficult follow near to the end chapters. Thanks for the effort spent creating this course.
By Brad Rogan on 12/14/2022
This course was really good for a Go n00b. Some things to watch for: - Gorilla mux is now unmaintained. The concepts around routing are still valid, but maybe look at other libraries as you code along - Interfaces are done in the traditional OOP way IMO, and thus prevent you from learning one of the cooler parts of Go. This is easy to tweak in your own code as you follow along, however: https://github.com/golang/go/wiki/CodeReviewComments#interfaces
By Oscar Eleazar Boada Romero on 6/25/2022
Great explanations, concise definitions. Examples that clarify basis of micro services. It talks about the most important and need toolkit for complete awesome developments.
By Ruthvik K S on 6/5/2022
The course is very good. It is precise and delivers what is expected. Quick answers to the questions in Q&A would be amazing to have. If anyone is new to the architectural patterns, I would suggest you to do some readings along with the course. It really helps you to understand the course content better.
By D Rod on 12/29/2021
Great course, I learned a lot. Ashish is very knowledgeable and explains things well. This feels like sitting with a senior developer for a couple of days. Very happy that he teaches these more advanced topics and not starting from what is a for loop or what is a string.
By Lim You Liang on 12/23/2021
Very good course that explained about how to design go REST application, it teaches you on the good practices that you should follow, and also cover advance topics. But i feel section 4 security can be part of advance topics also, since most likely user will not be building an custom auth server by themselves and instead use solution like keycloak, etc
By Sophia Brandt on 1/6/2021
This is a surprisingly good and thorough course for a Go beginner that wants to write micro-services with a clean architecture. It looks like the instructor teaches best practices (as far as I can see from my limited experience) and he shows you an advanced setup with two services (one is authorization and authentication with JWT). I especially liked the exercises. They are challenging, but not beyond the scope of a beginner. The instructor also gives thoughtful responses on the Q/A section. All in all, I didn't expect much before going into the course, but I was pleasantly surprised.
By Venakam Anakam on 1/2/2021
This is a very good course for golang beginners, and maybe for intermediate levels as well; it teaches you with a sample bank application using hexagonal architecture; also provides implemenatation of rbac for the apis developed; the instructor is responsive as well. Recommended.
By Egidio Neto Alves de Araújo on 12/26/2020
i've learned lot of things in this course, had some knowledge in golang but didn't know those useful packages that has been utilized and the hexagonal architecture, very good course
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 94 / 100






