“A leader is one who knows the way, goes the way, and shows the way” – John C. Maxwell
Fixing a monolith is a daunting task especially when the consequences include employment termination. We are lucky,however that we were given such consequences upfront along with the pain points and the requirements. Paint points can be great guides for the road ahead.
To build a better system that can improve the quality of life of our customers and make Penultimate Electronics profitable we need to understand the current system (monolith) better, which is a challenging task in itself for having to understand all the side effects under different circumstances. For example, performance during normal hours vs. failure during peak times. Hence, we proposed fitness functions to better understand the dynamism of the current system.
To further understand the current system, we produced a C4 model to expand our understanding beyond just the components’ views and into the system relationship with the current environment.
For us to move toward a better system, we had to set guiding principles:
- Increase profitability by accommodating customers’ growth: create a user experience that is excellent where customers are willing to easily buy support plans on with their products purchases.
- Avoid Big Bang approach in favor of phased approach.
As a result we are going to take the current monolith and transformit over multiple phases so that we can build an excellent customer experience.
A set of assumptions had to be put in place for us to make better choices on the alternative solutions that we thought of. Most of the assumptions are based on our personal experiences with ticket management systems and order fulfillments. We made sure such assumptions are well communicated in a dedicated section.
Through many deep discussions on alternative solutions, trade-offs, phases we built a set of ADR’s and made sure to put emphasises on the why being more important than the what.
Finally, a roadmap of our architecture work that can reflect the work that the architecture team wants to do in the future is put in place.
Enjoy reading our plan,
The Pentagram team.