The current COVID-19 pandemic has made automated and self-service IT ecosystems critical to keep business running. Here are nine tips to help your DevOps transition.
COVID-19 has brought unprecedented disruption to the world, and many IT teams find themselves in a new situation, supporting a remote workforce that also includes their own. While the nature of DevOps best practices is to be nimble, some things in modern IT still remain hands-on or siloed. Whether you prepared for this or not, this is the time to create an automated and self-service IT ecosystem and culture, that will not only keep business running, but help it come out strong from this period.
We have been practicing self-service enablement for IT for quite some time through our Big Data Analytics Platform (BDAP). Our BDAP utilizes Platform as a Service (PaaS) principles. It allows our engineering and manufacturing users to focus just on bringing applications and data together. This way they can focus on the high value opportunities like developing analytical models and providing deeper insights by using Machine Learning (ML) while having a predictable and reliable process of getting these applications into production.
We’ve learned a lot of lessons over the past few years (some of those you can read in this blog series). I want to share nine best practices than can help your team during this emergency situation.
1. Everything Needs to Happen Online
Dependency on face-to-face is where you’ll find most hiccups happen. The best way to overcome this is to get teams used to documenting everything in one platform – every conversation, every hand-off, every bug, issue or ticket. Get the conversations to happen in one place that’s available for everyone to see and you’ll start seeing better collaboration and clarity through transparency. Using collaboration tools like Slack or MS Teams can be a great way to head in this direction.
2. Find the Right Tools (Hint: They’re Already Out There And Being Successfully Used)
The first step really is about planning your platform and mapping out what you need to accomplish at each step. You don’t need to reinvent the wheel. There are DevOps teams in all business verticals successfully using these tools today. There is an abundance of tools, applications and open source software out there – do some research (aka web search) and start taking advantage of them.
3. Infrastructure as Code
Most IT teams are already running some infrastructure as code today. As you think forward, the goal is to be able to deploy (almost) anything without touching it, not just in the cloud but also on premises. Working towards having the ability to automate the ability to create, change or destroy ALL environments in your ecosystem. This allows for quicker turnaround when you need to scale, upgrade or recover. Ultimately, this will decrease the ability for your team to make mistakes and greatly increase your overall user experience.
4. Put Self-Service First
We have purposely built our Big Data Analytics Platform for global self-service – this was our focus from the beginning. As such, users can access it from any location around the world, and that extends to their home. If you build things that are point solutions, and narrow, you’ll find they’re not extensible, specifically when you are in a crisis situation. You want to build something that will be the core of all future work and can then be enhanced, broadened or adapted, not a one off. If you don’t put this as the foremost principal, you’ll find yourself building many separate solutions, and losing the initial investment.
5. Containers are Your New Best Friend
Containers are the new(-ish) way to run applications more nimbly. Their low overhead lets you spin things up fast and possibly allow you to pack more applications into smaller physical footprint by being able to better utilize the hardware. One of the additional advantages of using containers is that your end users can deploy code and applications without having to touch an operating system or security patches. For your team this means you have full control of the stack, and when a single application is not behaving as it should, it doesn’t take everything down with it (they can break something, but not everything.) It also adds a level of transparency into what applications are being run and how they are used so your team can continue to improve the underlying infrastructure.
6. One-Stop Shop
I wholeheartedly believe that having a single point of entry for any issue is the best model for both the end user and our team. On one hand, end users don’t have to chase different people to find answers, or try to figure out who to turn when things do not work. This avoids a lot of confusion and frustration, and focuses on much better end user experience. For your organization it means more transparency, shared responsibility and a collaborative model for finding the solution challenges or issues. To operate holistically, you need to break down traditional silos and you’ll find that things work much better when everyone is aware of each other.
7. Touch it Twice? Automate it!
This is something I often say to my team: if you touch it twice – automate it. Automation is key to helping things scale successfully. We make extensive use of Ansible for automating our apps , configuration management and IT infrastructure. One symptom of using a tool like Ansible for your configuration management is that it keeps a record of all changes – who, what, when – it allows you to get to the bottom of possible issues caused by making changes.
8. Get IT Out of the Way
This might sound funny coming from an IT lead, but self-service should be exactly that- autonomous. End-users should feel nimble and enabled when working on projects. While your team is overseeing all of the pieces and making sure they seamlessly work together, users should feel that IT is never in their way, on the contrary – always adding value and capabilities.
9. Prioritize Soft Skills
We can talk forever about implementing the right tools, but in a time of change you will need a team that feels comfortable pivoting quickly. I can’t emphasize enough the role that soft skills play in stressful situations. If this wasn’t something you considered when hiring, try to find ways to help your team learn how to better contend what will likely be a continuously changing environment and circumstances.
Want to Bring More Value to the Business?
The “Cloud” model has really opened up the business’s eyes to what self-service and automation should look like. Teams are now accustomed to the ability to spin services up at a click of a finger. IT has to operate in the same way if they want to bring more value to the business. By IT embracing self-service and automation best practices, it brings the ability for the business to innovate to the next level. Allowing the business to go from concept to production in an IT governed manner while removing the red tape and helping IT be a partner that can truly help the business’s bottom line.