Sorry, this page is no longer available
We may earn an affiliate commission when you visit our partners.
Course image
Antonio Goncalves

This course is for Quarkus developers who want to discover how Quarkus and MicroProfile handle microservices. It’s a mixture of slides and code so you can “Understand and Practice” at the same time. This way, you learn the theory, and then put it into practice by developing a microservice architecture step by step.

Read more

This course is for Quarkus developers who want to discover how Quarkus and MicroProfile handle microservices. It’s a mixture of slides and code so you can “Understand and Practice” at the same time. This way, you learn the theory, and then put it into practice by developing a microservice architecture step by step.

In this course you will develop two microservices that talk to each other. After introducing Microservices and MicroProfile, you will make sure your development environment is set up, and you will go from bootstrapping two Quarkus microservices, to running them as Docker containers. The different steps you’ll go through are:

  • Understand Microservices,

  • Understand MicroProfile,

  • Check your development environment,

  • Develop two microservice that expose a REST endpoint using JAX-RS and CDI,

  • Customize the JSON output with JSON-B,

  • Test the two microservices in isolation with JUnit and RESTAssured,

  • Configure each microservice,

  • Document each microservice with MicroProfile OpenAPI,

  • Establish the communication between microservices with MicroProfile REST Client

  • Mock the microservice communication when testing,

  • Handle communication failure with MicroProfile Fault Tolerance,

  • Build a Linux executable with GraalVM out of each microservice,

  • Containerize each microservice with Docker and execute it,

  • Create and configure a Docker Compose file so both microservices can be executed in a single command.

At the end of the course you’ll get a good understanding on how implementing microservices with Quarkus. You will be able to bootstrap, develop, package and execute a microservice architecture, but most important, take Quarkus microservices to your next project.

Good luck for the course, and please reach out if you need any help or if you have any request: I’m here to help.

Enroll now

What's inside

Learning objectives

  • Understand the microprofile ecosystem and how quarkus supports it
  • Bootstrap two microservices with quarkus
  • Develop, configure and test each microservice separately using jax-rs, json-b, cdi, junit and restassured
  • Use microprofile openapi to document each microservice
  • Use microprofile rest client so microservices can communicate with one another
  • Use microprofile fault tolerance so the communication between microservices can gracefully handle failure
  • Generate native binaries thanks to graalvm
  • Build and execute docker containers for each microservice
  • Bundle both microservices into a single docker compose file and configure it so the entire system is executed with a single command

Syllabus

Building Microservices with Quarkus
Course Overview
What Will You Build in This Course?
Next
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Explores MicroProfile, which is used in cloud-based enterprise Java projects
Explores Quarkus, which is an open-source Java framework built for cloud-native applications
Focuses on developing usable microservices, as opposed to just describing what microservices are
Develops your knowledge of Quarkus and MicroProfile, which are essential resources for Java cloud developers
Taught by Antonio Goncalves, who is a Quarkus developer and author of several books on Java and JEE
Requires knowledge of Java for those who want to learn how to build microservices in Java

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Quarkus microservices: practical & comprehensive guide

According to students, this course provides a largely positive and highly practical introduction to building microservices with Quarkus. Learners frequently commend the hands-on approach with clear coding examples, which made complex topics like MicroProfile specifications, GraalVM, and Docker integration easy to grasp. The instructor's clear explanations and logical course flow are standout features, making it suitable for professional developers. While generally well-received, some learners noted the pace can be fast in later sections and that prior Java and REST knowledge is beneficial. A few older reviews mentioned minor issues with outdated library versions or setup challenges, suggesting the course may benefit from periodic updates for consistency.
Instructor explains complex topics simply and effectively.
"The instructor explains concepts thoroughly and the step-by-step development of the two microservices is very effective."
"The instructor is very knowledgeable and articulates complex ideas simply."
"The instructor's explanations are clear and the examples are perfectly aligned with the learning objectives."
Covers a wide array of Quarkus and MicroProfile features.
"The coverage of MicroProfile specifications is comprehensive and relevant."
"Excellent coverage of MicroProfile and Quarkus."
"A solid introduction to building microservices with Quarkus. The course covers a lot of ground..."
Emphasizes learning by doing with real-world examples.
"The hands-on approach with clear coding examples made complex topics easy to grasp."
"The practical exercises are well-designed, reinforcing each concept."
"I learned how to use practical tools and strategies that I could apply immediately to my work."
"The hands-on labs and practical application make it stand out."
Minor issues with outdated versions or setup for some learners.
"Some parts felt a bit outdated in terms of library versions (e.g., specific Quarkus version)."
"The code examples were not always working on my machine. I felt left behind quickly."
"Needs more troubleshooting guidance or updated environment setup instructions."
"While the core concepts are solid, small updates would make it perfect."
Assumes some prior knowledge, pacing can be quick in parts.
"Sometimes the pace felt a bit fast in the later sections, but overall, a valuable course."
"If you're not already familiar with Java and basic REST principles, you might struggle."
"Good for experienced developers, perhaps less so for intermediates needing more foundational context."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Building Microservices with Quarkus with these activities:
Join a study group or online forum for Quarkus developers
Join a study group or online forum to connect with other Quarkus developers, ask questions, and share knowledge, fostering collaboration and reinforcing learning.
Show steps
  • Identify relevant study groups or online forums
  • Introduce yourself and express your interest in joining
  • Participate in discussions and ask questions
  • Share your own knowledge and experiences
Create a collection of resources on Quarkus best practices
Create a collection of resources on Quarkus best practices to reinforce your knowledge, stay up-to-date with industry standards, and improve your development practices.
Show steps
  • Research and identify best practices for Quarkus development
  • Gather relevant articles, blog posts, and documentation
  • Organize and categorize the resources
  • Create a document or online repository to store the collection
  • Share your collection with other Quarkus developers
Practice writing REST endpoints using JAX-RS in Java
Practice writing REST endpoints to reinforce your understanding of JAX-RS and how it is used in Quarkus.
Show steps
  • Create a new Quarkus project and add the RESTEasy dependency
  • Define a JAX-RS resource class and endpoint methods
  • Add dependency injection to your resource class
  • Test your endpoints using a REST client like RESTAssured
Four other activities
Expand to see all activities and additional details
Show all seven activities
Attend a Quarkus workshop or conference
Attend a Quarkus workshop or conference to gain hands-on experience, learn from experts, and network with other developers, enhancing your knowledge and skills.
Show steps
  • Research upcoming Quarkus workshops or conferences
  • Register for the event
  • Attend the workshop or conference sessions
  • Participate in hands-on exercises and discussions
  • Network with other attendees and speakers
Build a Spring Boot REST API with JPA and MySQL
Follow a tutorial to build a Spring Boot REST API with JPA and MySQL to reinforce your understanding of RESTful web services and data persistence.
Browse courses on Spring Boot
Show steps
  • Set up a new Spring Boot project
  • Create a JPA entity and repository
  • Define REST controllers for CRUD operations
  • Test your API using a REST client like Postman
Mentor a junior Quarkus developer or participate in a coding challenge
Mentor a junior Quarkus developer or participate in a coding challenge to reinforce your knowledge, enhance your problem-solving skills, and contribute to the community.
Show steps
  • Identify opportunities to mentor or participate in coding challenges
  • Prepare materials and resources
  • Provide guidance and support to mentees or participants
  • Evaluate progress and provide feedback
  • Reflect on your experience and areas for improvement
Write a blog post on the benefits of using Quarkus for microservices development
Write a blog post to share your knowledge and experience with Quarkus and microservices, reinforcing your understanding of the benefits and use cases.
Show steps
  • Research the benefits of using Quarkus for microservices development
  • Write an outline for your blog post
  • Develop the content of your blog post, including code examples and demonstrations
  • Proofread and edit your post
  • Publish your blog post on a platform like Medium or Dev.to

Career center

Learners who complete Building Microservices with Quarkus will develop knowledge and skills that may be useful to these careers:
Technical Project Manager
Technical Project Managers plan, execute, and manage software development projects. They work with stakeholders to define the project scope, timeline, budget, and quality requirements. While this course does not focus on project management, it can provide insight into the software development process as a whole, which can be helpful for Technical Project Managers.
Enterprise Architect
Enterprise Architects design and implement IT strategies and solutions for organizations. They work with senior management to understand the business goals of the organization and translate those goals into technical requirements.
Solutions Architect
Solutions Architects work with clients to understand their business needs and design and implement technical solutions that meet those needs. This course will introduce you to building microservices using Java, which is a skill that Solutions Architects can use to build and maintain the kinds of software systems that clients require.
Full Stack Engineer
Full Stack Engineers work on both the front-end and back-end of web applications. They are responsible for the entire stack of technologies that make up an application, including the user interface, the server-side logic, and the database. This course will introduce the principles of building microservices that will connect to databases, which are the kinds of skills Full Stack Engineers use.
Software Architect
Software Architects design and build software systems. They work with stakeholders to understand their needs and translate those needs into technical requirements. As a Software Architect, you will be responsible for making sure that software systems are secure, scalable, and reliable. This course could be useful for Software Architects as it dives into the implementation of microservices and provides insight into building systems.
Cloud Architect
Cloud Architects design, build, and manage cloud computing systems. They work with cloud providers and customers to develop cloud strategies and solutions. This course "may" provide a helpful foundation in cloud computing for Cloud Architects and provide some direction in designing and managing cloud systems.
Quality Assurance Analyst
Quality Assurance Analysts work alongside software engineers to implement testing strategies, manage test cases, execute tests, and report on results. They may also collaborate with product owners and other teams to understand customer needs and ensure that the final product meets requirements. This course "may" help Quality Assurance Analysts understand the development stage of applications and provide them with architectural experience in Java.
DevOps Engineer
DevOps Engineers work with developers and operations teams to improve the software development process and increase the speed and quality of software delivery. This course "may" be useful for DevOps Engineers who are interested in building a foundation in Java and understanding how to build microservices.
Data Scientist
Data Scientists gather, analyze, and interpret massive amounts of data to extract meaningful insights for organizations. While this course does not dive into data analysis, it "may" provide some helpful Java experience, which is a language that can be helpful in data science.
Data Engineer
Data Engineers design, build, and maintain data pipelines and systems. They collaborate with data scientists and other stakeholders to ensure that data is accessible, reliable, and secure. This course "may" provide useful foundational Java experience, which is a language that can be helpful for Data Engineers.
Web Developer
Web Developers design and develop web applications and websites. They translate ideas into code that creates aesthetically-pleasing, functional products usable by end users. This course "may" introduce foundational concepts in Java that Web Developers can use to build web solutions.
Computer Programmer
Computer Programmers design, modify, and maintain computer programs and software to meet the needs of users. This course "may" be useful to Computer Programmers as it touches on using Java to develop and execute solutions, which is a popular language that could be used in this role.
Information Security Analyst
Information Security Analysts identify and mitigate risks or vulnerabilities in hardware and software systems that may put the organization at risk. This course "may" provide insight for Information Security Analysts by offering an introduction to security features that may be found in similar software systems.
Computer Systems Analyst
Computer Systems Analysts study how computer systems are used in an organization and offer advice on how to improve the system's efficiency. This role may lead and manage projects by establishing project scope, timeline, budget, resource allocation, and quality assurance. This course "may" be helpful for Computer Systems Analysts, as it can help with problem solving skills.
Software Engineer
Software Engineers create software that meets the needs of users. In a role as a Software Engineer, you might design architectural solutions to complex problems and then create software to meet those solutions. While this course focuses on being an introduction microservices with Quarkus, it "may" provide a basic understanding of concepts that Software Engineers in this field may use.

Reading list

We've selected seven books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Building Microservices with Quarkus.
Provides a comprehensive overview of the MicroProfile specification and its use in building microservices and cloud-native Java applications. It covers key concepts such as microservice design, development, and deployment, as well as advanced topics such as fault tolerance, security, and reactive programming.
Provides a comprehensive guide to microservices. It covers everything from the basics of microservices to advanced topics such as building and deploying microservices. It also provides detailed examples of how to use microservices to build real-world applications.
Provides a comprehensive overview of microservices patterns and best practices. It covers everything from designing and building microservices to deploying and managing them in production. It also provides detailed examples of how to use microservices in real-world applications.
Provides a hands-on guide to building and deploying microservices with Spring Boot and Kubernetes. It covers everything from setting up your development environment to deploying your microservices to production. It also provides detailed examples of how to use Spring Boot and Kubernetes to build real-world microservices applications.
Provides a comprehensive guide to microservices architecture, covering topics such as design patterns, best practices, and deployment strategies. It valuable resource for anyone looking to learn about microservices architecture.
Provides a comprehensive guide to unit testing with JUnit, covering topics such as JUnit basics, JUnit extensions, and JUnit best practices. It valuable resource for anyone looking to learn how to unit test with JUnit.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser