1. A system for processing a batch job, comprising: a processor configured to: receive a batch job comprising a sequential or parallel flow of operations and a set of input parameters, wherein each operation has a defined input type and a defined output type, and wherein the operations comprise a first operation, a second operation, and a third operation that operate on a data type that is not a simple data type, wherein the first operation is performed on a set of data objects, wherein the set of data objects comprises one of the following: a set of employees, a set of organizations, or a set of pay values, and wherein the batch job has a time bound; verify that the batch job can run successfully, wherein verifying includes: checking that a first operation output defined type is compatible with a second operation input defined type when a first operation output is connected to a second operation input; querying the first operation to determine a set of parameters used by calculations in the first operation; checking that the set of parameters used by the calculations in the first operation is included in the set of input parameters; and checking that a second operation output defined type and a third operation output defined type are of a common type when a second operation output and a third operation output are connected to inputs of a join operation; and in response to verifying that the batch job can run successfully, run the batch job; and a memory coupled to the processor and configured to provide the processor with instructions.