In our first post we considered the CICD maturity needed to manage microservices at scale. But DevOps extends beyond tooling and speaks equally to both development and organisational culture. One of great benefits of a microservice architecture is its ability to scale work across multiple teams. It facilitates ‘decoupling’ by allowing teams to operate autonomously within the domain context and microservices they own. Microservices happen to fit very nicely into a team-based autonomous delivery model, and it’s a widely held industry belief that this is one of the most compelling reasons to build using microservices.
But even the most capable teams, with excellent DevOps skills and practices, will struggle with microservices in an organisation that does not have a high degree of Agile maturity. We've seen organisations regressing back to Waterfall practices as a result of the technical and business demands of a troublesome microservices platform.
So what are some of the ways organisations can eliminate potential challenges and deliver a successful microservices project?
First and foremost, you need a management culture that understands Agile development processes, and is able to embrace and adapt to change. A good example is the way microservices need to be tested and released. Traditional monolithic approaches, such as releasing everything into an ‘integration’ environment and having tests confirm that all the bits play nicely, just doesn't scale when you have dozens of interdependent APIs released multiple times a day. Traditional release management processes quickly become a quagmire if there are large numbers of microservices needing to be tested, versioned and moved monolithically through different environments.
If your organisation has a middle management layer that is more ‘command and control’ than ‘servant leadership’, then a microservice architecture will present them with significant challenges. That may be a good thing if you are in upper management and looking to drive Agile change within an organisation. But it can be disastrous to a business that needs to release software quickly in order to achieve their quality and customer goals.
There are some warning signs that your organisation might not be up to microservices, and it can be difficult to fix them once development gets underway. Addressing them early will significantly increase the chances of a successful outcome.
Potential pitfalls to be aware of:
Microservices are a great fit for an organisational culture that thrives on rapid change, has a customer focus, and understands how to inspire and empower teams. It allows software development to operate at a scale and efficiency that is simply not possible with most other architectures. So good luck to all organisations embarking on a microservices journey, and as always, call the Team at Patient Zero – Empowered Teams, Exceptional Results!
In our final post we’ll look at technical Do’s and Don’ts with Microservices.
❤ Australian Owned & Operated, 100% Onshore
Organisations across Australia turn to Patient Zero design, build and maintain custom software applications. Our Australian based development teams are vendor & technology agnostic and ready to deliver your next project.
We have a proven track record of projects delivered in a diverse range of industries including Education, Insurance, Waste Management, Health/Medtech, Government and even EV Charging.
1300 714 093
[email protected]
Brisbane
Level GR-109
310 Edward Street
BNE QLD 4000
Sydney
Level 3-104
320 Pitt Street,
Sydney NSW 2000
ABN 98 611 165 498