When a product has been proved to be a success and has just come out of a MVP (Minimal Viable Product) or MMP (Minimal Marketable Product) state, usually a lot of corners would have been cut in order to get a product out and act on the valuable feedback. So inevitably there will be technical debt to take care of.
What is important is having a technical vision that will reduce costs and provide value/impact/scaleable/resilient/reliable which can then be communicated to all stakeholders.
A lot of cost savings can be made when scaling out by putting together a Cloud Architecture Roadmap. The roadmap can then be communicate with your stakeholders, development teams and most importantly finance. It will provide a high level “map” of where you are now and where you want to be at some point in the future.
A roadmap is every changing, just like when my wife and I go travelling around the world. We will have a roadmap of where want to go for a year but are open to making changes half way through the trip e.g. An earthquake hits a country we planned to visit etc. The same is true in IT, sometimes budgets are cut or a budget surplus needs to be consumed, such events can affect your roadmap.
It is something that you want to review on a regular schedule. Most importantly you want to communicate the roadmap and get feedback from others.
Feedback from other engineers and stakeholders is crucial – they may spot something that you did not or provide some better alternative solutions.
The first stage is to decompose your ideas. Below is a list that helps get me started in the right direction. This is by no means an exhausted list, it will differ based on your industry.
|Application Run-time||Where apps are hosted||Azure Kubernetes|
|Persistent Storage||Non-Volatile Data||File Store|
|Backup/Recovery||Backup/Redundant Solutions||Managed Services|
|Data/IOT||Connected Devices / Sensors||Streaming Analytics|
|Gateway||How services are accessed||Azure Front Door, NGIX, Application Gateway, WAF, Kubernetes Ingress Controllers|
|Hybrid Connectivity||On-Premise Access|
|Source Control||Where code lives|
Build – CI/CD
Azure Devops, Octopus Deploy, Jenkins
|Certificate Management||SSL Certificates||Azure Key Vault|
SSL Offloading strategies
|Secret Management||Store sensitive configuration||Puppet (Hiera), Azure Keyvault, Lastpass, 1Password|
|Mobile Device Management||Google Play|
|G-Suite Enterprise MDM etc|
Once you have an idea of all your components. The next step is to breakdown your road-map into milestones that will ultimately assist in reaching your final/target state. Which of course will not be final in a few years time 😉 or even months!
Below is a link to a google slide presentation that you can use for your roadmap.