When a job step has its own STEPLIB DD statement, that library is searched first for program load modules, taking precedence over the JOBLIB library. This allows a step to use a different version of a program than what's available in the job library. The steplib does override the job library during that step's execution.