About the author
Nikhil Pal Singh is a repeat technical founder from Sydney, Australia with over 20 years of experience building software at companies like Lucent Technologies and Yahoo. Most recently, he founded TekTorch.AI: an innovation lab that helps businesses use state-of-the-art AI and ML to improve operations.
Over the past five years, Nikhil has been managing development teams of 15+ remote engineers.
Follow Nikhil on Twitter @techies
DevOps can be thought of as an effort to harmonize workflows between the development team and the technical operations team to optimize building a product or solution. DevOps makes use of techniques like automation and rule-based methods to enable faster deployment, expedite bug fixes, and quickly deploy version updates.
“DevOps” is likely a term you’ve heard a lot in recent years. It has risen in popularity compared to the traditional software development life cycle (SDLC) approaches like Waterfall. Traditional SDLCs each have unique merits, but I’ve found that, even with the best of intentions, they tend to create obstacles during the deployment process. They’re prone to issues like incompatible platforms in production, heavily taxing version updates, and miscommunication between technical teams.
By adopting DevOps practices, these obstacles can be greatly reduced or removed altogether.
Like me, other professionals have come to understand the DevOps methodology’s value and have committed to prioritizing it in their companies or organizations. A survey taken at the end of 2018 speaks volumes on its current and projected adoption:
- 17% of respondents worked in companies that had fully adopted the DevOps architecture for production.
- 13% of respondents mentioned that most of the teams in their companies operated using the DevOps strategy.
- 20% of respondents had one or more teams in their organization already using DevOps.
- 22% of respondents had recently started exploring the concept of DevOps.
- 14% of respondents were considering starting integration with DevOps in the near future.
DevOps had penetrated 86% of companies represented, at least at the planning level.
Why does it seem more vocal attention is being paid to DevOps than SLDC methodologies like Spiral and Iterative?
Here are the top 5 reasons why I believe the IT industry is gravitating towards DevOps:
Using traditional SDLC architectures, implicit insertions of time are placed between steps. This includes a big gap between the development and operational phases like deployments and monitoring. Simple requests for alterations from the development team that require code changes can increase the handshakes/interactions between the different groups in multiple passes, which can lead to a messy and exhausting workflow.
This is where I believe a DevOps architecture really shines. It ensures that requests and the code changes are reflected instantly after a quick review from the operations unit. And the version updates for the products deployed through the DevOps architecture are usually pushed through with better communication between teams and at a faster rate.
Reduced Bugs and Issues
As mentioned, DevOps favors short development cycles. This allows a vast degree of freedom for both developers and testers to frequently release and review new code and features. Moving in short cycles with a higher intensity usually results in higher quality code compared to lengthy phases where there are more opportunities for the process to “stall” between phases. Higher quality code is easier to maintain and iterate on.
This also means bugs are usually caught earlier and prevented in the long-term. The DevOps architecture is structured so that the developers and testers check for errors at multiple touch-points during the development process. And since discovery of a bug usually begets discovery of more bugs, the positive impact can have compounding effects.
Improved Collaboration Between Teams
Over the years I’ve seen issues like vague understanding due to miscommunication, incompatible platforms, and a partial views product’s development pipeline cause friction between the development and operation teams when adhering to a traditional SDLC methodology. The integration process is usually very tedious, interpersonally stressing, leaving behind a bitter experience. Any professional who has been a part of such a pipeline can attest to this; it can introduce toxicity and exacerbatee it over time as things go wrong.
DevOps processes encourage complete visibility across the pipeline for team memebers involved. This somewhat reduces dependency and encourages a more positive, symbiotic environment. Both teams can grow from each other’s inputs, work towards a common goal, and share achievements.
Further, when bugs are (unfortunately inevitably) discovered in production, teams will tend to focus more on where in the pipeline the bug “leaked” and work towards fixing the workflow rather than pointing fingers at each other.
Increased Productivity Through Automation
DevOps processes encourage inserting automation in the production pipeline for important but repetitive tasks. Automation not only makes the process less error-prone, but also frees up time so contributors can focus on complex, strategic, challenging tasks where manual effort is required.
When your team members spend a greater percentage of time focusing on complex problems, they grow into stronger contributors. Which brings me to my final point…
The DevOps architecture favors on quality over quantity. Professionals who follow the DevOps methodology will have a detailed understanding of the end-to-end workflow, rather than one or a few steps they or their department are responsible for. Since these individuals are exposed to more, they’re able to grow more and master more of the intricacies involved in shipping your product.
This results in a dense, highly knowledgeable team. By adopting DevOps processes I’ve been able to reduce projected headcount for IT professionals over time by nearly 35%.
If you found this useful, check out other articles from Nikhil such as The 5 Best Tools for Remote Development Teams.
Be sure to follow Nikhil on Twitter @techies
Photo by Kharnagy with sizing modification.