How to assess · For hiring teams

How to Assess Vue.js Skills When Hiring

The test formats that actually work for Vue.js, what a strong answer looks like, sample questions and a scoring rubric you can use as-is.

The short answer

Assess Vue.js with a task, not a conversation: fix a non-updating ui, build a feature with a composable, ai-scored assessment (e.g. cohesyve) or code review. Score it against written criteria you fix before you see any submissions, and weight the criteria that the role actually depends on.

  • Understands reactivity: refs versus reactive, why destructuring loses reactivity, when to use computed versus watch
  • Uses the Composition API to write composables that encapsulate logic with clear inputs and outputs
  • Manages state with a store where it belongs and component state where it does not
  • Designs components with clear props and emits, and does not mutate props

Paste a job description; Cohesyve generates a role-specific assessment and rubric. Ten candidates free, no card.

Vue is approachable enough that many developers pick it up in a week, and that is the hiring problem: the résumé says Vue, and the candidate has built a few components with the Options API and never thought about reactivity, composition or how a large Vue app stays organised. The difference shows when the application grows — components that re-render for no reason, state scattered across a dozen files, and composables that are just functions with side effects. This page covers how to assess Vue for frontend roles: reactivity, the Composition API, state management, component design and testing.

Why Vue.js is worth testing

Vue's reactivity system is a leaky abstraction: it works until a developer destructures a reactive object, mutates a prop, or watches something the wrong way, and then it fails silently. Those mistakes do not crash; they produce UIs that do not update. Testing shows whether a candidate understands the model underneath, and that predicts whether their components will behave as the app grows.

What strong Vue.js looks like

  • Understands reactivity: refs versus reactive, why destructuring loses reactivity, when to use computed versus watch
  • Uses the Composition API to write composables that encapsulate logic with clear inputs and outputs
  • Manages state with a store where it belongs and component state where it does not
  • Designs components with clear props and emits, and does not mutate props
  • Keeps templates simple and moves logic into computed properties or composables
  • Tests components with a testing library and knows what to assert
  • Understands the render cycle enough to avoid needless re-renders and to use `v-memo` or keys correctly

Ways to assess Vue.js

Fix a non-updating UI

Provide a small app with a destructured reactive object, a mutated prop, a watch that should be a computed, and a list without keys. Ask the candidate to fix and explain each.

Pros

The silent reactivity failures that actually occur; scoreable.

Cons

Needs a runnable fixture.

Best for Mid and senior Vue roles.

Build a feature with a composable

Ask for a feature that fetches data, handles loading and error, and is reusable across two components via a composable, in a capped take-home.

Pros

Shows Composition API judgement and component design.

Cons

Take-home verification.

Best for Any level; scale via the spec.

AI-scored assessment (e.g. Cohesyve)

Generate a Vue task from the job description — a reactivity review, a composable design, a state-management question — with a rubric. Each candidate receives a different variant; reasoning is scored with the code.

Pros

Asynchronous and consistent; unique per candidate; reasoning about reactivity scores well.

Cons

Cannot run the app; have finalists run theirs.

Best for Screening a large pool.

Code review

Provide a diff with a prop mutation, a watch with side effects and a component doing too much. Ask for review comments.

Pros

Fast; shows standards.

Cons

Passive.

Best for Senior and lead developers.

Cohesyve

Run a Vue.js assessment on your next opening

Cohesyve generates a unique Vue.js task per candidate from your job description, with the scoring rubric attached. Questions are different for every applicant, so they cannot be shared or looked up.

What to test

Reactivity

Whether they understand the model.

Explain why a destructured reactive object stopped updatingChoose between computed and watch for a case and justify itFix a component that mutates a prop

Composition and reuse

Whether logic is encapsulated well.

Extract a composable from two components with duplicated logicDesign the inputs and outputs of a `useFetch`Explain when a composable should hold state and when it should not

State and architecture

Whether state has a home.

Decide what belongs in a Pinia store versus component stateStructure a feature across components and a storeHandle a cross-component update without prop drilling

Components and testing

Whether components are well designed and verified.

Define a component API with typed props and emitsTest a component with a mocked composableKeep a template free of logic

Sample Vue.js questions

What is the difference between `ref` and `reactive`, and when do you use each?

Entry

Look for Ref for primitives and reassignment, reactive for objects; the destructuring pitfall; `toRefs`.

A computed property is not recalculating when the underlying data changes. What are the likely causes?

Entry

Look for The data is not reactive, or was replaced rather than mutated, or reactivity was lost through destructuring.

When is `watch` the right tool, and when is it a sign something is wrong?

Mid

Look for Side effects in response to change; if it is computing derived state, it should be computed.

Design a composable for paginated fetching that two pages can reuse.

Mid

Look for Clear inputs, returned refs and functions, loading and error state, cancellation on unmount.

How would you organise a Vue app with fifty views and shared state?

Senior

Look for Feature folders, stores per domain, composables for logic, lazy routes, and conventions for where state lives.

Red flags

  • Mutates props
  • Cannot explain why destructuring breaks reactivity
  • Uses watch to compute derived state
  • Puts business logic in templates
  • Has no testing habit

Scoring rubric

CriterionWeightWhat strong looks like
Reactivity understanding30%The model is understood; pitfalls are avoided by habit.
Composition and reuse25%Composables are well-shaped and reusable.
State and architecture20%State lives in the right place; the app has structure.
Component design15%Clear APIs; simple templates.
Testing10%Components are tested meaningfully.

Mistakes hiring teams make

  • Testing template syntax rather than reactivity
  • Not planting a silent reactivity failure — the defining Vue defect
  • Accepting Options API answers when the codebase is Composition API, or vice versa, without saying which
  • Ignoring state management
  • Confusing "has built a Vue component" with Vue skill

Roles that need Vue.js

Vue.js DeveloperFrontend DeveloperFull-Stack DeveloperUI EngineerNuxt DeveloperSenior Frontend Engineer

Common questions

Should I test the Options API or the Composition API?

Whichever your codebase uses, and say so. Reactivity understanding is the same underneath, and that is the main thing to test.

What is the best single Vue screening question?

Show a component that destructures a reactive object and ask why the UI stopped updating. It tests the reactivity model in two minutes.

Does React experience transfer to Vue?

Component thinking does. Vue's reactivity model is different and is where React developers make silent mistakes. Test it specifically.

How long should a Vue assessment take?

Forty-five to sixty minutes for a fix-and-explain exercise; two to three hours capped for a feature with a composable.

Cohesyve · Skill assessments for hiring

Test Vue.js before the first interview

Generate a role-specific Vue.js assessment from your job description and see who can do the work before you spend interview time on them.

1,500+

assessments completed

50%

faster time-to-hire

90%

completion rate

5 min

from JD to assessment

No credit card · 10 free candidates · Plans sized to your hiring volume

See Cohesyve in action

Free 30-min walkthrough

See it on your role