1. A development environment deployment system, comprising: a non-transitory memory storing a plurality of templates for creation of a plurality of development environments, wherein at least one template in the plurality of templates is created based on a successful deployment of a previously-deployed development environment; and one or more hardware processors coupled to the non-transitory memory and configured to execute instructions to cause the system to perform operations comprising: receiving, from a user via a first application programming interface, a request to create a development environment, wherein the request includes a plurality of variables associated with the requested development environment; evaluating the request to identify a stored template appropriate for the requested development environment from the plurality of templates based on at least one of a variable included in the request or an application programming interface version associated with a component of the requested development environment; generating an instruction sequence to create the requested development environment based on the identified stored template; transmitting, to a plurality of virtual machine hosts, one or more instructions in the instruction sequence, wherein the instruction sequence includes instructions for one or more events and an order for each of the one or more events; receiving a notification that a particular event in the instruction sequence has encountered an error; responsive to the notification that the particular event in the instruction sequence has encountered an error, retrieving remediation instructions associated with the error and executing the remediation instructions, wherein the retrieving and the executing are performed without user intervention; and upon a successful creation of the development environment, returning a response to the requesting user with access information for the created development environment.