Situation
The candidates team is not only a feature focused team, but we are also a platform team serving about 20 internal teams consistently. Our team has three work streams:
- Feature Delivery (40%) (addressed here)
- Platform Maintenance and Reliability (30%)
- Manage Feature Requests for Internal Teams (30%)
The Maintenance responsibilities and the contribution management makeup our Platform team and represent where we spent majority of our time as a team.
Problem
Platform Maintenance and Reliability
- Our team owns and manages about 8 deployables
- Significant legacy code that hinders rapid development
- Our pages are not performant
- SLOs have not been defined and can’t be defined independently due to the feature teams building in our product not having pre-defined SLOs
- Depend on a plethora of services that break frequently upstream, disrupting our implementation ability
- 1/4 of our dev resources are allocated to releases
- We release daily - not monthly or weekly
Solution
Revitalize our micro frontend architecture
- Externalize critical plugins from the current host webapp
- Consolidate 4 host webapps into OneHost
- Modernize our micro-frontend system by leveraging Webpack 5
- Similar federated modules (plugin system)
- Embedded analytics (datadog monitoring)
- Open source = consistent with industry standard and documentation accessible to all