No matter how you move forward you're going to have to learn to retrain your brain when you think about how Async works.
If you've been doing PHP, then you're likely used to code running in a predictable, sequential manner.
This is not how things work in the async world. Instead, functions can and will execute in whatever order they finish in.
If you're new to Async at all, I'd recommend spending some time reading up on Promises and get your head wrapped around them. I really like this site which provide visualizations for how things work.
Now, at a technical level, I'm no expert in the how of PHP's async stuff. However, it looks like spatie/async uses PHP's process control functions to actually handle the async code snippets. Not sure what React PHP does here.
Ultimately, Promises are still the general way of how most async stuff works. Even ReactPHP's react/promise class is just a port of Promise/A+ from ES6.
Anyway, the general idea is this: Consider what you're needing to do, and what you need in order to accomplish that task, and then write small, chainable blocks of code that take each other has inputs.