List your tasks before you talk to anyone. Write down every store task from the last month and who did it. Theme, code and app issues point to a developer. Product uploads, order admin and content changes point to a store manager or virtual assistant, and most stores find they need some of each.
Ask how they handle theme updates. A good maintenance developer keeps a log of every code change they make, because those are the edits that may need redoing after an update. Ask to see a redacted log from a current client.
Ask what they do when an app is removed. Some apps leave code behind in the theme after they're uninstalled. Whoever looks after your store should check for leftover snippets and scripts, and tell you which apps overlap before you pay for two that do the same job.
Plan the exit on day one. The provider should work from its own collaborator or staff account, and any app or tool they sign up for on your behalf should be billed to your business, not theirs. When the retainer ends, you remove one account and keep everything else.
Ask for a monthly report. A good retainer ends each month with what was done, what's pending and what they'd fix next. If the only output is an invoice, you can't tell whether the hours were well spent.
Start with a trial month. Give a new provider a real month of tasks before signing a long contract. Speed of reply, quality of notes and whether they flag problems unprompted all show up quickly.
Walk away from three things. A retainer with no defined scope, no agreed response time for problems that stop orders, and code changes made straight on the live theme with no copy to test on first.