Hire · Frontend

Hire Vue Developers

Senior Vue developers who become part of your team and take over components, stores and routes in your Vue 3 codebase. Candidates reach you only after a paid task covering the Composition API, Pinia, reactivity edge cases and the basics of Nuxt rendering.

Assessed in Vue 3, not Vue 2 habits

Senior and lead engineers only

Commits to your repo from week one

On your team

What a Vue developer owns on your team.

01Owns

Composables

Pulls shared logic into small composables with clear inputs and return values, so features reuse behaviour instead of copying it between components.

02Owns

Pinia stores

Keeps global state in focused Pinia stores, uses storeToRefs to keep reactivity when destructuring, and leaves form and UI state local.

03Owns

Vue 2 to Vue 3 moves

Plans migrations off the Options API, Vuex and filters, using the compatibility build where it helps and removing it once the code is clean.

04Owns

Routing and guards

Sets up Vue Router with lazy routes, navigation guards for auth and roles, and scroll and focus behaviour that suits keyboard users.

05Owns

Component tests

Covers components with Vitest and Vue Test Utils, mocking stores and HTTP so tests stay quick and focus on behaviour.

Why Vue candidates are harder to judge than they look

Vue’s gentle learning curve means many developers can produce a working page quickly, and plenty learned on Vue 2. The gap appears when state grows. Ask how they would share fetched data between two distant components and listen for whether they reach for a composable, a store or prop drilling, and why.

Reactivity is where experience shows. Developers who have shipped real Vue 3 code can tell you, without notes, what breaks when you destructure a reactive object or replace a ref’s value inside a watcher.

Vetting

Skills we test before a Vue developer joins.

01Tested

Composition API

Fluent with script setup, ref versus reactive, computed and watch, defineProps and defineEmits, and typed props with TypeScript.

02Tested

Reactivity caveats

Knows that destructuring a reactive object loses reactivity, when to use toRefs, why deep watchers are costly and when shallowRef is the right call.

03Tested

Pinia

Setup and option stores, getters, actions that call APIs, plugins for persistence, and testing stores in isolation.

04Tested

Nuxt awareness

Understands SSR, hydration mismatches, useFetch and useAsyncData, and recognises when a project needs a dedicated Nuxt build rather than a client-only Vue app.

05Tested

Vite tooling

Configures Vite aliases, environment variables and code splitting, and reads the build output to find oversized chunks.

06Tested

Accessible components

Builds menus, dialogs and tabs with correct roles, focus return and keyboard handling, and checks them with a screen reader.

Work sample

How the Vue developer work sample runs.

  1. 01Step 1

    Find the lost reactivity

    The candidate receives a component where a destructured store and a reactive object have stopped updating the view. They fix both and explain the cause in a few sentences.

  2. 02Step 2

    Build a composable-backed view

    Against a stub API they build a paginated table with a reusable composable for fetching, sorting synced to the query string and tests. It is paid and limited to a few hours.

  3. 03Step 3

    Port an Options API component

    They convert one Options API component with mixins into script setup and a composable, keeping behaviour identical.

  4. 04Step 4

    Talk through a trade-off

    A brief conversation where they explain to a product manager why a piece of state went into Pinia or stayed in the component.

Levels

Vue Developers: what changes at each level.

01Level 1

Senior

Builds and maintains features within your established component library and store layout, and reviews other Vue code.

02Level 2

Lead

Defines composable patterns, store boundaries, folder layout and testing rules, and leads the move off Vue 2 where it remains.

03Level 3

Vue and Nuxt architect

Decides between SPA, SSR and static generation per section of the product, owns the Nuxt configuration and sets performance targets for the front end.

Matching level to the codebase you have

A tidy Vue 3 app with Pinia and a component library needs a senior developer who can add features without fuss. A codebase that still mixes Options API, mixins and Vuex benefits from a lead who will set a direction and migrate in stages. Bring in an architect when rendering strategy or several Vue apps sharing code is the real question.

Vue, Nuxt or both

A client-rendered Vue app and a Nuxt app share components but behave differently in production. Nuxt adds server rendering, file-based routing and its own data-fetching helpers, which bring hydration and caching concerns. Decide which one you run before hiring; if it is Nuxt, weight the interview towards SSR.

Setting up the new hire to succeed

Point them at the composables folder and the stores first; that is where your conventions live or are missing. Ask for a written note after a few days on anything inconsistent there. Then give them a feature that touches routing, a store and a form, which shows quickly how they balance local and shared state.

Agree a component testing approach early so tests do not depend on implementation details that change with every refactor.

FAQ

Questions to resolve before the build.

01Do your Vue developers still work on Vue 2?

They can maintain Vue 2 code, but Vue 2 reached end of life at the end of 2023. Most clients ask them to plan and carry out the move to Vue 3 alongside feature work.

02Is a Vue developer able to run our Nuxt site?

Every candidate understands Nuxt’s rendering model and data fetching. For a site where server rendering, caching and SEO are the main work, ask for someone at the architect level with Nuxt production experience.

03Should we replace Vuex with Pinia?

Pinia is the official recommendation for new Vue 3 work. A lead can migrate stores gradually, one module at a time, so you do not need a big-bang rewrite.

Primary sources

References behind this page

Dated official documentation, standards, and research that support the factual claims on this page.

  1. 01
    Vue.js guide: Reactivity Fundamentals

    Official explanation of ref, reactive and their limitations.

  2. 02
    Pinia documentation

    The official state management library for Vue.

How to read this page

Scope, cost and timeline figures are planning guidance until confirmed in a written proposal. Diagrams and screens are illustrations, not client deliverables, and source-code rights and handover follow the signed agreement. See the delivery process and the full disclaimer.

Next decision

Turn the brief into an accepted product scope.

Define outcomes, constraints, evidence, rights and handover before delivery begins.

Commercial rights, repositories, environments, documentation, acceptance and handover remain contract-defined.