Roles · Frontend Developer (Angular) · Junior

What a Junior } should know

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

This page lists what a Junior } 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
28additional skills
2skill areas
0%at Advanced or Expert
Assess myself as Junior Full role matrix

Core skills for a Junior

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

Programming Fundamentals · 7

Understands basic O(n) and O(1) complexity when working with collections in Angular components. Uses built-in array methods (filter, map, find) in templates and services, aware of their linear cost.

Async Programming Awareness

Understands promises and async/await for HTTP requests in Angular services. Uses basic RxJS operators (subscribe, pipe) and AsyncPipe in templates for automatic Observable unsubscription.

Follows the Angular style guide and configured ESLint rules. Uses Angular CLI for generating components, services, and modules with proper structure. Writes clear names for component properties and methods.

Data Structures Awareness

Works with arrays and objects in Angular components for rendering lists via @for. Understands the difference between mutation and immutable data updates for correct OnPush change detection behavior.

Design Patterns Awareness

Applies basic Angular patterns: component-based approach, dependency injection via constructor, smart/dumb component separation. Uses services as singletons via providedIn: root.

Understands basic OOP concepts in TypeScript: classes, interfaces, decorators, generics. Applies simple SOLID principles following Angular project architecture. Follows team patterns for component/service class structure and Angular DI usage.

Uses basic TypeScript types in Angular components: interfaces for data models, typed @Input/@Output, strict HTTP response typing via HttpClient.get<T>(). Avoids using any.

Frontend Development · 17

Angular Core Awareness

Uses Angular Core at a basic level. Creates simple components from designs. Understands basic concepts and follows component guidelines.

Understands bundle size impact on Angular application performance. Uses ng build --configuration production for tree-shaking and minification. Analyzes bundles with source-map-explorer.

Component Testing Awareness

Writes basic unit tests for Angular components via TestBed: render verification, @Input binding, @Output emission. Uses ComponentFixture and DebugElement for DOM access in tests.

Core Web Vitals Awareness

Understands Core Web Vitals metrics (LCP, FID, CLS) and their measurement for Angular applications. Uses Chrome DevTools and Lighthouse for basic Angular component performance diagnostics.

Data Fetching Awareness

Uses HttpClient for GET/POST requests in Angular services. Applies response typing via generics, handles errors with catchError, displays loading states in templates.

Uses ready-made Angular Material or ng-zorro-antd components in projects. Understands design system principles: consistency, component reuse, following color and typography guidelines.

Modern CSS Awareness

Applies modern CSS in Angular components: Flexbox and Grid for layout, CSS Custom Properties for themes, :host and ::ng-deep (carefully) for styling. Understands ViewEncapsulation modes.

Understands PWA fundamentals including service workers and web app manifests in Angular. Uses Angular CLI to generate PWA scaffolding with @angular/pwa. Follows offline-first caching strategies from documentation.

Uses RxJS and reactive programming at a basic level. Creates simple components from designs. Understands basic concepts and follows component guidelines.

Understands SSR/SSG concepts and their benefits for Angular applications: SEO, First Contentful Paint. Knows about Angular Universal and basic server rendering setup via ng add @angular/ssr.

State Management Awareness

Manages state in Angular via services with BehaviorSubject and Angular signals. Understands the difference between local component state and global application state. Uses @Input/@Output for communication.

Tailwind CSS Awareness

Applies Tailwind CSS utility classes in Angular templates for basic styling: colors, spacing, typography. Uses responsive prefixes (sm:, md:, lg:) and dark theme via the dark: modifier.

Understands the concept of visual regression testing for Angular components. Takes component screenshots via Storybook, knows about font and animation issues in visual comparison.

Understands the bundler's role in Angular CLI: esbuild as the default builder in Angular 17+. Knows the difference between dev server (fast rebuilds) and production build (optimization). Uses ng serve for development.

Web Accessibility Awareness

Applies basic accessibility in Angular templates: semantic HTML, alt for images, ARIA attributes via attribute binding, using Angular Material components with built-in a11y support.

Web APIs Awareness

Uses basic Web APIs in Angular components: localStorage/sessionStorage for state, Fetch API via HttpClient, DOM API via ElementRef and Renderer2 instead of direct document access.

Web Components Awareness

Understands the Web Components concept and its relation to Angular Elements. Uses third-party Web Components in Angular templates via CUSTOM_ELEMENTS_SCHEMA in component metadata.

Additional skills

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

Accessibility TestingAPI DocumentationAWSChatGPT / ClaudeCode ReviewCursor IDEDockerE2E TestingGit AdvancedGitHub Actions / GitLab CIGitHub CopilotGraphQL DesignIntegration TestingKubernetes CoreMicro FrontendsMultithreadingNetwork FundamentalsOWASP & Application SecurityPerformance BudgetsPostgreSQLPrometheus & GrafanaPrompt Engineering for CodeRedisREST API DesignSecure Coding PracticesStructured LoggingSystem Design FundamentalsUnit Testing

What changes at Mid-level

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

See the Mid-level 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: 52 skills across 5 levels. The matrix is free for individuals and stays free.