Roles · Frontend Developer (Svelte) · Mid-level

What a Mid-level } should know

24 core skills, 51 in total. Expectations per skill, and what changes at the next level.

This page lists what a Mid-level } is expected to know and do, skill by skill. Core skills are the ones a manager and peers assess in a review cycle; the rest count only in self-assessment. Main areas: Programming Fundamentals, Frontend Development.

24core skills
27additional skills
2skill areas
0%at Advanced or Expert
Assess myself as Mid-level Full role matrix

Core skills for a Mid-level

Grouped by area. The label on the right is the expected depth: Awareness, Working, Advanced or Expert.

Programming Fundamentals · 6

Optimizes list and tree processing algorithms in Svelte applications, applies memoization through $derived for computation caching. Profiles reactive chain performance, selects optimal structures for keyed each blocks.

Implements parallel data loading through Promise.all in SvelteKit load functions, manages race conditions through $effect.tracking(). Creates reusable async wrappers for stores, handles request cancellation through AbortController.

Configures advanced ESLint rules for Svelte 5 with rune and accessibility checks, integrates svelte-check in pre-commit hooks. Uses SonarQube or Code Climate for quality metrics, covers critical components with unit tests through Vitest.

Data Structures Working

Designs normalized data stores in Svelte stores and $state runes, applies trees and graphs for SvelteKit navigation structures. Uses WeakMap for component reference caching, optimizes structures for server load functions.

Design Patterns Working

Implements Svelte 5 patterns: compound components through snippets, render delegation, context API for dependency injection. Applies the action pattern (use:action) for reusable DOM logic, designs adaptive layouts in SvelteKit.

Creates strict TypeScript interfaces for component props, types stores and $derived runes with generics. Configures svelte-check in strict mode, types form actions, server hooks, and SvelteKit API endpoints with full type safety.

Frontend Development · 18

Optimizes SvelteKit application bundle: configures code splitting by routes, manualChunks for vendor libraries, preload strategies. Minimizes CSS through Tailwind purge, analyzes dependency duplication, configures gzip/brotli compression on the server.

Creates comprehensive Svelte component tests: mocking stores and $state, testing $derived computations, async operations. Tests components with context, slots, and snippets, configures Vitest coverage reports, creates test utilities for SvelteKit.

Core Web Vitals Working

Optimizes Core Web Vitals in SvelteKit: preloads critical resources, lazy loading through Svelte actions, font optimization. Configures web-vitals library for RUM monitoring, improves INP through event handler debouncing and $effect optimization.

CSS-in-JS Working

Applies CSS-in-JS approaches within Svelte component styling, using scoped styles with dynamic class bindings and CSS custom properties. Optimizes rendering performance by leveraging Svelte's compile-time style optimization. Integrates design tokens and writes tests for component visual states.

Data Fetching Working

Implements advanced data fetching patterns in SvelteKit: parallel load functions, invalidateAll for updates, streaming with promises. Creates type-safe API wrappers, configures response caching through Cache-Control headers in server routes.

Develops design system components on Svelte 5 with typed $props(), slots, and snippets for flexible composition. Configures Storybook for Svelte component documentation, creates variants through CSS variables and Tailwind classes.

Micro Frontends Working

Works with micro-frontends in Svelte: uses vite-plugin-federation for Svelte Module Federation, implements Svelte components as Web Components for integration with any framework. Configures shared state through writable stores with cross-MFE synchronization via events.

Modern CSS Working

Applies advanced CSS features in Svelte: container queries, has(), nesting, cascade layers (@layer). Creates responsive layouts with dynamic viewport units, uses Svelte transitions and animations with CSS keyframes for smooth UI transitions.

Configures PWA in SvelteKit with a custom service worker: caching strategies (stale-while-revalidate, cache-first), offline fallback pages. Implements background data synchronization, push notifications, and SW updates without losing $state.

Configures rendering strategies in SvelteKit: SSR for dynamic pages, prerender for static, CSR for SPA sections. Uses adapter-static and adapter-node, implements ISR-like patterns through caching headers and invalidation.

Designs SvelteKit application state: global stores for auth and settings, context API for tree-scoped data, $state for forms. Implements optimistic updates through form actions, synchronizes server and client state through load invalidation.

Independently implements complex UI components with Svelte/SvelteKit. Optimizes rendering performance. Writes tests. Applies state management tools.

Tailwind CSS Working

Configures Tailwind CSS for a SvelteKit project: custom theme, plugins, content paths for Svelte files. Combines Tailwind with Svelte scoped styles and Skeleton UI, creates reusable component variants through class: directive and clsx.

Configures visual testing system for Svelte: Playwright with pixel comparison, Chromatic for Storybook components. Creates tests for different viewports and themes, integrates visual checks in CI through GitHub Actions, manages baseline snapshots.

Configures Vite for a SvelteKit project: custom path aliases, API proxy, dependency optimization (optimizeDeps). Connects Vite plugins for SVG components, imagetools, configures build optimizations and environment variables for different environments.

Implements advanced accessibility in Svelte components: live regions for dynamic content, focus management during SvelteKit navigation. Configures aria-* attributes for custom widgets, creates skip-links and correct heading hierarchies in layouts.

Web APIs Working

Applies advanced Web APIs in Svelte: ResizeObserver and MutationObserver through actions, Web Workers for heavy computations, Clipboard API. Integrates Geolocation, Media API, and Notification API in SvelteKit, manages lifecycle through $effect cleanup.

Web Components Working

Creates Svelte components exported as Web Components through customElement: true, configures shadow DOM and property forwarding. Integrates third-party Web Component UI libraries in SvelteKit, ensures correct SSR hydration.

Additional skills

Not assessed by the team, but part of the self-assessment and the development plan.

Accessibility TestingAPI DocumentationAWSChatGPT / ClaudeCode ReviewDockerE2E TestingGit AdvancedGitHub Actions / GitLab CIGitHub CopilotGraphQL DesignIntegration TestingKubernetes CoreMultithreadingNetwork FundamentalsOOP & SOLID PrinciplesOWASP & Application SecurityPerformance BudgetsPostgreSQLPrometheus & GrafanaPrompt Engineering for CodeRedisREST API DesignSecure Coding PracticesStructured LoggingSystem Design FundamentalsUnit Testing

What changes at Senior

51 skills get a higher expectation or become core when moving from Mid-level to Senior. The biggest jumps first.

See the Senior page →
Run this with your whole team
Self-assessment plus manager and peer reviews against the same matrix, gap analysis and next-level readiness for every engineer. Team Pro is free for 14 days; individual tools stay free forever.
Start a team trial (14 days free) Send to my manager

} in the open competency matrix: 51 skills across 5 levels. The matrix is free for individuals and stays free.