Agree that most bad remote hires fail on things nobody checked before signing rather than on coding ability. The two checks I would put at the top are who owns the accounts and what "done" means.
Ownership is simple to get right on day one: the repository, cloud account and domain should be in the company's name, with the developer invited in. Definition of done takes more effort. A contract that lists hours or features without acceptance criteria leaves both sides arguing later about whether the work is finished.
For a first engagement, a small, clearly bounded piece of work at a fixed price is a good way to test the relationship. You learn how the person communicates, documents and handles feedback, and the cost of finding out is capped. Do you recommend a paid trial task, or going straight into the main project with milestones?