Packt
Building Microservices API in Go
Packt

Building Microservices API in Go

Included with Coursera Plus

Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

9 hours to complete
3 weeks at 3 hours a week
Flexible schedule
Learn at your own pace
Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

9 hours to complete
3 weeks at 3 hours a week
Flexible schedule
Learn at your own pace

What you'll learn

  • Create modular and reusable code with Go modules.

  • Analyze the integration of external packages into Go projects.

  • Implement refresh token functionality for secure authentication in Go.

  • Evaluate and optimize Go code for efficient microservices development.

Details to know

Shareable certificate

Add to your LinkedIn profile

Recently updated!

August 2024

Assessments

6 assignments

Taught in English

See how employees at top companies are mastering in-demand skills

Placeholder
Placeholder

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV

Share it on social media and in your performance review

Placeholder

There are 6 modules in this course

In this module, we will introduce the course and discuss its objectives, providing a roadmap for what you will learn. We will also cover the essential tools required for developing REST-based microservices APIs in Go, including setting up your development environment and understanding the tools that will be used throughout the course.

What's included

2 videos1 reading

In this module, we will cover the fundamentals of building and configuring an HTTP web server in Go, starting with a simple "Hello World" example. We'll delve into JSON and XML encoding, teaching you how to marshal data and handle headers. Additionally, we'll refactor our codebase for better organization with Go modules and explore the advanced routing features of the gorilla/mux library to enhance your API capabilities.

What's included

5 videos1 assignment

In this module, we will delve into advanced application development techniques in Go, starting with the principles of hexagonal architecture and practical implementation in a banking application. You'll learn to build a database adapter, handle errors effectively, and conduct structured logging with uber/zap. We will also cover the use of Sqlx for database interactions, managing application configuration with environment variables, and practical assignments to enhance API functionalities, such as creating new bank accounts and handling transactions.

What's included

18 videos1 assignment

In this module, we will focus on securing your Go application by implementing robust authentication and authorization mechanisms. We'll start with an overview of security strategies and best practices, followed by a deep dive into JWT tokens for managing user authentication. You will learn to build an authentication server with login and verification APIs, implement role-based access control, and use middleware for token verification to maintain the security and integrity of your APIs.

What's included

4 videos1 assignment

In this module, we will delve into the fundamentals of unit testing, starting with state-based testing to ensure the functionality of your code. You'll learn to differentiate between mocks and stubs, and how to use them effectively for testing routes. We will also cover unit testing for services, focusing on writing reliable tests and refactoring code to enhance readability and reliability. By the end of this module, you'll be equipped with the skills to write robust unit tests that shorten feedback loops and improve your development process.

What's included

3 videos1 assignment

In this module, we will delve into advanced topics essential for building robust and maintainable microservices in Go. We'll start with an overview of the concepts, followed by extracting reusable components from our banking project to create Go modules. You'll learn to integrate these modules into different APIs, refactor APIs for better maintainability, and understand the use of refresh tokens for enhanced security. By the end of this module, you'll be proficient in creating secure, efficient, and reusable components for your microservices architecture.

What's included

9 videos2 assignments

Instructor

Packt - Course Instructors
Packt
375 Courses25,243 learners

Offered by

Packt

Recommended if you're interested in Software Development

Why people choose Coursera for their career

Felipe M.
Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

New to Software Development? Start here.

Placeholder

Open new doors with Coursera Plus

Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription

Advance your career with an online degree

Earn a degree from world-class universities - 100% online

Join over 3,400 global companies that choose Coursera for Business

Upskill your employees to excel in the digital economy

Frequently asked questions