Watch James Birnie’s session from Agile On The Beach 2018 entitled ‘Microservices Are Not Worth The Trouble!!??’
There is a minimum level of complexity inherit in every system before we write a line of code. By using microservices we cannot reduce this minimum complexity, we can only move it around.
Are we happy to accept that we might achieve reduced complexity in components for increased complexity in orchestration?
Do we understand that complexity in orchestration can be harder to reason with?
James has worked on two massive projects with ThoughtWorks that “did the full microservices thing”. There are many benefits trumpeted by the microservices bandwagon but how many of those benefits did we actually deliver and at what cost? Yes we can deploy different parts of the system independently and yes we can, in theory, scale separate parts of the system independently. But do we as a group, in tandem with our clients, have the maturity to really leverage these benefits? How many builds and pipelines are we managing now? We may have achieved bounded contexts and decoupled the parts of our system but how easy is it to reason with the flow of application now that the logic is distributed? He has also worked on a project where the client asked us “deploy it as a microservice” within their main application where the main goal was to achieve a separately deployable unit to allow quick iteration and to deliver value quickly. James managed this but without making it a “true” microservice. Taking an outcomes based approach rather than starting with an architectural philosophy can help us to achieve the outcomes we want without incurring the potentially huge costs of a complex distributed architecture. James contrasts the experiences of these three projects to explain how we can do this.
I started working in software delivery in the late 1990s when TDD was something you studied but never did and a pipeline was something for carrying oil. In 2005 I joined a startup and started to feel I could really make a difference.
After nearly 10 years, several total rewrites and an Agile transformation I moved on to a career in consultancy with ThoughtWorks. Two and a half years on I’m still learning my trade and being constantly surprised and sometimes delighted.
Agile on the Beach is a leading annual conference in Falmouth, Cornwall UK. Since 2011 Agile on the Beach has been a two day agile conference, set on the Cornish coast with a beach party in between. The conference explores agile software, products, teams, business and practices. With over 400 attending, the conference hosts 50 seminars and workshops to provide the ultimate agile learning experience, along with ample opportunities for networking at its 3 evening events.