Hire Shopify developers
Shopify is a hosted commerce platform, so hiring for it means finding someone who works skilfully inside its constraints rather than someone who wants to remove them.
What Shopify actually is
Shopify is a hosted commerce platform that runs the store for you: checkout, payments, inventory, orders and the infrastructure underneath. You customise the storefront and extend behaviour through apps, and you do not have access to the underlying server. That single fact shapes every technical decision on the platform.
The trade is straightforward and favourable for most merchants. You give up control over the parts of commerce that are expensive to build and dangerous to get wrong, particularly checkout, payments and compliance, and you gain reliability, scale and security you would otherwise have to buy. For a merchant whose competitive advantage is their product rather than their technology, that is nearly always the right trade.
The constraint that matters technically is the checkout. On the standard plan it is Shopify's and cannot be arbitrarily customised, which is the single most common source of frustration for teams arriving from open-source platforms. Understanding what can and cannot be changed, and knowing the supported extension points rather than fighting them, is most of what distinguishes a productive Shopify developer.
The part that separates seniors from mid-levels
Liquid is the templating language for themes and it is deliberately limited. It renders on Shopify's servers, has no access to arbitrary code execution, and can only reach data the platform exposes. Developers arriving from PHP platforms find this restrictive until they understand it is what makes the platform safe to host at scale. Working well in Liquid means knowing what can be done at render time and what must move to a client-side request or an app.
The app model is the second area. Apps are separate applications, hosted by you or a vendor, that authenticate through OAuth and interact through APIs and webhooks. This is where genuine custom logic lives. A developer building apps is doing ordinary web development with Shopify as the integration surface, which is a substantially different job from theme customisation, and the two are routinely conflated in job specifications.
The third is API discipline. Shopify's APIs are rate limited, versioned quarterly with a supported window, and the platform has moved decisively toward GraphQL. That means apps must handle throttling gracefully, use bulk operations for large data sets, and be updated on a schedule as versions age out. An app that ignores rate limits works in testing and fails on a busy merchant's store, which is exactly when it matters.
Where Shopify is used
The label “Shopify developer” covers several jobs that share a technology and little else. These are the settings the work usually turns up in, and the one you are hiring into should shape the whole process, because the judgement each demands is different.
Direct-to-consumer brands
The core market, where speed to launch and reliability outweigh the desire for a bespoke platform.
Theme development
Custom storefronts implementing a brand's design within the platform's structure.
App development
Public apps for the marketplace or private apps for a single merchant's specific workflow.
Systems integration
Connecting Shopify to enterprise resource planning, warehouse, accounting and fulfilment systems, which is where most complexity lives.
Headless storefronts
Custom front ends using the storefront API, usually for performance or for a design the theme layer cannot deliver.
Migration onto Shopify
Moving from self-hosted platforms, a very common project with data and search-visibility risk.
If a candidate's experience sits in a different row of that list from the work you have, that is not a reason to reject them, but it is the thing to probe. Ask what would be different about their approach in your setting. Someone who can answer that has transferable judgement. Someone who says it would be much the same has probably not thought about it.
Support status of the tools in this stack
Shopify versions its APIs quarterly with a published support window, so custom apps and integrations carry a recurring maintenance obligation regardless of whether their functionality changes.
Shopify itself is not versioned as a single product, so the useful equivalent is the support status of the tools a Shopify developer works with daily. The table is read from public release data rather than written by hand, so it states what is supported now. It is worth having in front of you during an interview: asking which of these a candidate has upgraded, and what broke, gets you further than asking how many years they have used each.
| Tool | Latest release | Release date | Maintained lines | Furthest end-of-life date |
|---|---|---|---|---|
| Node.js | 26.10.0 | 2026-09-22 | 6 | 2029-04-30 |
| React | 19.3.0 | 2026-09-09 | none published | none published |
| Next.js | 16.3.6 | 2026-09-22 | 1 | 2026-10-21 |
| PostgreSQL | 18.6 | 2026-08-11 | 5 | 2030-11-14 |
| Redis | 8.10.2 | 2026-09-17 | 5 | 2030-09-01 |
Source: endoflife.date public release data, read 2026-09-25. A tool with no published end-of-life dates sets its support boundary by ecosystem practice rather than by policy.
The practical use of this is in judging an estate rather than a person. A team running several of these past their support dates is usually not behind by accident; it is behind because upgrades were never anyone's job. That is worth knowing before you hire, because it tells you whether the first six months will be building new things or paying down what was deferred.
The toolchain around it
Nobody hires for Shopify alone. The surrounding tools are where most of the day-to-day work happens, and a gap in any of them costs more time than a gap in the core library. This is the set that turns up most often on real job specifications alongside it.
- Liquid
- The theme templating language. Limited by design, and the limits are the point.
- The GraphQL Admin API
- The primary API surface, with rate limits based on query cost rather than request count.
- The Storefront API
- Customer-facing data access, used by headless storefronts and custom front ends.
- Shopify CLI
- Theme and app development workflow, including local development and deployment.
- Hydrogen and Oxygen
- Shopify's React framework and hosting for headless storefronts.
- Webhooks
- Reacting to orders, inventory and customer events, with delivery that must be handled idempotently.
- Shopify Functions
- Server-side customisation of discounts, shipping and payment logic within supported extension points.
- Metafields and metaobjects
- Structured custom data on products, orders and other resources.
Related skills that frequently appear on the same specification: Node.js, JavaScript, WooCommerce, Magento and Adobe Commerce, React.
What to test in an interview
These are the topics that separate candidates in practice. Each one is given with why it discriminates, what a strong answer sounds like, and the response that should make you slow down. None of them requires a whiteboard.
What can and cannot be customised
The defining constraint, and where unrealistic expectations cause project failure.
- Strong answer: Knows the checkout limits, knows which extension points are supported, and designs within them.
- Warning sign: Proposes workarounds to override checkout, which are fragile and typically prohibited.
Theme versus app work
Two different jobs frequently conflated in a single job specification.
- Strong answer: Can state which they do, and explain when a requirement needs an app rather than theme code.
- Warning sign: Treats them as the same skill set.
API rate limits
The most common cause of an app that works in testing and fails on a real store.
- Strong answer: Understands cost-based throttling, implements backoff, and uses bulk operations for large data sets.
- Warning sign: Has never hit a rate limit, which usually means never working with a store of real size.
Webhook reliability
Webhooks can be delivered more than once and can be missed.
- Strong answer: Processes idempotently, verifies signatures, and reconciles periodically rather than trusting delivery.
- Warning sign: Assumes exactly-once delivery and takes irreversible action on receipt.
Theme performance
Directly affects conversion and is where many custom themes fall down.
- Strong answer: Limits apps that inject scripts, defers non-critical work, measures on real devices, and knows what each app costs the page.
- Warning sign: Installs apps freely without measuring their effect on load time.
API version management
Versions age out on a published schedule and apps break when they do.
- Strong answer: Tracks versions, tests against upcoming releases, and upgrades on a cadence.
- Warning sign: Unaware that versions expire.
A migration they have run
Migration onto Shopify is a large share of the work and carries real commercial risk.
- Strong answer: Describes data mapping, redirects and preserving search visibility, and knows where the risk sits.
- Warning sign: Has migrated data without considering URL structure, which loses rankings.
Warning signs in a Shopify codebase
The fastest way to read a candidate is to ask what they have found wrong in code they inherited. These are the patterns that come up most often, what they cost, and what fixing them looks like. A developer who recognises three or four of these from their own experience is worth more than one who can recite the documentation.
Fighting the checkout
- What you see: Attempts to override checkout behaviour through unsupported means.
- What it costs: Fragile implementations that break on platform updates, and in some cases breach platform terms.
- The fix: Use the supported extension points. Where a requirement genuinely cannot be met, that is a platform selection question rather than an engineering one.
App accumulation
- What you see: Many apps installed, several injecting scripts into every page.
- What it costs: Storefront performance degrades measurably, directly affecting conversion, and nobody can attribute the cost to a specific app.
- The fix: Audit what each app injects and what it is worth. Remove rather than disable, and measure page weight before and after.
Ignoring rate limits
- What you see: Bulk operations issued as loops of individual API calls.
- What it costs: Throttling, failed synchronisation, and data that silently falls out of step on exactly the busiest stores.
- The fix: Use bulk operations, implement backoff, and design synchronisation to resume rather than restart.
Trusting webhook delivery
- What you see: Irreversible actions taken on first receipt with no deduplication.
- What it costs: Duplicate fulfilments, duplicate emails and duplicate accounting entries.
- The fix: Verify signatures, deduplicate by event identifier, and reconcile against the API periodically.
Business logic in theme code
- What you see: Pricing, discount or inventory rules implemented in Liquid or client-side JavaScript.
- What it costs: Rules that can be bypassed, because anything in the storefront is visible and modifiable by the customer.
- The fix: Put logic where it is enforced: Shopify Functions or an app with server-side validation.
Migration without redirects
- What you see: Moving onto Shopify with a different URL structure and no redirect map.
- What it costs: Loss of accumulated search visibility, which for an established store is a direct and lasting revenue loss.
- The fix: Map every old URL to its new equivalent before launch and verify after. This is the highest-risk part of any migration.
What each level can own
Job titles are not comparable between companies, so it is more useful to describe levels by what a person can be left to own without supervision. These are the boundaries we use when we assess a Shopify developer.
- Junior
- Customises themes and configures apps. Needs review on performance and on anything touching data.
- Mid-level
- Builds custom themes and simple private apps, handles integrations, and understands the platform's constraints.
- Senior
- Owns storefront architecture, integration design, app development including rate limits and reliability, and can lead a migration.
- Staff
- Owns the commerce platform strategy, the integration estate across enterprise systems, and the judgement about whether Shopify remains the right platform.
How the work is usually scoped
Team shape follows the kind of work, not the headcount you happen to have budget for. These are the shapes that come up most often and the constraint that actually governs each one.
Custom theme build
- Usual team: One developer plus a designer.
- What governs it: Scoped by design complexity and by how much falls outside the theme structure.
Private app or integration
- Usual team: One developer who is a competent web developer generally.
- What governs it: This is ordinary application development. Rate limits and webhook reliability are the platform-specific parts.
Migration onto Shopify
- Usual team: One to two developers plus someone owning the data.
- What governs it: Product and customer data mapping plus redirects. The search-visibility risk is the part that costs money if mishandled.
Headless storefront
- Usual team: Two developers, one front-end specialist.
- What governs it: Only justified when the theme layer genuinely cannot deliver. It removes a lot of platform convenience.
Performance remediation
- Usual team: One developer, time-boxed.
- What governs it: Usually app scripts and image handling. Directly measurable against conversion.
Migration work you may actually be hiring for
A large share of Shopify work is not new development. It is moving an existing system from one state to another while it stays in service. These are the migrations that come up most often, and each one asks for a different kind of experience from the person you hire.
A self-hosted platform to Shopify
- Why teams do it: Removing the operational burden of running commerce infrastructure, particularly checkout, payments and security.
- What to watch: URL structure and redirects are the highest-risk part and the one most often left until last. Build the complete redirect map before launch and verify it afterwards, because lost rankings on an established store are a direct revenue loss.
The REST Admin API to GraphQL
- Why teams do it: GraphQL is where the platform is investing and some newer capability is only available there.
- What to watch: Rate limiting works differently, based on query cost rather than request count, so a direct translation of existing calls can behave unexpectedly. Rewrite the throttling logic rather than porting it.
A standard theme to headless
- Why teams do it: A design or performance requirement the theme layer cannot meet.
- What to watch: You lose theme app extensions, the theme editor and much of the merchant-facing convenience. Confirm which installed apps depend on theme integration before committing, because some will simply stop working.
Logic in theme code to Shopify Functions
- Why teams do it: Rules enforced server-side rather than in the storefront where customers can modify them.
- What to watch: Functions cover defined areas such as discounts, shipping and payment customisation. Requirements outside those areas still need an app, so confirm the extension point exists before designing around it.
Migration work rewards a different temperament from greenfield work. The useful question in an interview is not whether someone has done the specific migration you face, but whether they have ever run one incrementally: behind a flag, with both paths live, and with a way back. Developers who have only done big-bang cutovers tend to propose them again.
What a good brief for this role contains
Most of the time lost in hiring a Shopify developer is lost before anyone is interviewed, in the gap between what the brief says and what the team actually needs. These are the points that, for this technology specifically, change who the right candidate is. A brief that answers them can be matched in days. One that does not produces a shortlist that looks reasonable and converts badly.
- Whether the work is theme development, app development, or integration, since these are different hires.
- Which Shopify plan the store is on, because checkout customisation depends on it.
- Which systems need integrating, since enterprise resource planning and fulfilment integrations are where the real complexity is.
- How many apps are installed and whether performance is a current concern.
- Whether a migration is in scope, and if so whether the store has existing search visibility to protect.
- Whether headless is in place or under consideration, which changes the skill set required.
If you cannot answer some of these yet, that is normal and it is still worth writing down which ones are open. An unknown that is named can be worked around. An unknown that is papered over in a job specification turns into a rejected shortlist and a restart four weeks later.
What the US market pays for this work
Shopify work is counted by the US Bureau of Labor Statistics under Web Developers. That classification is broader than the technology itself, so treat the figures as the shape of the market a Shopify developer is hired into rather than as a rate card for the skill. Across the United States the Bureau counts 70,190 people in this occupation, with a median annual wage of $92,650.
The spread matters more than the midpoint. The 90th percentile is about 3.4 times the 10th, which is a wide band for a single occupation and tells you that the title on its own carries very little pricing information. Two people described as a Shopify developer can sit at $48,100 and $162,290 in the same national dataset. When a budget is set from a median without asking which end of that range the work actually needs, the hire that follows is usually the wrong one in one direction or the other.
Related classifications are worth reading alongside it, because teams hiring for Shopify frequently end up recruiting against these titles too:
| Occupation | Employed | 25th percentile | Median | 75th percentile | 90th percentile |
|---|---|---|---|---|---|
| Web Developers | 70,190 | $64,230 | $92,650 | $126,230 | $162,290 |
| Software Developers | 1,687,890 | $105,210 | $135,980 | $171,980 | $214,670 |
Source: BLS Occupational Employment and Wage Statistics, May 2025. Figures cover all US employers and are not FuturByte rates.
These are employer-side wage figures for people on a US payroll. They exclude employer taxes, benefits, recruitment cost and the months a seat sits empty, all of which are real and none of which appear in a salary line. The useful way to read the table is as the cost of the alternative you are comparing against, not as a number to match.
How US metro markets compare for this role
The same job is priced very differently across the country. Ranked by median annual wage for Web Developers, the gap between the highest and lowest of the 27 metro areas covered here is a factor of about 2.3. San Jose sits at the top with a median of $166,670; Portland sits at the bottom with $73,920. A budget built from a national median will be wrong in both of those markets, in opposite directions.
| Metro area | Employed | Median wage | vs US median | Location quotient |
|---|---|---|---|---|
| San Jose, CA | 1,130 | $166,670 | +80% | 2.20 |
| San Francisco, CA | 1,420 | $152,450 | +65% | 1.33 |
| Washington, D.C. | 3,840 | $134,350 | +45% | 2.71 |
| Seattle, WA | 3,470 | $130,440 | +41% | 3.69 |
| Detroit, MI | 870 | $108,550 | +17% | 1.01 |
| Boston, MA | 1,450 | $108,520 | +17% | 1.19 |
| Baltimore, MD | 790 | $107,590 | +16% | 1.29 |
| Los Angeles, CA | 2,310 | $107,290 | +16% | 0.82 |
| Minneapolis-St. Paul, MN | 800 | $106,890 | +15% | 0.91 |
| New York, NY | 4,200 | $104,820 | +13% | 0.98 |
| Charlotte, NC | 510 | $101,980 | +10% | 0.83 |
| San Diego, CA | 520 | $98,300 | +6% | 0.76 |
| Chicago, IL | 2,790 | $96,870 | +5% | 1.37 |
| Dallas-Fort Worth, TX | 1,660 | $96,740 | +4% | 0.91 |
| Philadelphia, PA | 810 | $94,570 | +2% | 0.62 |
| Atlanta, GA | 990 | $93,590 | +1% | 0.76 |
| Denver, CO | 900 | $92,060 | -1% | 1.23 |
| Kansas City, MO | 520 | $89,420 | -3% | 1.05 |
| Houston, TX | 1,060 | $89,040 | -4% | 0.71 |
| Salt Lake City, UT | not published | $88,770 | -4% | - |
| Austin, TX | 800 | $84,960 | -8% | 1.37 |
| Orlando, FL | 650 | $83,820 | -10% | 1.01 |
| Pittsburgh, PA | 310 | $82,560 | -11% | 0.63 |
| Raleigh, NC | 430 | $82,250 | -11% | 1.29 |
| Tampa, FL | 470 | $78,910 | -15% | 0.72 |
| Phoenix, AZ | 750 | $76,230 | -18% | 0.70 |
| Portland, OR | 850 | $73,920 | -20% | 1.57 |
Location quotient compares how concentrated this occupation is in the metro against the national average. A value above 1 means the metro has more of this work than its size would predict.
The location quotient column is the more useful one for hiring. A high median tells you what a role costs; a high quotient tells you whether the people exist. San Jose, Washington, D.C., Seattle, Portland each have a quotient of 1.5 or above, meaning the work is concentrated there well beyond what the size of the local economy would predict. Those are the markets where a search is likely to be quick and competitive at the same time, and where a counter-offer is most likely to take a candidate off the table late in the process.
The opposite case is worth planning for too. In a metro with a low quotient, the total pool is small even when wages look reasonable, so the realistic options are to widen the search radius, accept a longer time to hire, or bring the capability in from outside the local market entirely. That last option is what most teams are weighing when they come to us.
Hiring risks worth naming
Every one of these has produced a bad hire somewhere. They are written down so that the process tests for them deliberately rather than discovering them in month three.
Open-source platform expectations. Developers from self-hosted platforms often expect control the platform does not offer. Ask how they would handle a checkout requirement.
Theme skills for app work. App development is general web development. Test it as such rather than as Shopify knowledge.
No experience at real store volume. Rate limits and performance only bite on busy stores. Ask about the largest store they have worked on.
No migration experience where a migration is planned. Redirects and data mapping carry real revenue risk and reward having done it before.
Hiring Shopify developers by metro area
Wages for this occupation vary more between US metro areas than most budget models assume. Each page below sets out the published employment and wage figures for that market, how it compares with the national picture, and what the local industry mix means for the kind of Shopify developer who will be available.
- New York, NY $104,820 median
- Seattle, WA $130,440 median
- San Jose, CA $166,670 median
- Washington, D.C. $134,350 median
- San Francisco, CA $152,450 median
- Dallas-Fort Worth, TX $96,740 median
- Los Angeles, CA $107,290 median
- Boston, MA $108,520 median
- Chicago, IL $96,870 median
- Atlanta, GA $93,590 median
- Austin, TX $84,960 median
- Phoenix, AZ $76,230 median
- Philadelphia, PA $94,570 median
- Minneapolis-St. Paul, MN $106,890 median
- Denver, CO $92,060 median
- Detroit, MI $108,550 median
- Houston, TX $89,040 median
- Charlotte, NC $101,980 median
- San Diego, CA $98,300 median
- Salt Lake City, UT $88,770 median
- Miami, FL
- Portland, OR $73,920 median
- Baltimore, MD $107,590 median
- Tampa, FL $78,910 median
- Orlando, FL $83,820 median
- Raleigh, NC $82,250 median
- Kansas City, MO $89,420 median
- Pittsburgh, PA $82,560 median
Frequently asked questions
Can we customise the Shopify checkout?
Within defined extension points, yes; arbitrarily, no, unless you are on the enterprise plan where more is available. This is the platform's central trade: you give up checkout control and gain a checkout that is secure, compliant, fast and maintained by somebody else. If your requirements genuinely demand a bespoke checkout, that is a signal to evaluate platform choice rather than to engineer around it.
Shopify or WooCommerce?
Shopify when you want the platform operated for you and your advantage is your product rather than your technology. WooCommerce when you need full control, already run WordPress, or have requirements the hosted model will not accommodate. Shopify costs more in platform fees and less in engineering and operations, and for most merchants that is the better trade.
Do we need a Shopify specialist or a general web developer?
For theme work, a specialist, because Liquid and the platform's structure are specific. For app and integration work, a strong general web developer who learns the API conventions is often the better hire, since the work is ordinary application development with Shopify as the integration surface.
Why is our Shopify store slow?
Most often apps. Each one typically injects scripts into every page, and a store with a dozen apps can be carrying a great deal of third-party JavaScript. Image handling and theme code are the other usual causes. Auditing what each app costs the page, and removing those that are not earning it, is usually the fastest available improvement.
Should we go headless?
Only for a specific reason, usually a design or performance requirement the theme layer genuinely cannot meet, or serving several channels from one commerce back end. Headless removes much of what makes Shopify efficient, including theme app integration and the editing experience, and you take on hosting and front-end complexity. For most stores the standard storefront is the better engineering decision.
What is the risk in migrating to Shopify?
Search visibility, more than data. Product and customer data migration is a known problem with established tooling. URL structure is where money is lost: an established store that changes its URLs without a complete redirect map loses accumulated rankings, and recovering them takes months. Treat the redirect map as the critical path of the project.
How do we control the number of apps?
Treat each one as a dependency with a cost rather than a feature with a price. Ask what it injects into the storefront, what it would take to replace, and whether the workflow it supports is still needed. Reviewing the app list annually usually finds several that are being paid for and are no longer used.
Do Shopify API versions expire?
Yes, on a published schedule, and apps that are not maintained will eventually break. This is a real ongoing maintenance commitment for any custom app or integration. It is straightforward if someone is tracking it and disruptive if the first anyone hears of it is a failure.