Is your organization looking to accelerate application delivery and application quality in order to stay competitive in today’s always-on economy? Adopting a Jobs-as-Code approach can transform your business for agile application delivery and processes by avoiding rework and headaches related to your application delivery. In addition, Jobs-as-Code allows your business to reap the benefits of a truly automated and continuous delivery pipeline while ensuring the highest levels of availability and reliability.
What is Jobs-as-Code: Standardizing and automating your job definitions
The term “jobs” in Jobs-as-Code refers to the automation rules that define how batch applications are run. Some examples include warehouse management, bank reconciliation, customer billing, and other mission critical applications. These rules define what to run, when to run it, how to identify success or failure, and what action needs to be taken.
Traditionally, Operations defined these rules only at the end of software development lifecycle, which meant these jobs were not tested at the same time that the rest of the application was built. This approach often led to wasted time in production, hard-to-fix errors and unplanned work, as a result of poor communication and manual intervention.
But with the Jobs-as-Code approach, developers can now include jobs as artifacts in the continuous DevOps delivery pipeline the same way the Java or Python code is managed through the entire software development process today. The result? Operations receives tested, ready-to-go applications because jobs are defined and built at the same time as applications are built.
How is Jobs-as-Code enabled?
In order to avoid rework, headaches and poor quality applications, Dev needs to shift-left these functions from Ops into Dev with BMC’s Control-M Automation API. Control-M Automation API creates consistency among the development, test, and production environments by giving developers the ability to embed workflow automation while applications are being developed. In other words, the artifacts that define jobs can be built using a familiar, code-like notation, stored in an SCM together with the code that implements business logic, built together with that code, tested together, promoted from environment to environment together and eventually deployed together; with the same level of automation.
Importantly, enabling many of the tasks that have traditionally consumed resources on the Operations side to be addressed earlier in the life cycle by the developers who truly understand the application saves a considerable amount of time. This shift-left approach means that the people that create applications and those responsible for running them can work from a consistent, familiar platform that addresses the entire lifecycle. Therefore, Jobs-as-Code offers a much more thoughtful and careful approach to accelerating your time to delivery and increasing application quality.
In addition, by enabling shift-left with Jobs-as-Code you can improve the job scheduling process. Jobs-as-Code:
- Automates job scheduling
- Saves time in the delivery pipeline
- Improves the quality of your apps
- Ensures visibility so problems that do come up in production are easy to identify and address
Jobs-As-Code: Enables faster, more reliable delivery
The Jobs-as-Code capabilities answer the needs of modern IT by providing a simple way to enable those most familiar with the software jobs being run— the developers—to design, code, and specify job scheduling and workload execution processes. In addition, Control-M Automation API allows your organization to:
- Accelerate build, test, and validation by 20 – 30 percent. The functionality expected in production can now be embedded in the development and test phases using JSON and stored in any SCM, like git. In addition, Control-M Automation API provides verification, testing, and execution functions exposed as RESTful web services that are easily integrated.
- Reduce cost. With this approach, Dev is able to find defects and errors earlier in the SDLC to reduce costs and increase higher quality applications. Control-M also allows Dev to work with favorite and familiar tools using JSON, REST APIs and a node.js CLI for creating workflows as artifacts. This cuts back on the need for additional training.
- Provide developers access to business application automation leveraging Control-M Workbench capabilities. The Control-M Workbench is a no-cost, self-service, standalone development environment that is launched in minutes, giving you the autonomy to code, debug, and test jobs the same way that any other coding activity is performed.
- Allocate more time to innovation and less to support. With Jobs-as-Code, Dev can use the powerful and intuitive Control-M functionality to manage workflows, and production doesn’t need to spend time doing rework. This frees up your developers to rapidly improve apps and focus on innovation, thus shifting the focus to targeted business growth.
Digital transformation is real and it is now. Jobs-as-Code using Control-M Automation API delivers the next wave of IT automation—Digital Business Automation— moving beyond traditional workload automation and adapting to modern IT technologies and processes. These are the processes and technology that your business needs in order to deliver higher-quality apps faster and gain a competitive edge in today’s digital economy.
These postings are my own and do not necessarily represent BMC's position, strategies, or opinion.