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.
Batch jobs frequently need to skip a step if an earlier step failed, or run a cleanup step only on failure — JCL provides two mechanisms for this, and knowing both (plus why one replaced the other) is a strong interview signal. COND is the older, notoriously confusing parameter; IF/THEN/ELSE/ENDIF is the modern, far more readable replacement introduced in later JCL versions.
COND is a note that says 'do NOT proceed unless this comparison is false' pinned to the door — it works, but you have to read it twice to be sure which way it swings; IF/THEN/ELSE is a green light and a red light, exactly as intuitive as they look.