Category: Blogs

  • OpenELA Commits to Building RHEL-Compatible Operating Systems

    OpenELA Commits to Building RHEL-Compatible Operating Systems

    CIQ, Oracle and SUSE are pooling their collective efforts to form the Open Enterprise Linux Association (OpenELA), a trade group committed to developing Linux distributions compatible with Red Hat Enterprise Linux (RHEL) by providing open and free Enterprise Linux (EL) source code starting later this year.

    EL is the base operating system that RHEL and SUSE Linux Enterprise, Oracle Enterprise Linux, Ubuntu from Canonical and Rocky Linux from CIQ are built upon.

    The effort is a direct response to a decision made by Red Hat to no longer make the source code for RHEL available to organizations that want to build RHEL-compatible platforms based on a Linux distribution. In place of RHEL, the code to enable downstream distributions of Linux that would be compatible with RHEL will be provided. The initial OpenELA will be on RHEL versions EL8, EL9 and possibly EL7.

    Wim Coekaerts, executive vice president of software development at Oracle, said there have already been instances where organizations migrated from one distribution of Linux to another. The goal of OpenELA is to reduce fragmentation that might occur with RHEL source code no longer available to the open source community.

    Alan Clark, a member of the SUSE office of the CTO, added that this approach will preserve the flexibility organizations have today as it is specifically applied to RHEL-compatible platforms.

    It may be a while before RHEL-compatible distributions of Linux based on EL are available, but the time and effort required to replace the operating system is much less than in prior years. It’s not clear to what degree IT organizations are concerned about the Red Hat decision, but if they are, they will need to decide to what level they will swap out operating systems versus deploying a different distribution of Linux for new application environments going forward.

    Conflicts involving various forks of projects continue to be an issue for the open source community. Mostly those forks are created because of differences in business models, but other factors play a role including the pace of innovation and, regrettably, personality conflicts among maintainers of open source software projects.

    Regardless of the root cause for creating multiple distributions of any given project, each variant adds complexity that DevOps teams need to navigate. Dependencies on specific versions of open source software can create issues when specific capabilities are not available on another platform that a DevOps team is using to deploy an application. As a result, some organizations prefer a proprietary platform such as Windows simply because they perceive navigating the compatibility issues they may encounter to be more challenging than they can handle.

    The trade-off is that open source software drives innovation faster as the pace at which contributions are made accelerates over time. It’s like most democratic processes—it’s a little messier than any other form of governance.

  • System Initiative Open Sources Digital Twin Tool for DevOps

    System Initiative Open Sources Digital Twin Tool for DevOps

    System Initiative (SI) today announced it is making the digital twin tool it developed to manage DevOps workflows available under an open source Apache 2.0 license.

    Company CEO Adam Jacob said the approach will enable third parties to contribute to a project that is still early in its development cycle while SI provides commercial support via a subscription service.

    SI has developed a tool that creates a digital twin of a DevOps environment that provides a level of abstraction that makes it simpler to manage complex workflows at scale.

    At the core of that effort are models of IT environments created by the SI platform accessed via a visual interface. The automation framework built into the platform uses the relationships between models to infer configuration dynamically and generates typescript code that a DevOps team can then apply to automate a task.

    Feedback loops are provided in real-time to give insight into the viability of a configuration, in addition to eliminating the need for state files to track and ‘plan’ versus ‘apply’ stages.

    This approach streamlines a lot of the complexity that creates bottlenecks in DevOps workflows in what heralds the arrival of a new DevOps 2.0 era, said Jacob.

    In general, SI is making a case for an alternative approach to managing DevOps as the existing platforms and framework are fundamentally broken, added Jacob. Models that create digital twins of DevOps environments represent the arrival of a new era of software development and deployment, he noted.

    As more organizations realize their dependency on software to drive digital processes many are then looking to improve the productivity of developers and the DevOps teams that support them. Unfortunately, many DevOps teams are supporting DevOps workflows using custom code that varies widely in quality. Rather than rely on a DevOps engineer to write code, the SI digital twin tool will create code that can be applied more consistently to create DevOps workflows programmatically.

    One of the reasons few organizations today have fully automated DevOps across the application development and deployment process is that it’s simply too difficult to achieve using legacy tools and DevOps platforms. It’s not clear to what degree a digital twin approach to managing DevOps will resolve that issue, but when coupled with the arrival of artificial intelligence (AI) capabilities the way DevOps is managed is clearly about to transform.

    It may take a while for that transition to occur, but DevOps teams that have historically embraced automation are at the very least going to aggressively experiment with technologies that promise to eliminate much of the drudgery that makes DevOps more tedious than need be. The issue, as always, will be determining which technologies live up to the current level of hype being generated in a way that can be easily adopted.

  • How Observability and Explainability Benefit the SDLC

    How Observability and Explainability Benefit the SDLC

    Software systems require continual modification to meet changing requirements, address errors, improve performance and enhance reliability. Yet, maintaining and modifying complex and distributed software systems as they change and grow can present challenges. When systems are designed with observability and explainability in mind, adapting, expanding and troubleshooting software becomes easier and more effective. Observability refers to the ability to discern and monitor software systems’ real-time behavior and performance. This allows developers to identify and fix issues before they become critical. Explainability articulates how and why the software system operates.

    Both observability and explainability can contribute to the health of the software development life cycle by improving visibility and transparency, helping developers better understand the system’s overall behavior, and allowing the easy identification of errors, all of which contribute to the software system’s overall stability.

    Overview and Benefits of Observability

    Observability combines data from various sources, including application performance management (APM) monitoring, infrastructure monitoring, distributed tracing, third-party integrations and machine-language data. The data is then structured and presented in an accessible way. The first step to building an observable workflow is to identify which metrics best measure the behavior and performance of a software system. This will vary based on the specifics of the system. As a software system operates, logs and traces keep track of activities, requests and responses. They can be used to find the causes of errors and performance bottlenecks. Application performance monitoring (APM), infrastructure logs, machine logs and application traces are just a few examples of logs and traces. These records provide the necessary data to create dashboards and visualizations, which can then be presented to organizational stakeholders.

    While observability is often compared to software monitoring, which generates data focusing on various metrics related to application performance, it differs from monitoring in several respects. Monitoring tracks raw data related to a few performance metrics. It provides information that is best used by the operations team. Observability uses a large amount of structured data to provide a more robust, accessible picture of the whole system, from front end to back end, that can be understood by employees throughout the organization—even those who do not work in development or lack a technical background entirely.

    Advantages of Explainability

    Explainability refers to transforming machine data into a clear articulation of how a software system works such that others outside the organization can understand it. This capability empowers developers and users alike by enabling them to understand what a software system does and how and why it does it, providing a deeper understanding of why errors occur and how to fix them. Presenting data in a visual format is often a vital part of explainability.

    Explainability is especially important in artificial intelligence (AI) and machine learning (ML) systems, where it constitutes a cornerstone of ethical AI development. Model tracing, which refers to monitoring an ML model as it executes to understand its decision-making process better, is a key component of explainability in ML.

    Best Practices and Common Issues With Observability and Explainability

    Before adding observability or explainability to the software development life cycle, it is important to revisit software life cycle best practices and examine what kind of data is being generated. Not all data is meaningful or useful in observability and explainability. Structuring and ordering data from logs and traces is time-consuming but vital to correctly analyze and draw conclusions from the data. For optimal results, it is important for traces to be appropriately tagged and named consistently according to conventions.

    Additionally, the tools used to implement observability and explainability can be complex. For organizations to achieve maximum benefits from these strategies, it’s important for employees to familiarize themselves with the tools and develop specialized knowledge and skills, which can take time. Finally, there are costs associated with implementing observability and explainability. On one hand, commercial software tools come with licensing costs, which can pose a barrier for small businesses. On the other hand, open source alternatives often do not perform well because they lack the funding and resources required to continuously update and enhance the software.

    Harnessing the Power of Observability and Explainability

    Observability and explainability have numerous benefits for organizations that use flexible, ever-changing and complex software systems. Any company interested in building smoother-functioning software applications stands to benefit. Though both observability and explainability require upfront investments of time and money, these investments pay off in the form of quicker and easier error correction, with resolution occurring in minutes rather than hours or days, and greater application stability. In customer-facing applications, this results in fewer crashes and a better experience for the user. Increased stability also makes it easier to scale applications without losing performance. As these benefits become more apparent, a significant number of companies will likely develop software solutions that are reliable, cost-effective and accessible. This will increase the adoption of observability and explainability, which will continue to influence the evolution of software systems.

  • Low-Hanging Fruit, 2023 Edition: Part Two

    Low-Hanging Fruit, 2023 Edition: Part Two

    Last time, we discussed setting up a comparative inventory system for your growing API footprint. The idea is that as security catches up to new technology deployments, enterprises will have to step up their game and implement those new technologies. API security is currently the biggest need because of exposure to the world, but not far behind it is container security, which we’ll discuss here.

    The point of container security is to make certain that your images are as secure as possible. Container security looks at source container definitions, added libraries and configuration options inside the container definition files ( or for those of you who prefer them, Docker files).

    A Tempting Target

    We are spinning up a bewildering number of containers these days, and having source images–particularly if they come from the outside–is a tempting target to attackers. Imagine if an attacker can hit the base container definition that all of your “golden images” come from and just insert a call to download a library. Soon, your entire application infrastructure could be a tool for that attacker to do as they wish. And if they’re cautious, they might get away with it for months (as many have).

    The Definition of Containers is Security

    So there is absolutely an imperative to ensure that the definition of containers is security–all of your containers. And there is an imperative to know what software is installed via container definition and what software is actually running on container instances. Much like our discussion about static versus dynamic API scanning, bad actors can modify a running container, so drift detection is half the problem, even while scanning registries and definition files has more appeal from the blast radius perspective.

    There are a lot of tools and vendors that range from simply scanning the files and generating an SBOM to complete container security by scanning the images, using the SBOM to perform software composition analysis, using data feeds to determine which software in the SCA is a threat, and how urgent or broad that threat is and monitoring deployed containers for drift. The more of these an organization implements, the more configuration and maintenance effort, but the payoff is security at a more fundamental level. The whole appeal of a container architecture is recoverability–if things go terribly wrong, we can redeploy easily. But if the source files hold the vulnerabilities, redeploying is temporary at best and likely would warn attackers that you’re onto them.

    Be Proactive

    So a more proactive approach is required. Obtain and install tools that will help you protect your container infrastructure, be they sold as container security, cloud workload protection, SCA or something else. The key is locking down this avenue of attack at the beginning of the software supply chain, not where you get the tools.

    And again, keep rocking it. As I said in the other post on low-hanging fruit, we need this because you all are serving the organization’s needs with the best solution for the job. Now that security technologists understand your new problem domain, let’s get tools into place to continue the protection of all that shiny new stuff.

  • Latest Redis Update Streamlines Management of Platform

    Latest Redis Update Streamlines Management of Platform

    Redis made a unified release of its namesake data store available today for consistent deployment across all supported platforms. Previously, the pace at which upgrades were made was staggered across different offerings only as they became available.

    At the same time, Redis is moving to unify client libraries used to access its open source data store by working directly with the community maintainers of the five most popular client libraries—Jedis (Java), node-redis (NodeJS), redis-py (Python), NRedisStack (.Net), and Go-Redis (Go).

    Other capabilities added to version 7.2 of the platform include support for auto-tiering, to more easily migrate less frequently accessed data to less expensive storage devices. This is managed via an enhanced interface for the Redis cluster management and data integration tools, available in preview. Both make it possible to consume data in real-time from another data source, such as a SQL database. Developers can also take advantage of triggers and functions to build those types of applications.

    Redis is also previewing a search tool for vector data used to create generative artificial intelligence (AI) applications. Rather than employing a separate vector database to build these applications, the Redis platform supports this data type to enable generative AI applications to run alongside other classes of applications accessing the same data.

    Redis CEO Rowan Trollope said collectively these efforts will help DevOps teams reduce costs and streamline the management of upgrades to the platform and updates to applications accessing it.

    Most organizations initially adopt Redis to provide a layer of cache using a data store that runs in-memory. However, as more applications are developed many organizations wind up using Redis as their primary database for applications that require a lot of interactivity, noted Trollope.

    While developers primarily make that architectural decision, the overall management of the Redis data store falls to DevOps teams that will now find it easier to streamline workflows across multiple instances of Redis running in the cloud, or on a Kubernetes cluster, added Trollope.

    Of course, in some cases, organizations still rely on database administrators and data engineers to manage those workflows, but as DevOps continues to evolve, more instances of data stores are being incorporated into workflows managed by a DevOps team. The ultimate goal should be to align DevOps and DataOps best practices to increase the productivity of developers and data science teams building generative AI applications using vector data to customize an existing large language model (LLM).

    Regardless of the motivation, what’s clear is the volume of data that needs to run in-memory continues to increase substantially. As that shift continues to occur, more latency-sensitive applications are being deployed. Maintaining the performance of those applications across a highly distributed enterprise environment with multiple service dependencies requires a level of DevOps expertise that is still difficult to find and retain.

  • Using Observability to Create a Smart Data-Driven Culture

    Using Observability to Create a Smart Data-Driven Culture

    The first words that come to mind when talking about smart technologies are often artificial intelligence, machine learning and automation. While these smart technologies play a crucial role in smart-driven cultures, they are not the sole factor in making workplaces “smart.” Organizations that have a smart-driven culture, or data-driven culture, also promote innovation. An innovative organization actively encourages creativity, exploration and the pursuit of new ideas, continuously developing and implementing groundbreaking solutions, products and processes. Innovative companies with a culture of learning and growth are often seen as desirable employers and have high employee retention rates, attracting top talent.

    Let’s go over the benefits of a smart-driven culture and how an observability platform can help your company become data-driven in five steps.

    Why is Smart-Driven Culture Important

    You can increase efficiency and productivity among your employees by fostering a smart-driven culture. Smart technologies are able to automate repetitive tasks and streamline processes, which helps free up workers’ time and focus on other issues instead.

    A data-driven culture can also drastically improve decision-making on a company level. Your organization will begin to strategize and act on objective insights rather than guesswork or assumptions. Through collecting, analyzing and interpreting data, you will not only be able to make informed decisions but also know how to optimize processes and mitigate risks.

    Use data to better understand your customers’ preferences and improve your products to meet their demands more effectively. For example, leverage smart technologies and create high-tech touchpoints to tailor each of your customer’s experiences. A culture that encourages continuous learning, experimentation and adaptation is ready to navigate market shifts, changing customer needs and emerging technologies.

    How to Create a Data-Driven Culture in Five Steps

    According to the 2023 Data Analytics Survey conducted by New Vantage Partners, 79.8% of data leaders identified people, business processes and organizational alignment as the principal challenge to becoming data-driven. These folks cited cultural issues, including organizational receptivity to change, communication and organizational alignment, as the greatest obstacles to realizing business value.

    One way to overcome these challenges is by harnessing the power of observability, building data literacy and organizational transformation. Observability refers to the practice of gaining real-time insights into systems, applications, and processes through the collection and analysis of relevant data. Real-time insights will enable your organization to make data-driven decisions, understand your customers better and quickly identify areas of optimization to improve your products.

    These characteristics are fundamental to smart-driven companies, enabling them to stay competitive and drive innovation in the market. Take the following five steps to ensure you’re maximizing the potential of observability and paving the way toward becoming a smart-driven organization:

    1. Define Clear Goals

    Start by defining what a smart-driven culture means for your company. Write down clear outcomes that you want to achieve with a new culture, and identify the specific areas where observability can make a significant impact on your team.

    Focus on areas where real-time insights derived from observability can generate substantial business value. Set SMART (specific, measurable, achievable, relevant and time-bound) goals that can be tracked over time. For example, you could aim to reduce website loading time by 20% in the next two months in order to increase customer conversion.

    2. Implement Robust Observability Tools

    Evaluate and choose observability tools that align with your organization’s specific needs and goals. Look for tools that offer features such as real-time monitoring, log management, distributed tracing, advanced analytics and visualization capabilities.

    Consider factors like scalability, ease of use, integration with existing systems, and the ability to handle diverse data sources. Remember that the availability of accurate and timely insights promotes a culture that values data and encourages performance for achieving business objectives.

    Ask your IT department to help set up your observability tools to gather the relevant data. For our previous example goal of improving website loading times, this will mean gathering real-time data on website performance, such as server response times, page load speeds, and user interactions.

    3. Promote Data Literacy

    Your observability tools are of little help if no one understands how to use and derive helpful insights from the data you gather. Educate all of your employees on good data practices and the role of analytics in decision-making.

    Provide training and support on the data tools you have chosen and encourage your employees to understand, interpret and utilize data effectively in their day-to-day work. For instance, in meetings, you can ask for data points to back up business decisions.

    4. Encourage Collaboration and Knowledge Sharing

    Creating cross-functional teams and encouraging collaboration among different departments, such as IT, operations and analytics, is crucial for the successful implementation of observability practices.

    Taking an interdisciplinary approach allows for a better understanding of the systems and data within the organization. This can lead to the identification of optimization opportunities, help break data silos and practice collective problem-solving as a result.

    5. Iterate and Improve

    Embrace a culture of experimentation and continuous improvement by using observability data to identify areas for optimization and innovation. Encourage teams to test hypotheses, implement changes and measure the impact, fostering a cycle of learning and refinement. Track progress against the goals you set at the beginning and adjust your trajectory if needed.

    Coming back to our goal to improve website loading time. Now that your interdisciplinary team implemented some changes and reduced the loading times, you can assess the impact on user experience and business metrics, such as bounce rates, conversion rates and customer satisfaction.

    Becoming a smart-driven organization will grant you a great competitive advantage. You will make better and faster decisions, employ the best talent, maximize their productivity, and provide an enhanced experience for your customers.

  • Unleashing AI in SRE: A New Dawn for Incident Management

    Unleashing AI in SRE: A New Dawn for Incident Management

    In my recent blog, Revolutionizing the Nine Pillars of SRE with AI-Engineered Tools, I indicated that AI could assist with incident management by automating the detection and triage of incidents and helping to quickly identify the root cause. In this blog, I explain in more detail how AI-engineered tools can be used to improve the SRE incident management pillar of practice.

    AI Use Cases for Incident Management

    Here are use cases for SREs to use AI to assist with software deployments.

    Detection of Incidents: AI can be instrumental in identifying and predicting incidents before they cause severe damage. Tools like Moogsoft and Datadog use AI to analyze system behavior and predict potential failures. However, a challenge could be ensuring these AI models are correctly trained to understand what constitutes an incident. To overcome this, invest time in training these models with historical incident data and continuously fine-tune them.

    Communication of Incidents: AI can automate the process of notifying the right teams when an incident occurs based on its severity and impact. Tools like PagerDuty use machine learning to streamline incident communication. A challenge might be setting up correct escalation policies. This can be overcome by carefully analyzing past incidents, understanding their impact and setting up escalation rules accordingly.

    Triage of Incidents: AI can assist in categorizing and prioritizing incidents based on their potential impact on the business. IBM’s Watson AIOps uses AI for effective triaging. However, defining the right parameters for triaging could be a challenge. It can be overcome by understanding the nature of incidents, their potential impact on the business and defining the rules for triaging accordingly.

    Identify the Root Cause: AI can help quickly identify the root cause of incidents by analyzing patterns in historical data. Tools like RunWhen and Zebrium use machine learning for root cause analysis. A potential challenge is ensuring that the AI model has access to all necessary data for analysis. You can overcome this by setting -p comprehensive logging and monitoring systems that collect all relevant data.

    Blameless Postmortems: AI can provide data-driven insights to facilitate blameless postmortems, helping teams understand what went wrong and why. OverOps and Blameless are examples of such tools. The challenge here is ensuring an unbiased analysis. Overcome this by setting up AI models that rely on factual data rather than assumptions.

    Documentation of Incidents: AI can help in auto-documenting incidents, capturing important details that could be crucial for future reference. JupiterOne, for instance, uses AI for this purpose. However, capturing all relevant details in documentation can be a challenge. To overcome this, configure the AI tools to collect comprehensive details about the incidents.

    Automation of Playbooks: AI can help automate the execution of incident response playbooks, reducing human intervention and response time. Tools such as StackStorm and Blameless Insights are tools that can help here. A potential challenge is ensuring the right playbook is executed for the right incident. Overcome this by training the AI model with historical incident data and the corresponding successful playbook execution.

    RoadMap for SREs to Transform Incident Response Using AI

    Needs Assessment and Gap Analysis: Start by understanding the current incident management process and identifying areas where AI can improve. Also, analyze the types of incidents you face most frequently and the time taken to resolve them. This will help create a clear problem statement and set expectations from AI implementations.
    Tool Selection: Based on the needs assessment, identify the right AI tools. Look at AI tools specializing in incident detection, communication, triage, root cause analysis and automation. Tools such as Moogsoft, PagerDuty, IBM’s Watson AIOps, Zebrium, OverOps, JupiterOne, RunWhen, Blameless and StackStorm might be good starting points.
    Model Training and Configuration: Configure the chosen AI tools as per your incident management process. You’ll need to train the models using historical incident data so they accurately reflect your environment.
    Integration with Existing Systems: Ensure the chosen AI tools can integrate seamlessly with your existing systems, such as your ITSM tool, monitoring and logging systems and communication channels. This is crucial for the automation of the incident management process.
    Pilot Implementation: Start with a pilot implementation on a small scale, maybe for a single service or a part of your infrastructure. This will help you understand the effectiveness of the AI tools and make necessary adjustments before a full-scale rollout.
    Measure and Optimize: Regularly measure the performance of the AI tools and their impact on your incident management process. Make necessary optimizations based on feedback and performance metrics.
    Full-Scale Rollout: Once you’re confident about the performance of the AI tools and their effectiveness in improving the incident management process, plan for a full-scale rollout.
    Continuous Learning and Improvement: The power of AI lies in its ability to learn and improve over time. Keep feeding it new incident data and train the models for better accuracy and effectiveness. Also, keep an eye on new advancements and features in AI tools and update your implementations accordingly.

    Summary

    Modern incident management is being revolutionized by AI, bringing unprecedented improvements in detection, communication, root cause analysis, postmortem reporting and automation of playbooks. The power of AI lies in its ability to learn and adapt, making it a powerful ally for SRE teams dealing with complex and evolving systems. But the journey to effective AI-based incident management isn’t without challenges. With the right tools like Moogsoft, PagerDuty, IBM’s Watson AIOps, Zebrium, OverOps, JupiterOne and StackStorm and a well-planned implementation roadmap, organizations can successfully overcome these challenges and unlock the full potential of AI in incident management.

    The roadmap to AI-based incident management starts with a thorough needs assessment and gap analysis, followed by tool selection and configuration. An integration with existing systems ensures seamless data flow, while a pilot implementation allows for tweaks and adjustments. Measuring and optimizing the performance of AI tools is a crucial step before a full-scale rollout. And the journey doesn’t end there—continuous learning and improvement is key to harnessing the full potential of AI. With the right approach and tools, the transformation to AI-based incident management can significantly reduce downtime, speed up resolution times and improve system reliability—a win-win for both SRE teams and their users.

  • How Multiple Forms of AI Will Transform DevOps for the Better

    How Multiple Forms of AI Will Transform DevOps for the Better

    The pace at which multiple classes of artificial intelligence (AI) are converging to automate DevOps workflows is about to accelerate the rate at which higher-quality applications will be both built and deployed. And this will happen at levels of scale once thought to be unimaginable.

    Most recent AI advances have been squarely focused on using large language models (LLMs) to improve the productivity of developers. As valuable as that use case for AI may be, however, the volume of code moving through a continuous integration/continuous delivery (CI/CD) platform is only going to increase exponentially as developers become more productive. Most organizations are not going to be able to hire additional software engineers to manage additional pipelines, so the need to apply AI to DevOps workflows is becoming more pressing. Each passing day, more code is generated using tools that have been augmented in a way that makes it simpler to build higher-quality applications.

    AI makes it possible to analyze large amounts of data in real-time to surface insights and optimize workflows. For example, the data analyzed by algorithms can identify where there are bottlenecks in a DevOps workflow, along with recommendations for how to break that logjam. DevOps teams can then apply machine learning algorithms to optimally configure a platform, otherwise known as AIOps, in a way that eliminates many of the manual tasks that make managing DevOps workflows more tedious and time-consuming than anybody wants. AI is also serving as a digital ‘pair programmer’ for many DevOps professionals, helping them think through problems and brainstorm innovative solutions quickly.

    Generative AI tools go a step further—using natural language to instruct an LLM that has been trained to generate code to create the scripts that automate DevOps workflows. Those scripts can then be applied using an orchestration engine to automate CD processes at levels of unprecedented scale.

    At the same time, organizations will also be able to use technologies such as a vector database to compare code against examples of other code that an LLM has been trained to recognize, with the goal being to identify defects in newly written code that might adversely impact application security. It’s now only a matter of time before the overall quality of the code finding its way into production environments improves to the point where the number of incidents a DevOps team has to respond to should start to decline steadily.

    Realizing those benefits and other advances will require multiple types of AI models to be built and maintained. Companies such as CloudBees are making investments to define machine learning operations (MLOps) practices to build them. There will also be untold numbers of LLMs built by the open source community and enterprise IT organizations that will need to be integrated into DevOps workflows. The ability to review those models in a way that promotes transparency and trust will, of course, be crucial. As such, the value of an open CI/CD platform like Jenkins that makes it possible to embrace multiple classes of AI models simultaneously has never been more apparent.

    Naturally, there is as much fear and trepidation about AI as there is excitement. No one knows for certain to what extent DevOps workflows might be automated, but there will always be a need for DevOps engineers to validate them. After all, it’s one thing to be wrong. It’s another thing to be wrong at scale. Mistakes that occur because of a flawed AI model could turn out to be catastrophic.

    However, there is no going back. As multiple classes of AI technologies converge, DevOps teams will find can more easily manage DevOps workflows at scale. In fact, one of the long-standing criticisms of DevOps, in general, is how difficult it can be to manage workflows at scale. AI advances will soon effectively render that debate moot.

    In the meantime, DevOps teams today would be well-advised to start reviewing their current workflows with an eye toward determining which processes can be automated. AI will soon be pervasively applied to drive a new era of software development that promises to dramatically accelerate the rate at which better applications can be built, deployed and updated. In fact, DevOps itself, thanks to the rise of AI, will soon be democratized in a way that will enable more organizations to embrace it, mainly because the level of programming expertise required will be significantly less.

    As these changes occur, the number of applications that organizations can cost-effectively employ to drive an even wider range of digital processes is only going to increase. Exactly what impact all that software is about to have on the world as we know it remains to be seen, but the one thing that is for certain is that DevOps engineers will be at the center of it.

  • The Skills Successful DevOps Pros Need in 2023

    The Skills Successful DevOps Pros Need in 2023

    In the last decade, DevOps adoption has grown considerably. An increasing number of companies across a wide range of industries are embracing the benefits of DevOps, and we have not seen the end of the growth cycle yet. Indeed, the total DevOps market is expected to continue to grow significantly in the next few years, with one recent market survey projecting an annual revenue growth of no less than 24.7% from 2023 to 2030 (which will bring the market value to about 51 billion dollars).

    Further, DevOps is continuously integrating with and accommodating new technologies, which are themselves evolving quickly. This means DevOps professionals will have to invest more and more time each year to stay current and effective at their job. But, this predicament comes with a silver lining. By staying current and even ahead of the game, DevOps professionals are better able to differentiate themselves and deepen their level of expertise—and with that comes the ability to increase their income potential over time.

    In this article, we take a look at what knowledge, skills and abilities (KSAs) DevOps professionals should bring to the table if they want to keep up with the fast pace of change in the industry in 2023—and beyond.

    Knowledge – What Pros Need to Know

    As always, DevOps professionals are expected to have a baseline level of knowledge before taking on a new role, internally or externally. But, as DevOps adoption grows, professionals will need to make a concerted effort just to stay abreast of current trends.

    Platform Nuances

    Each platform places limitations on DevOps processes, and their successful implementation within a company will vary depending on the platform. It’s not uncommon to have to tailor your approach in particular circumstances. In the case of Salesforce, for example, successful DevOps processes must begin with improved deployment speed and accuracy. Only once this is achieved can Salesforce DevOps professionals move onto more mature processes such as automated testing and releases.

    Industry Standards

    DevOps professionals should understand the constraints of the technology they are working with. and within their industry. Both factors may place limitations on or add additional requirements to what they do. Any given technology platform comes with its own unique constraints, such as file sizes or limits on API usage. This is especially true of cloud-hosted systems like Salesforce, where there are multitenant architectures and resources are allocated to customers. Similarly, different industries are faced with differing constraints, such as the HIPAA requirements for companies handling health care data in the U.S. As a result, DevOps professionals will need to understand these tied to specific standards or processes of their given industries.

    Transferable knowledge

    As a final word on knowledge, it’s critical to make sure you are aware of DevOps trends and best practices on platforms other than your own. There are times, more often than we realize, that your knowledge of what has been successfully utilized on other platforms can be transferred to your own. Even if these practices are not directly transferable, they can point you in directions that can ultimately prove beneficial to your DevOps work on a completely different platform.

    Skills—What Professionals Need to Master

    While there are a huge number of skills that DevOps professionals need in order to stay current and further their career growth, I’d suggest paying particular attention to…

    Version control

    This skill is fundamental—you just can’t do the job without it. Make sure you thoroughly understand its nuances: Branching strategies, rebasing or merging, rollbacks, cherry-picking, etc. It’s also valuable to understand different approaches’ limitations and use cases.

    Automation

    Become well-versed in the differences between continuous integration and continuous deployment/delivery (CI/CD) and how they form the CI/CD pipeline. Knowing where and when to apply it and how to apply it are also critical skills to master.

    Successful teams also benefit from building automated workflows. A recent survey Gearset ran with Salesforce DevOps professionals showed that 85% of teams were either currently using or planning to use source control over the next year. Automated workflows are critical to optimizing ROI in DevOps, as they reduce manual processes and unlock some of the most valuable benefits of DevOps for teams of all sizes.

    Testing

    Test automation is increasingly central to achieving DevOps success. As such, you would be wise to develop expertise in environmental testing, unit testing (integrated with automation and release gating) and UI test automation.

    Monitoring

    Application monitoring for performance, errors, data anomalies and security is arguably as crucial as testing. DevOps professionals must apply the same level of diligence to routine system operations as they do to deployments. As DevSecOps becomes more prominent in 2023, it’s expected that there will be increased collaboration and integration with infosec teams.

    Backup

    It’s critical to master the backup and restore process, no matter which platform you work on. It should absolutely be included as part of a comprehensive DevOps skill set. This is because skill underpins the mean-time-to-recovery metric. DevOps professionals must be familiar with the processes and tools necessary for restoring systems and data to achieve a rapid and secure return to business as usual.

    Demonstrating ROI of DevOps

    Finally, it’s essential for team leads, or those hoping to advance their DevOps career, to effectively convey the performance of DevOps, which can be measured using indicators such as Google’s DORA metrics. This means translating DevOps metrics into quantifiable business value that can be easily understood. It is crucial for managers to not only motivate their teams but also to validate the return on investment (ROI) in DevOps to critical stakeholders. By connecting the performance improvements resulting from DevOps practices with tangible business outcomes and demonstrating the ROI, managers can secure continued support for the DevOps approach within their organization.

    Abilities—What Professionals Need

    This final aspect of KSA plays an important role in fostering the collaborative culture that is the hallmark of DevOps success.

    Communication

    DevOps is not just about the tools—you need to maximize communication effectiveness so that the team aligns their goals with the least amount of friction. If everyone is using the same model to reach the same goal, you will achieve success that much faster.

    Continuous improvement

    DevOps success is not a fixed goal. Rather, there are always elements of the process, or your team’s skills, that can be tweaked, changed or improved.

    Making training a priority

    As per the aforementioned Gearset survey, 45% of teams who train once a month rate their team’s collaboration as ‘excellent’ compared with only 13% of untrained teams. Teams that prioritize training outperform all others on a wide range of metrics, including but not limited to seeing fewer bugs and data loss incidents.

    This Challenge is an Opportunity

    There’s a huge range of KSAs that DevOps professionals will need to master if they want to thrive in 2023. Clearly, working in DevOps has never been more demanding than it is today. But, from this challenge, there’s also a tremendous opportunity for professionals to make themselves indispensable.