1. A method executed by a first computing node comprising a processor, comprising: initiating execution of a program on the first computing node, the program comprising a plurality of functions including a first function; processing information indicative of executing the first function on a second computing node remote to the first computing node, the information indicative of a priority for executing the first function on the second computing node instead of the first computing node, the priority relative to the priority for executing other functions of the plurality of functions on the second computing node; determining to execute the first function on the second computing node, the determining is based at least in part on the information indicative of a priority for executing the first function on the second computing node and based at least in part on information indicative of a capability of the first computing node to execute the first function; causing the first function to be executed on the second computing node; determining to execute the first function on the first computing node based at least in part on receiving additional information indicative of the capability of the second computing node to execute the first function; synchronizing data maintained on the first computing node with a copy of the data maintained on the second computing node, wherein the data is referenced during execution of the first function; and causing the first function to be executed on the first computing node.