Let's develop a message-driven microservices application
3.5 (6 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
64 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Let's develop a message-driven microservices application to your Wishlist.

Add to Wishlist

Let's develop a message-driven microservices application

Learn how to build scalable applications using multiple frameworks and languages in one knowledge-packed crash course
3.5 (6 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
64 students enrolled
Created by Bernhard Wenzel
Last updated 5/2017
Current price: $10 Original price: $60 Discount: 83% off
5 hours left at this price!
30-Day Money-Back Guarantee
  • 2 hours on-demand video
  • 14 Articles
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • How to combine several current technologies and frameworks into one multifaceted app
  • The essentials of front- and backend development, microservices, messaging and more
  • Each step of the development cycle that goes from an idea to a plan to implementation
  • How to implement your own solutions during many coding exercises
  • Without the need to install or configure anything except git and vagrant
View Curriculum
  • You should have some programming experience
  • You need Git, Vagrant and Virtualbox installed to follow the lessons

Please note: this class is for the busy developer who wants to maximise her time and advance as fast as possible. My lectures are highly polished and focus on the essentials so you can code for yourself ASAP. As professional developers, we understand that only through actively building something is it possible to advance our programming skills. Studying software engineering theory without immediate practice is hardly effective.

Dive into modern application development while you build a web scraping service from scratch. Understand the whole development process that goes from an idea to a plan to the implementation of a multifaceted application.

Get a profound understanding of many important frameworks and tools in one single crash course.

  • Web design using Bootstrap
  • Javascript frontend development using the elegant Knockout.js library
  • REST API design and hypermedia-driven APIs
  • Spring & Java backend development
  • Rapid prototyping with Spring Boot
  • Microservices architecture
  • Messaging with RabbitMQ
  • Web scraping with Python

This class offers a unique distraction-free learning experience that allows you to start coding anytime just by clicking a link

It ships with a virtual machine image that has all requirements installed and a tutoring application that guides you through the course.

Instead of wasting your time with installation or configuration issues that regular courses require, you just open your console and type in "vagrant up". I developed a tutoring application that guides you through the lectures and manages your source code and exercises. You start coding just by clicking a link and having the tutor taking care of the rest.

Most courses either focus on too much theory without practice or are not more than a guided hacking tutorial ignoring deeper concepts. My class delivers the material in a concise form by teaching just enough essentials so you can start coding on your own.

Why watch hours of videos and forget most of it when I can get the same knowledge in a fraction of the time?

Contents and Overview

This course will take you from an idea to a plan to the complete application. We start with the requirements of our application that we have gathered with our fictive client. We plan the development as we would do in a real life software company.  Then we develop each part of the application. 

  1. We start with the frontend that we implement in two steps. First, we use Bootstrap to layout the website. Second, we make the website interactive using Knockout.js.
  2. Next we move to the backend side and talk about REST API development. Using Spring Boot and Java we demonstrate how to create an API quickly that clients consume. 
  3. In the final part of this course, we add a web scraping service to our application. We gain an understanding of the microservices architecture and learn how to increase modularity by taking advantage of messaging with RabbitMQ. 

The reason I created this class is that I feel there are not enough offers available for developers who want to maximise the time spent on their education. As software developers, we constantly need to learn something new. Our time is precious. That's why my lectures focus on active coding and teaching what is most important.

As a bonus for my students I personally answer every open question you may have in the forum regarding the course material. My motivation is to help you succeed! 

Who is the target audience?
  • Intermediate programmer
  • Anyone interested in developing an application from scratch
  • Anyone who wants to build an application and have a base to build upon
Compare to Other Microservices Courses
Curriculum For This Course
52 Lectures
5 Lectures 13:13
Planning BookieMarker
1 Lecture 02:56
Requirements, design and architecture
The frontend - HTML design
7 Lectures 12:32

How can we turn a sketch into a HTML page?

Preview 01:26

Bootstrap essentials

Let's code: bootstrap grid system

Summary: let's code bootstrap's grid system

Solution: bootstrap grid system

Let's code: navbar, forms & buttons

Solution: navbar, forms & buttons
The frontend - interactive websites
10 Lectures 21:42

In this lesson we answer the question of how we can make websites interactive and what role Knockout plays.

Introduction: interactive websites

This video explains the meaning of the Model-View-ViewModel (MVVM) pattern that Knockout follows.

Knockout.js essentials 1: MVVM

This lesson explains how we can bind the view-model to the view.

Preview 01:22

Let's code: list & search bookmarks

Summary: let's code list & search of bookmarks

Solution: list & search bookmarks

Let's code: add & remove bookmarks

Solution: add & remove bookmarks

Let's code: edit summary

Solution: edit summary
The backend
13 Lectures 46:23

We are going to turn BookieMarker into a real application by adding the backend. In this lesson, we talk about how we could integrate the front- with the backend and what technologies we are going to choose.

Preview 02:20

In this lesson we talk about:

  • REST APIs and RESTful applications
  • Resources
  • The meaning of “hyper-media driven” and HATEOAS
REST essentials

What is the Spring framework and Spring Boot? Understanding the difference between dependency management and dependency injection. How to use spring.io’s documentation

Spring essentials

Let's code: domain model & REST

Summary: let's code domain model & REST API

Solution: domain & REST API

Let's code: search for URL

Solution: search for URL

Let's code: integrate frontend

Solution: integrate frontend

Let's code: sorting

Summary: let's code sorting

Solution: sorting
The scraping service
15 Lectures 42:15

Microservices essentials

RabbitMQ essentials

Let's code: webscraper

Summary: let's code web scraper

Solution: webscraper

Let's code: python RabbitMQ

Summary: let's code python RabbitMQ

Solution: python RabbitMQ

Let's code: integrate the backend

Summary: let's code integrate the backend

Solution: integrate the backend

Let's code: integrate the frontend

Summary: let's code integrate frontend

Solution: integrate the frontend
Where to go from here
1 Lecture 01:23
About the Instructor
Bernhard Wenzel
3.5 Average rating
6 Reviews
64 Students
1 Course
Software architect, author and creator

During the day I am working as a software architect. In recent years, I'm dedicating most of my free time to my passion of writing and teaching about software craft and learning.

I started teaching because I think that the way we teach and learn programming is still in its infancy and can be vastly improved. The tools we use belong to the past where linear teaching was prevalent.

As an avid learner myself, I know very well how scattered the process of acquiring new skills can be, where we constantly jump between books, videos, StackOverflow, tutorials and so on. Nowadays, the sheer amount of new technologies can be overwhelming.

In my courses I want to encourage tinkering and having fun with coding as I believe this is the most efficient way to advance coding skills.