Prepare for IBM Mainframe interviews with topics on COBOL programming, JCL, CICS transaction processing, DB2, VSAM file systems, z/OS administration, and mainframe modernization strategies.

COBOL12 topics

beginner

COBOL Program Structure

Understand the four mandatory divisions that every COBOL program is built from and what belongs in each.

cobol-basicsprogram-structuredivisionsfundamentals
beginner

COBOL Data Types: PIC Clauses, COMP and COMP-3

Know how COBOL declares data storage and why COMP-3 packed decimal is the default choice for numeric fields on the mainframe.

data-typescomp-3picture-clausestorage-optimization
intermediate

File Handling: SEQUENTIAL vs INDEXED Organization

Distinguish sequential and indexed file organizations in COBOL and know which I/O verbs and access modes apply to each.

file-handlingvsamindexed-filesaccess-mode
beginner

PERFORM Varieties: THRU, VARYING, UNTIL, and Inline

Master the different forms of PERFORM, COBOL's core control-flow verb for looping and paragraph invocation.

control-flowperformloopingcobol-syntax
intermediate

STRING and UNSTRING Verbs

Understand how COBOL concatenates and splits alphanumeric fields without dynamic string types.

string-manipulationparsingcobol-verbsdata-formatting
beginner

EVALUATE Statement

Use EVALUATE as COBOL's structured multi-branch decision construct, equivalent to switch/case but far more flexible.

evaluatecontrol-flowdecision-logiccobol-modernization
beginner

Copybooks and Shared Data Structures

Explain how copybooks provide shared, reusable record layouts across COBOL programs and why they're central to mainframe maintainability.

copybookscode-reusemaintainabilitydata-structures
intermediate

Subroutines: CALL, Static vs Dynamic

Distinguish static and dynamic CALL in COBOL and understand the tradeoffs each brings to modularity and deployment.

subroutinescall-statementdynamic-callmodularity
intermediate

Tables and OCCURS Clause

Understand how COBOL implements arrays via OCCURS and how INDEXED BY drives efficient table access.

tablesoccursarrayssearch-all
advanced

Sorting Internal Tables

Know the techniques for sorting COBOL tables in memory when data must be ordered before further processing.

sortinginternal-tablesalgorithmsperformance
beginner

Condition Names (88-Levels)

Use 88-level condition names to give meaningful names to specific values of a data item and write self-documenting conditional logic.

condition-names88-levelreadabilitycobol-syntax
intermediate

REDEFINES Clause

Understand how REDEFINES lets multiple data descriptions share the same storage location and why this is both powerful and risky.

redefinesstorage-overlaymulti-format-recordsmemory-layout

JCL10 topics

beginner

DD Statements and Dataset Allocation

Understand how DD statements connect a program's logical file references to physical datasets, devices, and allocation parameters.

jcl-basicsdd-statementdispositiondataset-allocation
intermediate

JCL Procedures (PROCs) and Symbolic Parameters

Understand how cataloged and in-stream PROCs let JCL be templated and reused across jobs via symbolic parameters.

procsymbolic-parametersjcl-reusebatch-templates
intermediate

Conditional Step Execution: COND and IF/THEN/ELSE

Control whether a job step executes based on prior step return codes, using both the legacy COND parameter and the more readable IF/THEN/ELSE construct.

conditional-executioncond-parameterif-then-elsereturn-codes
intermediate

Generation Data Groups (GDGs)

Understand how GDGs manage a rolling series of related datasets (like daily extracts) by relative generation number instead of hardcoded names.

gdggeneration-data-groupsdataset-managementbatch-processing
intermediate

Sorting Data with DFSORT

Use DFSORT control statements to sort, merge, copy, and reformat datasets entirely at the JCL/utility level without writing a COBOL program.

dfsortsortingdata-filteringbatch-utilities
beginner

Core Utility Programs: IEFBR14, IEBGENER, IDCAMS

Know the purpose of the most commonly used IBM utility programs invoked directly from JCL for allocation, copying, and dataset management.

iefbr14iebgeneridcamsutilities
advanced

Checkpoint/Restart and Job Recovery

Understand how long-running batch jobs use checkpoints to resume from a mid-point after failure instead of rerunning from the beginning.

checkpoint-restartbatch-recoveryjob-restartproduction-support
beginner

Dataset Disposition (DISP) Deep Dive

Fully understand the three-part DISP parameter — status, normal termination, abnormal termination — and how it governs dataset access and lifecycle.

disp-parameterdataset-dispositionjcl-basicsdata-integrity
intermediate

JOBLIB and STEPLIB: Load Module Search Order

Understand how JOBLIB and STEPLIB direct the system's search for executable load modules and why their scope and precedence matter.

joblibsteplibload-module-searchlibrary-concatenation
beginner

Batch Job Scheduling Fundamentals

Understand how enterprise schedulers trigger, sequence, and monitor batch jobs beyond what raw JCL alone controls.

batch-schedulingjob-dependenciesproduction-supportenterprise-scheduler

CICS10 topics

beginner

CICS Transaction Processing Fundamentals

Understand what a CICS transaction is, how it differs from a batch job, and why response-time and concurrency demands shape its whole design.

cics-basicstransaction-processingonline-systemstask-management
intermediate

BMS Maps and Screen Handling

Understand how Basic Mapping Support (BMS) separates screen layout from program logic for 3270 terminal interfaces.

bms3270-screenssymbolic-mapcics-ui
intermediate

COMMAREA for Inter-Program Communication

Understand how COMMAREA passes data between CICS programs and preserves state across pseudo-conversational transaction turns.

commareapseudo-conversationalprogram-linkingstate-management
advanced

Channels and Containers

Understand how channels and containers provide a more flexible, size-unrestricted alternative to COMMAREA for modern CICS program communication.

channels-containerscics-modernizationprogram-communicationadvanced-cics
advanced

DB2 Access from CICS Programs

Understand how CICS programs issue SQL against DB2 and how the two transaction managers coordinate commit/rollback across a single unit of work.

cics-db2syncpointunit-of-worktransaction-coordination
intermediate

Error Handling: HANDLE CONDITION and RESP/NOHANDLE

Understand the two competing styles of CICS error handling and why RESP-based checking has become the modern standard.

error-handlingresp-nohandlehandle-conditioncics-best-practices
advanced

Pseudo-Conversational Programming

Understand why CICS programs release control between user screen interactions instead of waiting in memory, and how this shapes state management.

pseudo-conversationalcics-designstate-managementtask-lifecycle
beginner

Common EXEC CICS Commands Overview

Build fluency with the everyday EXEC CICS command vocabulary for terminal I/O, file access, and program control.

exec-cicscics-commandsfile-controlprogram-control
intermediate

Temporary Storage and Transient Data Queues

Understand CICS's two queuing mechanisms — temporary storage (TS) queues and transient data (TD) queues — and when each is the right tool.

temporary-storagetransient-dataqueuingcics-triggers
advanced

CICS Transaction Lifecycle and Task Management

Understand how CICS dispatches, manages, and terminates tasks, and how resource contention and abends are handled at the task level.

task-lifecycledispatcherresource-contentionabend-handling

DB210 topics

beginner

SQL Fundamentals for DB2 on z/OS

Understand the baseline SQL skills expected for DB2 z/OS interviews and how embedded SQL differs from ad hoc SQL.

sql-basicsembedded-sqlsqlcahost-variables
intermediate

Plans, Packages, and BIND

Understand how embedded SQL becomes an executable access path through the precompile-BIND process, and what plans and packages actually are.

bindplans-packagesdbrmaccess-paths
advanced

EXPLAIN and Access Path Analysis

Use EXPLAIN to see exactly which access path DB2's optimizer chose for a query and evaluate whether it's actually efficient.

explainaccess-pathsperformance-tuningplan-table
advanced

Locking, Isolation Levels, and Deadlocks

Understand DB2's locking model, the practical effect of each isolation level, and how deadlocks arise and get resolved.

lockingisolation-levelsdeadlocksconcurrency
intermediate

DB2 Utilities: REORG, RUNSTATS, LOAD, UNLOAD

Understand the core DB2 maintenance utilities and why they must run on a regular operational cadence for healthy performance.

reorgrunstatsload-unloaddb2-utilities
advanced

DB2 Performance Tuning Principles

Bring together indexing, statistics, isolation levels, and SQL-writing discipline into a coherent approach to diagnosing and fixing slow DB2 queries.

performance-tuningsql-optimizationdb2-diagnosticsindexing
intermediate

Cursors: Static and Dynamic

Understand why COBOL needs cursors to process multi-row SQL result sets and the difference between static and dynamic cursor definitions.

cursorsfetch-loopdynamic-sqlresult-sets
advanced

DB2 Stored Procedures

Understand why DB2 stored procedures exist, how they're written and called from COBOL, and what tradeoffs they introduce versus embedded SQL.

stored-proceduresdb2-architecturecentralized-logicwlm
intermediate

DB2 in Batch: Host Variables and SQLCA Deep Dive

Understand the operational patterns specific to batch DB2 programs, including commit frequency, host variable declaration via DCLGEN, and SQLCA fields beyond SQLCODE.

batch-db2dclgencommit-frequencysqlca
intermediate

Indexes and Clustering

Understand how DB2 indexes accelerate access, why clustering indexes matter for physical row order, and the tradeoffs of adding indexes.

indexesclusteringb-treequery-optimization

z/OS7 topics

beginner

TSO/ISPF Fundamentals

Understand TSO as the interactive time-sharing interface to z/OS and ISPF as the panel-driven productivity layer built on top of it.

tsoispfmainframe-toolsdaily-workflow
beginner

Dataset Organization and Naming Conventions

Understand z/OS dataset naming rules and the major dataset organizations (sequential, PDS/PDSE, VSAM) that shape how data is stored and referenced.

dataset-namingpds-pdsedcb-attributeszos-basics
intermediate

The z/OS Catalog Structure

Understand how the z/OS catalog maps dataset names to their physical volume locations and why catalog integrity matters operationally.

catalogicfmaster-cataloglistcat
intermediate

SMS: Storage Management Subsystem

Understand how SMS automates dataset allocation decisions (which volume, which storage class) based on policy rather than manual specification.

smsstorage-managementacs-routinesdata-class
intermediate

RACF and Mainframe Security

Understand how RACF controls authentication and authorization for datasets, resources, and transactions on z/OS.

racfsecurityaccess-controldataset-protection
intermediate

Batch Job Scheduling and the Enterprise Scheduler Layer

Understand how z/OS's JES subsystem manages job execution alongside how enterprise schedulers layer higher-level dependency and calendar control on top.

jesjob-schedulingsdsfbatch-operations
advanced

z/OS Address Spaces and Memory Fundamentals

Understand how z/OS isolates work into address spaces and manages virtual storage, and why this matters for both stability and performance reasoning.

address-spacesvirtual-storagepagingsystem-architecture