Richard Birksteiner, CTO
Faster software improvement
with Continuous Integration/Continuous Delivery
Faster software improvement with Continuous Integration/Continuous Delivery
Customers need to be able to respond to changes ever more quickly. Development in big bangs is no longer suitable for this. Modern application development uses Continuous Integration/Continuous Delivery (CI/CD) pipelines. Just as the
Software always in releasable condition
Rapid changes require a high degree of automation, in terms of both the development and testing of changes. Our pipelines are therefore based on Git repositories (GitHub and GitLab). When a developer pushes something to Git, something happens right away in our pipeline, keeping us as up-to-date as possible. Pull requests are tested automatically as much as possible. No code is pushed to production without a thorough review and not only an automated one but also by someone at rb2. The software must always be in releasable condition. Automation helps in this. If there are small changes in the form of pull requests, we implement them in less than a day and immediately push them to the live environment. This helps maintain a healthy code base for the application you are working on. Also, the impact of such small changes can never be huge, so the customer should notice hardly anything - if anything at all.
CI/CD does take a little getting used to
Nevertheless, CI/CD also has to land well with customers. And that's not self-evident. It requires a different way of thinking and depends on what you use CI/CD for. For an organization that has been working with gated releases for years, the switch to CI/CD is quite a big step. Your software is constantly being tinkered with, mostly without your scrutiny. Automatically accepting small changes is largely a matter of trust. In our experience, it helps to release often. By continuing to learn, you build that trust together.
Look ahead, not back
It will still take a few years before everyone is comfortable using CI/CD. But those who take the first steps can increase their competitive advantage. It's a question of looking ahead.
With CI/CD, looking ahead even becomes somewhat easier. Because instead of the rather annoying roll-backs, CI/CD makes a roll-forward easier. If you need a fix for a feature, you can implement that fix by going to the next version. Not by going one step back and then waiting for a fix in the current version. That way, even if something doesn't work well now, you can still keep looking and thinking ahead.