My previous installment in this series discussed the challenges of managing batch for modern technology with the added complexity of meeting the needs of digital transformation.
My hypothesis for how to address these challenges seems exceedingly simple; manage your application “instrumentation” the same way you manage your application! Simple, elegant, “mic drop” time.
But really, what does that mean?
For modern batch, and arguably for any management discipline, it means taking an “as code” approach with a solution that provides the capabilities you need to support your business objectives. “Jobs-as-Code” means 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. The functionality embedded in that Jobs-as-Code approach should include:
- Sophisticated flow relationships
- Extensive application integration to support all your platforms and technologies
- Operational insight into execution status and progress
- Output and log collection
- Support for service level management and business-level abstraction and full security
- Audit and governance compliance
- And others
With such an approach, your organization can focus on producing innovative business services rather than divert precious developer talent to building operational plumbing which is unlikely to reach the level of sophistication obtained with a market-tested solution. Using a solution designed specifically for the task at hand can help you reap the benefits of a truly automated and continuous delivery pipeline to accelerate delivery of new services, and you get the manageability and operational oversight that facilitates operating those new services at the highest levels of availability and reliability.