How we built a corporate risk and compliance management application and mobile app in 8 weeks
One of our clients, a large international energy company, contacted us with an urgent project. The previous vendor that was lined up to implement the project had pulled out at the last minute without notice. The client was left scrambling to find someone to come in and save the project. They set up a meeting with their solutions architect to discuss the project requirements, timeline, and architecture.
They were trying to create an internal backend system and mobile application to manage their risk and compliance issues globally across their entire company. They already had an architectural plan in which they had come up with the previous vendor. The architecture consisted of 8-10 microservices, with native iOS and Android apps connecting to an orchestration service that utilized graphql to query data across the 8-10 microservices. After hearing all the requirements, and the architecture, I kindly thanked the solutions architect.
When their Digital Coach and VP asked me if our team could do it in a really aggressive timeline, I told them yes confidently. I also told them there was one caveat. They would have to let us choose the stack and the architecture. During this time, McKinsey was still onsite and in the heat of digital transformation. There was a huge focus on speed and time to market. Normally, in enterprise environments, the powers that be, make their own teams and outside vendors jump through hoops to use technologies and stacks they prefer. But this wasn't the case, we were in the middle of a large corporate-wide push to digital transform. Another thing that actually worked in our favor was that they were already behind schedule since the previous vendor ditched the project last minute.
I proposed a monolithic rails application with React Native mobile application. And I told them I was confident it would be completed in 8 weeks. They were skeptical. To be honest, most of our team was skeptical. I was not because we had done a much more complicated e-commerce project for the largest restaurant chain and passed UAT on the first try.
Sprint Zero took three days. In three days, we accomplished the following:
-
Set agile team working conditions and processes
-
Meet with their Product Owners to gather requirements and create a roadmap
-
Setup Jira and populate all user stories for MVP
-
Provisioned staging and production environments
-
Set up CI/CD pipelines for both backend and mobile apps
Our client said it was the fastest Sprint Zero they've ever seen.
Through every sprint, we focused on delivering working features as quickly as possible. And 8 weeks later, we surprised the client and even ourselves when we finished the MVP successfully. The client was so happy, they invited a famous pop singer to come to the release party.
I have no doubt that we would have been able to deliver with the initial architectural plan. However, this would have required a team that was at least 5-6 times as large and cost 5-6 times more. But the real question is this:
Why on earth would you go with microservices architecture for an MVP that services a maximum of hundreds of users?
Make it happen.