AI-generated skills test

TypeScript test

TypeScript now anchors most serious front-end and Node codebases, and its whole promise is catching mistakes before they ship. But that promise only holds if the person writing it actually understands the type system rather than sprinkling `any` until the compiler falls silent. A resume that lists TypeScript tells you nothing about whether a candidate can model a domain in types, narrow a union safely, or read a cryptic compiler error and fix the real problem. A structured TypeScript test replaces that uncertainty with evidence, showing how someone works before you spend interview time.

H-Evaluate's TypeScript test focuses on the skills people use daily on modern web teams: writing and reasoning about types, handling asynchronous flows without silent failures, transforming data, and debugging code that type-checks but still misbehaves. Every candidate faces a comparable, structured challenge, so you compare people fairly and predict on-the-job performance instead of interview confidence. Because engineers now build alongside AI assistants, the test observes something a CV cannot: whether a candidate can judge and verify generated types and code rather than trust them blindly. In H-Evaluate's five-pillar framework this sits in the Domain pillar, with questions AI-generated fresh for each role rather than pulled from a shared bank.

What it measures

Type modelling and design

Expressing a domain with interfaces, unions, generics and utility types, and knowing when a precise type prevents bugs versus when it adds friction. This is what turns TypeScript from decoration into a genuine safety net a team can rely on.

Type narrowing and soundness

Narrowing unions, using guards and discriminated types, and understanding where the type system is sound and where escape hatches like `any`, assertions and non-null operators quietly reintroduce the very errors the language exists to catch.

Asynchronous and data flow

Typing promises and async/await correctly, handling errors in async flows, and transforming API responses into well-shaped data. Checks that a candidate can sequence work and keep types honest across the boundaries where real apps break.

Reading, debugging and verification

Interpreting compiler errors, tracing unfamiliar code, and judging whether a fix — including one an AI assistant suggests — is actually correct rather than merely silencing the error. Most engineering time goes to reading and verifying, not greenfield writing.

Question formats

Live coding tasks in a sandboxed environment, implementing typed functions or components against expected behaviourType-focused challenges that ask candidates to define, narrow or fix types so code compiles correctlyDebugging exercises on real code that type-checks but produces the wrong result at runtimeOutput- and error-prediction questions on inference, narrowing and structural typingMultiple-choice items on language and type-system behaviour for quick screeningShort written responses explaining a typing choice or how a result should be verified

Who it's for

This TypeScript test suits modern web and platform hiring: front-end, full-stack and Node.js engineers, and framework developers working in React, Angular or similar, with difficulty scaled to the role. It fits early screening, where it replaces unstructured phone screens and lets you shortlist on demonstrated skill, and as a structured stage before a system-design or on-site interview. Pair it with a JavaScript or React test when the role leans heavily on language fundamentals or UI work specifically.

How to read the results

  • 1Read the overall result as a shortlisting band, not a pass-or-fail verdict — it identifies who has cleared a credible bar and earned an interview, which you then use to probe depth.
  • 2Look at the competency breakdown: strong type modelling but weak narrowing, or clean coding paired with slow debugging, tells you precisely what to test next rather than leaving it to chance.
  • 3Weight the areas that match the role. Type design and soundness matter most for library and platform work; async and data flow carry more weight for API-heavy full-stack roles.
  • 4Treat the score as one calibrated signal against a role benchmark, paired with a structured interview — never a lone gate. Borderline results are a prompt for a conversation, not an automatic rejection.

AI-generated skills test

Evaluate candidates on this skill with AI-generated questions

Configure a role-tuned assessment and watch it adapt by seniority — no signup.

Related roles

Related reading

Frequently asked questions

What does a TypeScript test measure?

A TypeScript test measures whether a candidate can genuinely use the type system to write safer code, not just whether TypeScript appears on their CV. A good one covers type modelling and design, narrowing and soundness, typed asynchronous and data flow, and debugging code that compiles but misbehaves — the everyday skills that predict success on a modern web or Node team.

How is a TypeScript test different from a JavaScript test?

A JavaScript test focuses on core language reasoning — closures, async, the DOM and debugging. A TypeScript test adds the type system on top: whether a candidate can model a domain in types, narrow unions safely, and keep types honest across async and data boundaries. For strongly typed codebases, assess both; strong JavaScript fundamentals underpin good TypeScript, and the type skills sit on that foundation.

Are TypeScript tests reliable for hiring?

A well-built TypeScript test is a reliable selection method because every candidate faces comparable, job-relevant tasks judged against the same standard, reducing the influence of interview polish. Reliability improves when you read results as a band, weight the competencies the role actually needs, and pair the test with a structured interview rather than treating a single number as a pass-or-fail gate.

Does the test check for overuse of the any type?

Yes. Reaching for `any`, unchecked assertions or the non-null operator to silence the compiler is one of the clearest signals that someone does not truly understand the type system, so the test is built to surface it. The tasks reward candidates who narrow types soundly and keep code type-safe, and penalise those who defeat the very guarantees TypeScript exists to provide.

Can candidates cheat a TypeScript test using AI assistants?

Candidates now build alongside AI assistants, so a modern test is designed around that rather than pretending otherwise. H-Evaluate delivers questions in a monitored AI Sandbox with an integrity engine, and the tasks reward what machines cannot fake: judging whether generated types and code are actually correct, narrowing safely, and verifying a solution holds up rather than accepting the first output that compiles.