MicroService Architecture – The New Frontier for Wealth Management



I often speak about our strategy of building a suite of software components as microservices and being able to deploy them independently or for them to be able to co-exist together and interact with each other.

There are very few players in the Wealth Management software arena who are genuinely building to this architectural pattern.

Of late, I am finding many organisations getting on the band-wagon and speaking of component based architecture. But when you really dig beneath the surface it doesn’t take long to identify that Lipstick on a Pig does not maketh the Supermodel.

There are many benefits to implementing microservice architecture. These include

  • Gaining massive agility and efficiency in amending, testing and deploying software updates;
  • Enabling automated isolated testing both within microservices and for all interfaces around the microservices;
  • Getting incredible gains in quality as a result of very defined boundaries of responsibility between microservices along with the increase ability to automate testing;
  • Having the ability to pick and choose components and use the best of breed; including the ability to pull out and replace components if a better solution if available.

In order to implement a microservice architecture, there are some very key design principles that should be adopted and these are a few of my tips.

Have a Guiding Vision of the Future

Whilst software development can be an opportunistic enterprise, it is also great to have a vision and strategy of where you are heading. By taking a microservice view of your long-term development scope, it can really assist you to in prioritising the sequence of development and in defining the boundaries of all microservices in your eco-system. By preparing this future microservice map you can look at the scope at a high level and focus on the detail as you address each microservice in your development cycle.

Don’t be Afraid of Separate Database Schema

To truly segregate microservice components, it is important for your DB schema to be isolated and stand alone. To be a fully self-reliant component, it should not have a dependency on being a part of a greater schema. If a component requires access to other data it should be integrated using service layers or data pumps.

Sometimes this will feel foreign to not rely on DB level referential integrity and sometimes it will feel foreign to have some duplication and synchronisation of data. But don’t worry – correctly designed microservice applications will synchronise, reconcile and enforce data integrity.

You will also get massive performance benefits from distributed parallel processing.

Don’t Fall Into the Trap of Microservice Boundary Creep

It can be tough when times are stressful and deadlines tight to jam changes in quickly and without consideration to the boundary of responsibilities of your microservices.

Each microservice should be excellent at doing what it does. It is the software designer’s responsibility to make it stay that way. When a change comes through that takes a component away from its intended responsibility, it may be better to step back, re-assess and perhaps create a new microservice that interacts with the existing component.

Of course, sometimes there are grey zones and such a decision is not always easy. Importantly, though, it may cost slightly more and take slightly longer to implement it in an architecturally correct manner. The benefits of those decisions will pay dividends every day afterwards both to the development team and the clients who use the software.

Software Sales Reps who Say “We Have a Component Based Eco-System” – When to Call BullSh*t

Without wanting to detract from the credibility of some software sales people, it is good to drill in to claims of Component Based Eco-systems.

Here are a few things often said that do not constitute Microservice architecture…

  • “We have a Separate Web Portal component from the core administration system component” – these are not microservices.
  • “We have separate REST services for each component” – but behind the scenes its all just one big monolithic system – separate REST services for different functions are not microservices.
  • “We have a microservice architecture and its bundled together to form a complete solution” – probably cannot be unbundled and therefore not microservices.

I personally always ask a few telling questions to really assess any such claims:

  1. Can I implement a single element of the total software scope that I would consider to be a discreet microservice independently and without having to take the rest of the solution?
  2. If I can implement a single microservice, can you provide integration documentation to allow me to integrate it to my existing systems?
  3. Does the database schema for the claimed microservice reside independently of the other microservices?
  4. Can you give me the automated test coverage percentage?

If you get a No to any of these questions, then its time to call it!



I am really excited by opportunities provided by microservice software architecture. Its what has allowed the likes of Amazon, Netflix, Google and others to achieve amazing agility and quality.

This mindset has not permeated into the Wealth Management sector and much of the software servicing our market is monolithic, inflexible and legacy.

Talk is cheap and as much as software suppliers are claiming this architectural pattern, in many cases it is simply incorrect.

When our industry catches up with others, we will find that a true Microservice architecture will transform this space. It will allow the best solution to be selected for each process and each task in the wealth management scope. Microservices will be able to be selected from disparate vendors who will specialise in dedicated areas of functionality in which they excel or they will be built independently and integrated by the Wealth Management firms themselves. Wealth Management firms will be able to replace components easily and at will and without the risks of huge migration events. Wealth Management firms will not have to put up with poor quality products or services from technology companies.

This architecture is a game changer. It will allow small, agile tech companies to upset the status quo and will ultimately lead to greater efficiency, quality and costs to the end consumer.

This is the basis on which FinoComp has been found and its principles are close to our heart.

Continuous Integration Pedestrian Light

Pedestrian Light?

green_man.jpgKnowing when things go wrong is crucial for any company, and FinoComp is certainly no exception. As part of our mission to produce top quality software, our whole team needs to be notified when an issue is detected in our builds.

To this end, we have combined cutting edge technology with FinoComp flair to create the Continuous Integration Pedestrian Light.

Red Man, Green Man

The concept is quite simple: For every code change made to our software, thousands of automated tests are executed to verify that everything is working as expected. If all tests pass, the green man light is automatically switched on. If even a single test fails, however, the red man light is turned on instead.

In addition to the light changing, a custom success or failure sound is played to alert team members to the updated build status. To keep it fresh, the sounds are changed every month. We currently have Simpsons-themed sounds, so a build failure will result in a disembodied Homer Simpson “D’oh!” emanating throughout the office. When a team member has fixed the build, Homer expresses his gratitude with an enthusiastic “Woohoo!”.


How It Works

Ray was fortunate enough to find a second hand pedestrian light for sale online. We purchased it and had an electrician rewire the two lights to standard 240V plugs. Each light is controlled by an smart power socket, and the sockets are controlled by a Python script running on a Raspberry Pi that checks our Continuous Integration servers for build status changes.

The pedestrian light still has its original light bulbs, which aren’t very energy efficient! To save power, the Python script automatically switches the lights off on weekends and after business hours.

A Big Success

The Continuous Integration Pedestrian Light is used by our team every day, and ensures that issues are discovered and resolved as soon as they occur. The light is also a popular part of the office walkthrough for new employees and other visitors.

Chris Parton – Senior Software Engineer, FinoComp Pty Ltd

Introducing The FinoComp Blog…

Who Are FinoComp and Why A Blog…


So, who is FinoComp?

We are a software development company focused on building, maintaining and supporting excellent software for the UK Wealth Management industry.

Our development centre (we call it our Finovation centre) is in Australia and our clients and servicing staff are based in the UK.

We have been around for 2 years now and we employ 20 full time staff, primarily focused around the development of our software components.

We started this company on a few very defining principles:

Quality People

We genuinely understand that the quality of our product is absolutely dictated by the exceptional quality of our people. We judge the quality of our people not just on their ability but also on their character and integrity. Every person we employ has been known, referred and hand picked. This philosophy flows through every part of the company from development, front line support, project management and even our admin team.

We don’t want to be big in the number of our people, we want to be big in the quality of our people.

Focus on Automation

Automation is a fundamental part of our strategy and is a key to our ongoing success.

We automate our software build, deployment and testing. This philosophy is ingrained in our culture and every development task taken is backed with another to develop automatic tests to back it. We automatically test all of our products every time we check a new code change in.

This fundamental infrastructure allows us to be highly confident in the quality of our products, allows our clients to have less regression testing effort and expense, and allows me to sleep at night.

More importantly it allows us to offer a truly agile (perhaps the world’s most misused adjective) development approach that is capable of supporting a DevOps relationship.

Microservice Architecture

Microservice architecture is fundamental to us.

We have core beliefs of the benefits of small, independent software components that perform dedicated tasks, have clearly defined integration layers and are independently deployable. Clearly such architecture must be backed by industrial strength monitoring.

Benefits over monolithic software applications are immense and include reduced regression impacts, reduced maintenance costs, faster development process, flexibility to swap in or out new components and performance benefits from distributed processing.

Absolutely core to a microservice philosophy is a willingness to collaborate with other technology providers. This willingness is core to us and we believe the days are gone where technology providers attempt to be all things to all people.

Why a Blog?

This blog is intended to represent our views and our vision for the Wealth Management technology space in the UK market and further afield.

It may not always be serious and it may not always be directly relevant.

It will, however, be an honest reflection of our attitudes and views on Wealth Management and Technology related topics, strategies and new innovations.

We hope you enjoy it and get some different perspectives from it.



Ray Tubman – CEO FinoComp Pty Ltd