I find it difficult to comprehend businesses today would sit back and accept lengthy release cycles. Somewhere out there is a smaller, hungrier start-up or business who doesn’t care whether you’re traditionally the biggest, previously the best or how it’s always been done. The younger generation are not afraid of trying new tech or products and this means you shouldn’t be afraid to change your software delivery model.
Continuous Integration/Continuous Deployment (CI/CD) platforms are now commonplace and it should be one of the key initial steps in the journey most are describing as ‘Digital Transformation’.
Of course, there isn’t much point in investing in a CI/CD platform if your software delivery team or partner are not capable of building and shipping code regularly. It is a total change in the development mindset and the initiative needs strong leadership. I’d suggest it should be driven with a business vision in mind.
A sample vision might be: “We want a fully tested and secure/compliant change pushed to production within 30 mins.” Everyone needs to be driving towards this common objective.
One of our clients is a well known media publisher. They spanked millions on a project to modernise their digital publishing platform and hadn’t successfully delivered anything after eighteen months of trying. After the appointment of a forward thinking CTO, the team eventually evolved to consist almost exclusively of high quality developers, and a lot of them! It did take a while to get the CI/CD right, as tools such as Docker were relatively untried in an enterprise context.
At no point was ‘Agile’ ever mentioned, the key to unlocking the release cycles was attracting the right mix of developers with an accountable mindset. Developers were expected to stand behind the code they built. If it broke, it was down to them or their team to fix and CI/CD plus well constructed microservices enabled this to be resolved with minimal business impact, as developers are able to check the code in and out quickly.
There was a point the business was getting frustrated as the infrastructure and optimal architecture was embedded, but their patience paid dividends. The dam burst after a few months and the business struggled to keep up as functionality was being shipped multiple times per day. It was great fun to be a part of.
From a major enterprise perspective, you know it’ll be tough to attract talented developers without some interesting tech and a story to tell. The net effect is you have to pay way above the premium to get them through the door (if you can). Quality developers are hard to come by and they expect some autonomy, interesting tech and flexibility to work remotely. If you’re not offering this, expect to pay above the odds.
To break away from misfiring and outdated delivery processes, you need to be bold and your existing development team need to be on the journey with you. If they are resistant, it’s down to a fear of the unknown and you have to be prepared for some of the key people in your tech team not seeing the journey through. Those who are fearful need to be reminded it’s an evolutionary process and if the projects involve migrating away from legacy platforms, chances are they will be the key to unlocking the balance between the old and the new.
I’d be genuinely interested to hear a business or industry where a long and arduous release cycle makes sense. Of course I understand some industries are more heavily regulated or need to track compliance. I have a major pharmaceutical client who were frustrated with their painfully slow release cycles and we’re working with them to help automate and marry up CI/CD into their compliance and manufacturing processes. Awareness of new methods and tools is growing, so don’t get left behind.
If you’re a CIO or CTO frustrated because you haven’t had any software successfully implemented for months, then it’s time to look for some help.
To conclude, I’d start the process by looking for partners or senior techies who don’t treat ‘Agile’ as a product and rather look for those with hands on experience and understanding of the resources, tools and mindset required to get you from A to B on your tech modernisation journey.