Why this document?
When I started Flexiana my goal was to create an environment for senior developers not to do bad engineering ever again.That cultural promise worked to a certain point.
But even really good developers sometimes need challenge and being pushed towards excellence that might initially seem too difficult.
But we're in the business of transferring billions, handling health data, personal information, vital corporate information. Our fault could cost a lot. It's worth doing it right.
This document, even when it is publicly available, is a handbook mainly intended for Flexiana developers. For us, this is not just a proposal. For us, this is a handbook of how things should be done. When the team decides how to do things, the general rules in this handbook are a source of decision-making. And in every moment we have a chance, we nudge the team to adopt 100% of this handbook.
Each team in Flexiana should achieve high level of maturity.
Every time we will get a chance, we will create “a case study” that helps to design and implement this change.
Please, keep in mind that teams can modify all of these things in order to adjust to the situation and what is being done.
At the same time, no team can ignore certain rules just because they don’t consider given thing to be important, they don’t know how to do that, they don’t have a person with given responsibility. Each time is expected to achive 100% compliance with all relevant points and additional steps that go beyond this.
Product management
Long-term maintainability, Code quality
Starting a new team
Automation
Running team maturity initiative
Monitoring
Developer productivity
ROI