# TypeScript Skills Test and Verified TypeScript Score

> A TypeScript skills test on generics, narrowing and type design, plus live type-design sessions and connected repos. See what proves TypeScript skills.

Source: https://getlemma.io/skills/typescript

Plenty of code is technically TypeScript and still full of any. Lemma shows whether you design types that model your domain, through live sessions, adaptive assessments and repositories you connect.

How TypeScript is assessed

Preparing for an interview? [TypeScript interview questions, junior to senior](https://getlemma.io/skills/typescript/interview-questions)

## What TypeScript competence looks like

A strong TypeScript developer uses the type system to make invalid states impossible. They reach for discriminated unions instead of optional flags, narrow types with guards rather than casts, and treat an escape hatch like any or a non-null assertion as a decision that needs a reason.

They also read and write generics comfortably, type third-party data at the boundary with runtime validation, and keep compiler settings strict. When a type error appears in a large codebase, they can follow it back to the source and fix the model instead of patching the symptom.

### Type narrowing

Type guards, discriminated unions and exhaustive checks that let the compiler prove each branch is handled.

### Generics

Writing reusable functions and components with constraints, defaults and inference that stays readable.

### Utility and mapped types

Partial, Pick, Record and custom mapped or conditional types used to derive types instead of duplicating them.

### Typing at the boundaries

Validating API responses and user input at runtime so the static types can be trusted.

### Strict compiler settings

Strict null checks, no implicit any, and migrating a loose codebase toward strictness safely.

### Declaration files

Typing untyped libraries, module augmentation and publishing accurate types for your own packages.

## What counts as evidence of TypeScript skills?

Listing TypeScript on a profile proves nothing on its own. What counts is a component you shipped, a session where someone watched you debug one, or a test you passed. These are the records Lemma can hold for your TypeScript skill, and where each one comes from. See the [evidence methodology](https://getlemma.io/methodology#evidence-types) for how each source is weighed.

[Live session](https://getlemma.io/product/sessions)

### Type design review in a live session

Model a small domain with a practitioner, such as order states or API responses. They see whether you choose unions, generics and guards well, and rate the session.

[Adaptive assessment](https://getlemma.io/product/assessments)

### Adaptive TypeScript assessment

Scenarios test narrowing, generic constraints and inference. Some show code with a type error or an unsafe cast, and you pick the change that models it correctly.

[GitHub connector](https://getlemma.io/product/passport)

### A strictly typed repository

Connect a GitHub repository or commit that shows your types, for example a migration to strict mode. Lemma checks it exists and that you can access it.

[Live session](https://getlemma.io/product/sessions)

### Teaching TypeScript to a peer

Explaining generics or narrowing to someone learning them shows depth. Teaching sessions count for more than learning ones in your record.

## How is a TypeScript skills test run on Lemma?

The TypeScript test is adaptive: 15 to 25 questions, each picked from how you answered the last, built around real interface bugs rather than trivia. Its result joins your live sessions and linked repositories or deployments in your TypeScript SCI, which also weighs how recent the evidence is.

[How the SCI score is calculated](https://getlemma.io/product/sci)[How adaptive skills assessments work](https://getlemma.io/product/assessments)[Practise TypeScript in live skill swap sessions](https://getlemma.io/product/sessions)[Which evidence types count](https://getlemma.io/methodology#evidence-types)[What your Skills Passport shows](https://getlemma.io/product/passport)

1.  ### Model types with a practitioner

    In a live session you design types for a real problem and defend your choices. Expect to be asked why you used a union, where a cast is hiding a bug, and how the types guide callers.

2.  ### Take the adaptive assessment

    Questions start from your level and adjust after each answer. Realistic scenarios cover narrowing, generics and utility types; harder ones count for more, and each has a time limit.

3.  ### Back it with real code

    Connect a GitHub repository written in strict TypeScript. Your sessions, assessment result and connected code sit together under one TypeScript skill on your Passport.

## TypeScript skills: common questions

### How do employers check TypeScript skills beyond the CV?

Most look at how you model types under pressure: unions, narrowing and generics. Lemma records that directly through live type-design sessions and an adaptive assessment. You can share the TypeScript skill on your Passport, which lists the evidence behind it.

### What advanced TypeScript features should I learn for a mid-level role?

Focus on discriminated unions, generic constraints, conditional and mapped types, and runtime validation at API boundaries. Those features come up most in real codebases. The TypeScript assessment on Lemma climbs into these areas as you answer correctly.

### Does TypeScript evidence on Lemma count toward JavaScript too?

No. Each skill keeps its own record so a score always means one thing. A session where you write TypeScript can still sharpen your JavaScript, but you build JavaScript evidence through JavaScript sessions and its own assessment.

### How do I prove TypeScript experience from a codebase migration?

Connect the repository or the specific commits from the migration through GitHub. Then walk a practitioner through the decisions in a live session: what you made strict first, where you added runtime validation and which casts you removed.

## Skills related to TypeScript

[Browse the skills directory](https://getlemma.io/skills)

[### JavaScript

Evidence that you understand how JavaScript runs, not just how to write its syntax.

Evidence for JavaScript](https://getlemma.io/skills/javascript)[### React

Show how you structure components, manage state and keep renders fast, with evidence behind it.

Evidence for React](https://getlemma.io/skills/react)[### Node.js

Evidence of how you build and debug Node.js services, from the event loop to production errors.

Evidence for Node.js](https://getlemma.io/skills/nodejs)[### Angular

Evidence for structuring large Angular apps with services, RxJS and change detection.

Evidence for Angular](https://getlemma.io/skills/angular)

![Painting of an olive grove in soft sunlight with hills beyond](https://cdn.sanity.io/images/islu4peo/production/613eb3f93566423c9adf45246f2cf1a61437c04c-1680x1120.jpg?w=1080&fm=webp&q=68&fit=max)

## Start your TypeScript evidence record.

Lemma is in early access. Request an invite and we will email you when your place is ready.
