JCL Development
We write, review, tune, and maintain JCL job streams for IBM mainframe environments. From simple utility jobs to complex multi-step production streams with checkpoint/restart and output routing, we work in the batch environment your operations team runs every night.
Capabilities
What we do with JCL
New batch streams
Job Stream Design
New JCL job streams designed from step definition through output disposition, with proper COND parameter handling, step sequencing, and restart/recovery built in from the start.
Recovery design
Checkpoint and Restart
Adding checkpoint/restart logic to long-running jobs so that a failure mid-stream does not require reprocessing from the beginning, reducing batch window exposure.
Space · Datasets
DASD and Storage Management
Dataset allocation, space calculation, GDG management, and tape handling procedures that work within your SMS policies and storage management hierarchy.
SYSOUT · Distribution
Output Routing
Output class configuration, SYSOUT routing, and report distribution through JES spool, email gateways, or external output management systems.
Cleanup · Consolidation
Job Stream Modernization
Reviewing and consolidating job streams that have accumulated over years, removing redundant steps, correcting outdated coding practices, and improving maintainability.
TWS · CA7 · ESP
Scheduler Integration
Integrating JCL job streams with workload automation schedulers, defining dependencies, setting up calendars, and configuring job completion notifications.
Our approach
Understand the batch window first
JCL exists in the context of a production batch schedule. Before writing or changing a single step, we map the job's dependencies: what it receives from upstream jobs, what it produces for downstream jobs, and where it falls in the nightly window. Changes that save ten seconds of CPU but push the window by thirty minutes are not improvements.
Write for operations, not just for execution
A JCL job stream that executes correctly but fails silently or produces cryptic ABEND codes is a support problem. We write jobs with clear step names, meaningful SYSOUT classes, and restart documentation so that the operations team can handle a failure at 2 AM without escalation.
SORT and utility optimization
DFSORT is one of the most performance-critical utilities in a mainframe batch environment. We write SORT control statements that minimize I/O and elapsed time, and we know when to use JOINKEYS, MERGE, and OUTREC versus writing a custom COBOL program for the same task.
Testing before production
We test JCL in a development or staging environment with representative data volumes before any job touches production. For jobs that process large datasets, we validate elapsed time and resource consumption against the batch window before the first production run.
All engineering work is done by US-based engineers. We do not offshore any development or architecture work.
Part of our software engineering services. We work across the full stack, cloud platforms, and architectural patterns.
FAQ
Common questions
Virginia · United States
Need JCL expertise?
If you have a batch stream that needs new development, tuning, or review, reach out and we will discuss the requirements before any work begins.