By Brian Kathman, CEO and Co-Founder, OpsCanvas
The scarcity of talent in cloud engineering already creates challenges for SaaS companies, including the need to pay premiums for new talent and the constant risk of your best being hired away. This situation will only worsen as cloud deployments grow, turning the finding, hiring, and retaining of top talent into a hamster wheel. We need to find a better way to address and manage mission-critical tasks and people so the business isn’t in a perpetual state of risk.
Shared Goals, Divergent Paths
SaaS companies continue to invest significantly in DevOps to help them improve software development and delivery.
- Analysts estimate SaaS companies will spend more than $13 billion on DevOps people and technologies in 2023.
- Research and Markets forecast the DevOps market to reach $32.7 billion by 2028, a compound annual growth rate (CAGR) of 24.69%.
- A March 2023 SaaS Capital survey of 1,500 SaaS companies found that they spend a median of 4% of their annual recurring revenue on DevOps people and tools. This can translate to as much as 20% of their engineering budgets.
These prodigious investments are supposed to decrease the time to market and the time to succeed for cloud deployments at those companies. But too often, DevOps teams are seen as bottlenecks, not enablers. While business leaders can see when new cloud deployments happen or revenues are earned, the contributions and successes of DevOps teams are often obscured. Business decision-makers sometimes only pay attention to DevOps when failed or delayed deployments or security breaches happen.
A prime reason for this disconnect is differing perceptions and priorities. A 2023 GitLab survey of more than 5,000 respondents found that the top five organizational benefits of DevOps are operational efficiency, increased developer productivity, better code quality, more secure applications, and happier DevOps team members. Respondents also said increased developer productivity was the primary driver of DevOps adoption at their organization. The top causes of DevOps delays cited by respondents were code development, monitoring and observation, deploying to non-production environments, testing, and code review.
Those top delay causes involve process elements that are critical to the business but of little interest to DevOps engineers. Engineers tell us that mundane, repetitive tasks such as managing budgets and documenting and proofreading YAML code feel more clerical than creative. Unfortunately, many of the tasks DevOps engineers like least are things the business cares about most because if they’re delayed or not done well, it creates bottlenecks for everyone.
By assuming those necessary but mundane tasks should be done by DevOps engineers, business leaders are making it more challenging to attract and retain the DevOps engineers they need. As cloud deployments increase and grow in complexity, engaging, hiring, and retaining effective DevOps engineers will continue to get more difficult and expensive, especially for smaller, resource-constrained companies. If those companies cannot retain the DevOps engineers they are able to hire, they face the additional challenges of replacing lost engineers and bringing those replacements up to speed on the projects and goals that matter.
In addition, requiring DevOps engineers to perform multiple manual, mundane tasks creates errors that challenge compliance and security. Manual processes put unfair pressures on smaller, resource-challenged teams to achieve and maintain compliance and security. Even if a company is able to pass a compliance audit, those manual processes create security risks that can be difficult to discover until they are exploited. A lot of companies don’t really know how (in)secure they really are.
These and other challenges largely result from too many business people working under assumptions about DevOps engineers and their job descriptions that are inaccurate, incomplete, and misfocused. And this disconnect cannot be reduced or eliminated by throwing more money or bodies at this disconnected situation.
The Answer: More, Smarter Automation
Fortunately, one of the things DevOps engineers enjoy most is also critical to fixing the DevOps-business disconnect: automating tasks. The pursuit of this goal is one of the driving forces behind the growing adoption of infrastructure as code (IaC) and investments in platform engineering. Platform engineering enables DevOps engineers to automate infrastructure provisioning and management with IaC, ensure infrastructure consistency across multiple environments, and reproduce environments.
These benefits can save time and effort, reduce errors, improve reliability, compliance, and security, and streamline development, testing, and disaster recovery. IaC can also improve version control and enable more effective collaboration among DevOps engineers. IaC and other effective, innovative technologies can free DevOps engineers from many mundane, manual efforts and make some of those efforts entirely unnecessary. But while IaC can help codify provisioning and enable some other advantages, it still requires scarce and expensive engineers.
The right technologies can enable DevOps and DevSecOps people to spend more time on the creative tasks they prefer and less on reviewing keystrokes, correcting errors, and fighting fires. Enabling them to do so improves recruitment, retention, and job satisfaction.
However, not all solutions that promise to save effort, money, and time are created equal. Many of the current offerings trying to deliver more automation and simplification still require specialized, expensive engineers as well. In contrast, the best alternatives can reduce the need for scarce, expensive specialist engineers. Such alternatives enable the entire team’s involvement in ways that focus on their highest value and most satisfying tasks without requiring everyone to become specialized experts. This can reduce the tendency of businesspeople to expect DevOps engineers to know and do everything required, especially at startups and smaller companies. Otherwise, those companies either have to spend a lot more money or put unwieldy burdens on the few engineers they have and can afford.
To avoid these challenges, the OpsCanvas team takes a different approach. That approach replaces the traditional, time-consuming, and error-prone manual processes of infrastructure code development, testing, revision, and deployment. Instead, a software developer simply draws a logical diagram of the desired application or modification. OpsCanvas “Generative IaC” technologies automatically generate the IaC and deployment scripts needed for the requested deployment or application modification.
This “Draw and Deploy” approach frees DevOps engineers from manual coding and editing, allows them to be part of the deployment process, and enables them to work faster, more accurately, and more securely. The OpsCanvas approach also minimizes human error and configuration inconsistencies, making environments more secure and reliable. With OpsCanvas, every cloud environment follows predefined best practices and guidelines for more consistency across each entire infrastructure. Collaborations are improved, productivity increased, and deployment times and time to market are reduced from days to minutes, which makes everyone happy, including the customer.
Fixing the DevOps-business disconnect is all about time to market and time to success. These challenges will only worsen as more companies seek to deploy their software to the cloud, software gets more complex, and larger enterprises gobble up more and more scarce, expensive DevOps engineers.
OpsCanvas’ vision is to enable all businesses to leverage the scalability and potential of the cloud without the complexities of deployment or over-reliance on specialized engineers. We aim to democratize the cloud and allow all companies to harness its power, keeping them competitive in today’s fast-paced digital world. The OpsCanvas Deployment as a Service platform streamlines cloud deployment for startups and established enterprises, eliminating the need for expensive resources or specialized technical knowledge. By using OpsCanvas, businesses can simplify cloud deployment, making it a straightforward and seamless process that no longer requires navigating complexity.