THANK YOU FOR SUBSCRIBING
Congratulations, your IT team has started delivering on its promises and is now seen as a strategic partner with your business.What happens now? The business starts to send more requests your way, new projects, enhancements, features, solutions, strategies, ideas, etc. You hear things like ‘We need a new system that…’, ‘We need a solution for this…’, ‘Talk with those guys and figure something out...’ Now the bottlenecks start appearing, you start missing deadlines because you are not able to release fast enough without introducing more defects or cutting corners on security and by the way, here come a constant flow of tickets that you need to keep up with because of all the new product releases.The curse of the trusted IT team.
AsChief Information Officer at the NYC Department of Youth and Community Development (DYCD),I faced similar problems. We worked hard to build trust and become a strategic partner for the agency, our portfolios grew but the workforce started to become overburdened, our release dates started slipping, but the requests didn’t stop coming.Despite all this, we kept in mind one clear objective, ‘do not fall back, only forward’.Learning from past quagmires, we focused on identifyingforce multipliers to use our existing workforce to be more efficient and effective.
"Our primary focus in using DevOps was building Continuous Integration and Continuous Development (CICD) pipelines to quickly move work from development to production while still reducing risk"
Step 1: Learn new ways to work
We began by identifying staff that had the potential to look outside the box, can be self-starters, and had the ability to learn and bring those ideas back to the team. They came back with ideas and thus began our DevOps journey, by introducing principles of eliminating waste and automation. Our stated DevOps goal ‘is to continuously improve our internal processes to achieve great results and have raving fans!’ There was no going back, only forward.
Step 2: Identify waste
We ran exercises using Value Stream Mapping (VSM) to determine where we had the most waste within our processes, and which areas would have the most return on investment (that is keeping our customers happy).The release process was identified as having a huge amount of waste, as it required multiple teams to coordinate effectively and senior developers and admins to make the changes manually.We found that we were spending days on just moving our solutions and data from one environment to the next.Due to security concerns and to reduce risk there were only a handful of senior staff that were entrusted with the release and change tasks which not only caused bottlenecks of their time, but it removed them from developing new features and solutions. The VSM activity helped us easily identify time consuming tasks that we could automate, reducing releases from weeks to days to even minutes as we progressed.We did need to fully embrace cloud technologies in the process to realize the fruits of our labor.
Step 3: Identify the tools to eliminate the waste
Our primary focus in using DevOps was building Continuous Integration and Continuous Development (CICD) pipelines to quickly move work from development to production while still reducing risk. We began with a new project that was cloud-first, before looking at current applications, to fully embrace the technology landscape without introducing other variables. This gave the team the time to learn, play, fail, try again, and ultimately succeed. It allowed them the opportunity to embrace the new culture and tools. They focused on new ideas such as automated unit testing and security scans, scripting of all tasks including post-production operations such as backups and restore to sub environments.
Step 4: Make elimination of waste part of your core process
The team quickly realized the power of automation, yes there may be more up-front work, but the amount of time saved was tremendous, allowing teams to move to weekly release sprints as opposed to once every six months. Junior developers could now push code into production as the automation process checked their code, ran security scans and eliminated the need to give them greater security permissions. Other teams were then brought into the mix, now the database administrators started automating their jobs, operations scripted their tasks, and all was fed into a single pipeline.Once the process was learned and embraced our focus could shift to older applications and across all IT teams.
I don’t want you to think this was easy, it requires buy-in from everyone. As management, you must provide the ability for your team to fail, you must remove barriers to success and constantly cheer your teams successes and yes failures (or ‘learning opportunities’), you must be willing to embrace cloud and new technologies, and you must be willing to change. But most importantly you must find the right champions to create a grass-roots movement, this will never work from a top-down approach.
At DYCD we have been on this journey for two years and we still are only just scratching the surface of what we can do. We find that as quickly as we eliminate waste, more work is just over the horizon and so we continue to find ways to create more force multipliers.