Microservices in the Wild: Three Types & How to Implement

Dallas Monson Architecture, Articles, Cloud, Development Technologies & Tools, Microservices 1 Comment

Microservices has become a catch-all term in the industry used to describe anything from architecture patterns to actual service implementations.

With such a broad spectrum, it can be daunting to know what it is, what it isn’t, and maybe more importantly, why we should care.

In this post, I’ll provide an overview of three kinds of Microservices that I have observed in client architectures: Domain, Integration, and Unit-of-Work. I’ll also discuss specific examples of their purposes and a method to implement each one.

Development: Microservices Analytics UI with React & Spring

Keyhole Software Java, JavaScript, Microservices, New Development, React

A team of Keyhole Software Consultants built a customer-facing analytics dashboard for an international leader in automotive data and software services. This project was performed under an aggressive deadline and was completed both early and under budget.

The goal of the project was to both build the analytics dashboard and make all data accessible through a REST API. The development team was also tasked with building a custom solution for user authentication using JWTs to control access based on user subscriptions through an API Gateway.

Microservices Anti-Patterns

Dallas Monson Agile, Articles, Consulting, Microservices 1 Comment

Microservices? Yeah, you’re doing it wrong.

Microservices is a silver bullet, magic pill, instant fix, and can’t-go-wrong solution to all of software’s problems. In fact, as soon you implement even the basics of microservices all of your dreams come true; you will triple productivity, reach your ideal weight, land your dream job, win the lottery 10 times, and be able to fly, clearly.

While this sounds like a lot of hyperbole wrapped up in some BS, if you have been listening to anything around microservices recently you will most likely have heard something not too far from this exaggerated sentiment – especially if it is coming from sales folks.

As a result of this, you or someone you know will likely have been charged by management to implement a solution in microservices or refactor an existing application to take advantage of microservices to ensure that you get all the magic. With so much overinflation of the truth out there, chances are you may have also implemented a microservices antipattern. These antipatterns are actually more common in the wild than fully functional microservices architectures.

Overview
In this post we will cover the most common antipatterns that I have witnessed in the wild:

Break the Piggy Bank
Everything Micro (Except for the Data)
We are Agile! a.k.a. The Frankenstein

Each one of these results from a common misconception. We will do our best to define these patterns and their symptoms. After each, we will also show a way out of the mess so that you can recover and begin to move towards a better implementation. Let’s get started!

Java Microservices & React Development – Cross-Functional Team

Lauren Fournier Bogner Java, JavaScript, Microservices, React

Client Snapshot: Privately controlled and independent investment management firm. A cross-functional team of Keyhole Software consultants assisted a long-term client of Keyhole Software on various, concurrent initiatives. Primary efforts included Java / Spring Boot microservices and React applications. A selection of tasks completed follows: The team of Keyhole consultants helped support the client’s efforts to migrate its legacy applications into …