The generalist rarely fails by being unable to build what you asked for. That's the thing merchants get wrong about this decision.
A good developer is a good developer. Give a competent full-stack engineer a Shopify store and they will figure it out, ship the feature, and hand it over working. The problem is how they built it — because without platform knowledge, they solve Shopify problems the way you'd solve them anywhere else. Custom code where a Shopify Function belongs. An external database where metafields belong. Three weeks of development where a $30 app from the App Store would have done it better, with support and updates included.
You get a working feature and a maintenance liability. Six months later the theme can't be updated, the app that would have solved it is now impossible to install cleanly, and the next developer quotes you to undo the work.
So my position: for anything touching theme architecture, checkout, Functions, or the app ecosystem, hire someone who has shipped Shopify specifically. The hourly rate is higher and the total cost is lower. For a narrow set of jobs — which I'll name, because the honest answer isn't "always hire a specialist" — a generalist is completely fine and cheaper.
This is the same argument we make about Shopify SEO versus generic SEO, and it holds for the same reason. Fundamentals transfer. Platform specifics don't.




