Project Overview 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. …
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.
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!
Project Overview Keyhole Consultants are currently leading an initiative at a large financial services firm to move a large, monolithic, legacy application running in the organization’s “on-premise” data center, to a microservice-based suite of applications running in the “cloud.” The application is being iteratively moved to containers, orchestrated by Kubernetes in the AWS Cloud. The effort was centered on developing …
Client: One of the largest nonprofit health care organizations in the United States Development Category: Modernization Services Performed: Technical Strategy, Application Development, Technical Mentoring, Stability Improvement The ultimate goal of this project was to improve the stability of the application suite as the organization made the transition to a Microservices-style platform. Keyhole consultants assisted with the migration from a monolithic application …
When I heard that the Struts Open Source framework played a role in the recent Equifax hack, I wanted to do some research to understand how it happened. Struts is a commonly-used Java framework that I have applied in the past. And I’m not alone in that: it is reported that in 65% of Fortune 500 companies currently implement Struts in some way.
So, I did a little digging and performed a thought experiment asking myself the following question: “If Equifax had a pure-play Microservices Architecture in place, would it have solved the problem?”