The code runs on the backend. Hooks are triggered automatically at their designated point (After incoming message, Before outgoing message, etc). Execute code cards are triggered in the order they're in in the node. You can hold up the converesation while code finishes- here's an example of using code to wait 10 seconds https://discord.com/channels/1108396290624213082/1133320795763003423/1133351227879608360