1. A computer-implemented method for implementing a resource dependent workflow, the method comprising: receiving, from a workflow controller computing device, a workflow comprising a plurality of workflow stages, each of the plurality of workflow stages associated with access to at least one computing resource; and for each of the plurality of workflow stages: determining the at least one computing resource associated with the workflow stage; requesting, from a resource control computing device associated with the at least one computing resource, access to the at least one computing resource; receiving an indication of whether the at least one computing resource is available, wherein the indication of availability of the at least one computing resource is determined by the resource control computing device in accordance with an allocation of the implementation of the workflow stage by a plurality of computing devices; if the at least one computing resource is indicated to be available, processing the workflow stage at least in part by accessing the at least one computing resource; and if the at least one computing resource is indicated not to be available, at least temporarily pausing processing of the workflow stage.