JavaScript
Hard
Skills
01
Language
Fundamentals
CO RE
14 skills
The
parts
of
JavaScript
that
do
not
change
between
frameworks
—
scope
,
types
,
objects
,
and
the
prototype
model
.
02
Asynchronous
JavaScript
&
the
Runtime
CO RE
9 skills
How
JavaScript
schedules
work
—
the
single
most
common
source
of
production
bugs
in
front
-
end
and
Node
codebases
.
ES
2015+
syntax
—
let
/
const
,
arrow
functions
,
template
literals
,
default
&
rest
parameters
Data
types
&
coercion
—
primitives
vs
.
objects
,
==/===
rules
,
truthiness
,
NaN
handling
Closures
&
lexical
scope
—
scope
chains
,
IIFEs
,
module
encapsulation
Hoisting
&
temporal
dead
zone
Prototypal
inheritance
—
prototype
chain
,
Object.create
,
class
syntax
this
binding
—
call
,
apply
,
bind
,
arrow
-
function
capture
Destructuring
&
spread
/
rest
—
object
and
array
patterns
,
shallow
cloning
Modules
—
ESM
import
/
export
,
dynamic
import
,
CommonJS
interop
Iterators
&
generators
—
Symbol
.
iterator
,
function
*,
lazy
sequences
Collections
—
Map
,
Set
,
WeakMap
,
WeakSet
,
BigInt
Metaprogramming
—
Proxy
,
Reflect
,
property
descriptors
,
Symbol
keys
Functional
programming
—
pure
functions
,
currying
,
composition
,
immutability
Regular
expressions
—
flags
,
groups
,
lookahead
,
named
captures
Error
handling
—
try
/
catch
/
finally
,
custom
error
classes
,
error
boundaries
in
async
code
Event
loop
internals
—
call
stack
,
macrotask
queue
,
microtask
queue
,
rendering
steps
Callbacks
&
callback
patterns
—
error
-
first
convention
,
callback
hell
refactors
Promises
—
chaining
,
all
,
allSettled
,
race
,
any
,
finally
async
/
await
—
sequential
vs
.
parallel
awaits
,
error
propagation
,
top
-
level
await
Async
iteration
—
for
await
...
of
,
async
generators
,
async
iterators
Cancellation
—
AbortController
,
AbortSignal
.
timeout
,
cleanup
on
unmount
Web
Workers
&
worker
threads
—
structured
clone
,
message
passing
,
off
-
main
-
thread
compute
Streams
—
ReadableStream
,
WritableStream
,
TransformStream
,
backpressure
Rate
control
—
debounce
,
throttle
,
request
batching
,
retry
with
exponential
backoff
1 / 6
03
DOM
,
Browser
APIs
&
the
Web
Platform
CO RE
11 skills
04
TypeScript
ADVANCED
9 skills
05
Front
-
End
Frameworks
&
Libraries
S PECIALIS T
15 skills
DOM
traversal
&
manipulation
—
querySelector
,
createElement
,
DocumentFragment
,
batch
updates
Event
model
—
bubbling
,
capturing
,
delegation
,
passive
listeners
,
pointer
events
Fetch
API
—
Request
/
Response
,
headers
,
streaming
bodies
,
abort
signals
Client
-
side
storage
—
localStorage
,
sessionStorage
,
IndexedDB
,
Cache
API
History
&
routing
APIs
—
pushState
,
popstate
,
URL
/
URLSearchParams
Observer
APIs
—
IntersectionObserver
,
ResizeObserver
,
MutationObserver
Realtime
transport
—
WebSockets
,
Server
-
Sent
Events
,
WebRTC
data
channels
Service
Workers
&
PWA
—
offline
caching
,
background
sync
,
push
notifications
,
manifests
Web
Components
—
Custom
Elements
,
Shadow
DOM
,
HTML
templates
,
slots
Graphics
&
media
—
Canvas
2
D
,
inline
SVG
,
WebGL
/
WebGPU
basics
,
MediaStream
,
File
API
Device
APIs
—
Geolocation
,
Clipboard
,
Notifications
,
Drag
&
Drop
,
Fullscreen
Type
annotations
&
inference
—
interfaces
vs
.
type
aliases
,
readonly
,
optional
members
Generics
—
generic
constraints
,
default
type
params
,
generic
inference
patterns
Union
&
intersection
types
—
discriminated
unions
,
exhaustive
switch
checks
Narrowing
&
type
guards
—
typeof
,
instanceof
,
in
,
user
-
defined
predicates
,
assertion
functions
Utility
types
—
Partial
,
Required
,
Pick
,
Omit
,
Record
,
Readonly
,
ReturnType
,
Awaited
Advanced
type
construction
—
mapped
types
,
conditional
types
,
template
literal
types
,
infer
Declaration
files
—
*.
d
.
ts
authoring
,
ambient
modules
,
module
augmentation
Compiler
configuration
—
tsconfig
,
strict
mode
,
target
/
module
resolution
,
path
aliases
Decorators
&
enums
—
legacy
and
Stage
3
decorators
,
const
enums
,
namespaces
React
—
hooks
,
context
,
memoization
,
Suspense
,
error
boundaries
React
Server
Components
—
server
/
client
boundaries
,
streaming
,
actions
Next
.
js
—
App
Router
,
SSR
/
SSG
/
ISR
,
route
handlers
,
middleware
,
image
optimization
Vue
3
—
Composition
API
,
reactive
refs
,
custom
directives
,
transitions
Nuxt
—
file
-
based
routing
,
server
routes
,
auto
-
imports
,
hybrid
rendering
Angular
—
standalone
components
,
signals
,
dependency
injection
,
RxJS
integration
Svelte
/
SvelteKit
—
compiled
reactivity
,
stores
,
load
functions
,
form
actions
SolidJS
,
Astro
&
Qwik
—
fine
-
grained
reactivity
,
islands
architecture
,
resumability
State
management
—
Redux
Toolkit
,
Zustand
,
MobX
,
Pinia
,
Jotai
Server
-
state
caching
—
TanStack
Query
,
SWR
,
Apollo
Client
cache
policies
Routing
—
React
Router
,
TanStack
Router
,
Vue
Router
,
nested
&
lazy
routes
Styling
systems
—
Tailwind
CSS
,
CSS
Modules
,
styled
-
components
,
Sass
Component
libraries
—
MUI
,
Chakra
UI
,
Radix
,
shadcn
/
ui
,
Ant
Design
Form
handling
—
React
Hook
Form
,
Formik
,
Zod
/
Yup
resolvers
,
validation
UX
Data
visualization
—
D
3,
Recharts
,
Chart
.
js
,
Three
.
js
,
visx
2 / 6
06
Node
.
js
&
Server
-
Side
JavaScript
ADVANCED
13 skills
07
Build
,
Bundling
&
Developer
Tooling
ADVANCED
9 skills
08
Testing
&
Code
Quality
CO RE
9 skills
Node
runtime
model
—
module
resolution
,
event
loop
phases
,
process
&
Buffer
APIs
Package
management
—
npm
,
pnpm
,
Yarn
,
semver
ranges
,
lockfiles
,
workspaces
HTTP
frameworks
—
Express
,
Fastify
,
Koa
,
NestJS
,
Hapi
REST
API
design
—
resource
modeling
,
status
codes
,
pagination
,
versioning
,
HATEOAS
basics
GraphQL
—
schema
design
,
resolvers
,
Apollo
Server
,
GraphQL
Yoga
,
N
+1
mitigation
tRPC
&
end
-
to
-
end
type
safety
Realtime
servers
—
Socket
.
IO
,
ws
,
pub
/
sub
fan
-
out
,
presence
tracking
ORM
/
ODM
—
Prisma
,
Drizzle
,
Mongoose
,
Sequelize
,
Knex
Authentication
&
authorization
—
JWT
,
OAuth
2.0,
OIDC
,
session
cookies
,
RBAC
,
Passport
.
js
Schema
validation
—
Zod
,
Joi
,
Yup
,
Ajv
,
request
/
response
contracts
Background
jobs
—
BullMQ
,
agenda
,
cron
scheduling
,
idempotent
workers
File
&
stream
handling
—
multer
,
signed
uploads
,
piping
to
object
storage
Process
management
—
PM
2,
clustering
,
graceful
shutdown
,
health
checks
Bundlers
—
Vite
,
Webpack
,
Rollup
,
esbuild
,
Parcel
,
Turbopack
Transpilation
—
Babel
,
SWC
,
TypeScript
compiler
,
browser
targets
Linting
&
formatting
—
ESLint
,
Prettier
,
Biome
,
Stylelint
,
shared
configs
CSS
pipelines
—
PostCSS
,
autoprefixer
,
Sass
,
Tailwind
content
scanning
Monorepo
tooling
—
Turborepo
,
Nx
,
pnpm
workspaces
,
package
boundaries
Environment
configuration
—
.
env
files
,
runtime
config
injection
,
secret
handling
Optimization
—
tree
shaking
,
minification
,
code
splitting
,
source
maps
Task
runners
&
scripts
—
npm
scripts
,
concurrently
,
watch
mode
,
pre
-
commit
hooks
Dev
environments
—
Dev
Containers
,
Docker
Compose
,
local
HTTPS
,
proxy
setup
Unit
testing
—
Jest
,
Vitest
,
Mocha
+
Chai
,
test
structure
and
fixtures
Component
testing
—
React
Testing
Library
,
Vue
Test
Utils
,
user
-
event
End
-
to
-
end
testing
—
Playwright
,
Cypress
,
Puppeteer
,
Selenium
API
&
integration
testing
—
Supertest
,
Postman
/
Newman
,
contract
tests
Mocking
&
interception
—
MSW
,
Sinon
,
jest
.
mock
,
fake
timers
Coverage
tooling
—
Istanbul
/
nyc
,
c
8,
coverage
thresholds
in
CI
Component
documentation
—
Storybook
,
visual
regression
with
Chromatic
Load
&
performance
testing
—
k
6,
Artillery
,
Lighthouse
CI
budgets
Test
strategy
—
test
pyramid
,
TDD
,
snapshot
vs
.
assertion
,
flake
triage
3 / 6
09
Performance
Engineering
ADVANCED
9 skills
10
Data
,
APIs
&
Integration
ADVANCED
7 skills
11
Databases
&
Persistence
S PECIALIS T
6 skills
12
Architecture
&
Design
Patterns
ADVANCED
9 skills
Core
Web
Vitals
—
LCP
,
INP
,
CLS
,
TTFB
,
field
vs
.
lab
data
Code
splitting
&
lazy
loading
—
dynamic
import
,
route
-
level
chunks
,
prefetching
Runtime
optimization
—
memoization
,
avoiding
layout
thrash
,
virtualized
lists
Bundle
analysis
—
webpack
-
bundle
-
analyzer
,
rollup
-
plugin
-
visualizer
,
dependency
budgets
Caching
strategy
—
HTTP
cache
headers
,
ETags
,
CDN
edge
cache
,
stale
-
while
-
revalidate
Rendering
strategies
—
CSR
,
SSR
,
SSG
,
ISR
,
streaming
HTML
,
partial
hydration
Asset
optimization
—
responsive
images
,
AVIF
/
WebP
,
font
subsetting
,
preload
/
preconnect
Profiling
—
Chrome
DevTools
Performance
&
Memory
panels
,
heap
snapshots
,
flame
charts
Monitoring
—
Lighthouse
,
WebPageTest
,
RUM
instrumentation
,
performance
budgets
Protocols
—
REST
,
GraphQL
,
gRPC
-
Web
,
WebSockets
,
SSE
,
HTTP
/2 &
HTTP
/3
basics
Serialization
formats
—
JSON
,
YAML
,
XML
,
Protocol
Buffers
,
schema
evolution
HTTP
clients
—
fetch
,
axios
,
ky
,
got
,
TanStack
Query
wrappers
API
specification
—
OpenAPI
/
Swagger
,
schema
-
first
code
generation
,
SDK
publishing
Caching
layers
—
Redis
,
edge
caching
,
ETags
,
client
-
side
request
de
-
duplication
Resilience
patterns
—
retries
with
jitter
,
circuit
breakers
,
rate
limiting
,
idempotency
keys
Third
-
party
integrations
—
payments
,
auth
providers
,
analytics
,
CRM
and
messaging
APIs
Relational
databases
—
PostgreSQL
,
MySQL
,
SQLite
,
joins
,
indexes
,
transactions
Document
&
wide
-
column
stores
—
MongoDB
,
DynamoDB
,
Firestore
,
aggregation
pipelines
Key
-
value
caches
—
Redis
,
Memcached
,
TTL
design
,
cache
invalidation
Schema
migration
—
Prisma
Migrate
,
Knex
migrations
,
Flyway
,
zero
-
downtime
deploys
Data
modeling
—
normalization
,
denormalization
trade
-
offs
,
index
strategy
,
N
+1
detection
Search
—
PostgreSQL
full
-
text
search
,
Elasticsearch
,
Meilisearch
,
ranking
basics
Modular
design
—
separation
of
concerns
,
layering
,
dependency
direction
Classic
patterns
—
observer
,
pub
/
sub
,
factory
,
singleton
,
strategy
,
decorator
,
adapter
Application
architectures
—
MVC
,
MVVM
,
Flux
/
Redux
unidirectional
data
flow
Dependency
injection
—
constructor
injection
,
inversion
of
control
containers
Event
-
driven
design
—
event
sourcing
basics
,
message
contracts
,
CQRS
concepts
Micro
-
frontends
—
module
federation
,
shell
/
remote
composition
,
shared
design
tokens
Design
systems
—
token
architecture
,
headless
components
,
component
APIs
Refactoring
&
legacy
migration
—
strangler
pattern
,
codemods
,
incremental
TypeScript
adoption
Technical
documentation
—
JSDoc
,
TypeDoc
,
ADRs
,
RFC
authoring
4 / 6
13
Security
ADVANCED
9 skills
14
DevOps
,
Cloud
&
Observability
S PECIALIS T
10 skills
15
Accessibility
&
Internationalization
CO RE
8 skills
Cross
-
site
scripting
(
XSS
)
prevention
—
output
encoding
,
escaping
,
safe
DOM
sinks
Input
sanitization
—
DOMPurify
,
validation
schemas
,
allow
-
list
parsing
CSRF
protection
—
CSRF
tokens
,
SameSite
cookies
,
origin
checks
Content
Security
Policy
—
nonces
,
hashes
,
reporting
endpoints
CORS
configuration
—
preflight
handling
,
credentialed
requests
,
origin
allow
-
lists
OWASP
Top
10
for
web
applications
Authentication
hardening
—
token
storage
,
refresh
rotation
,
PKCE
,
secure
cookie
flags
Dependency
security
—
npm
audit
,
Snyk
,
Dependabot
,
SBOM
awareness
Transport
&
integrity
—
HTTPS
/
TLS
,
HSTS
,
Subresource
Integrity
Version
control
—
Git
branching
models
,
rebase
vs
.
merge
,
conventional
commits
Code
review
practice
—
GitHub
/
GitLab
PR
workflows
,
review
checklists
,
protected
branches
CI
/
CD
pipelines
—
GitHub
Actions
,
GitLab
CI
,
CircleCI
,
Jenkins
Containers
—
Dockerfile
authoring
,
multi
-
stage
builds
,
Docker
Compose
Serverless
&
edge
—
AWS
Lambda
,
Cloudflare
Workers
,
Vercel
Edge
Functions
Cloud
platforms
—
AWS
(
S
3,
CloudFront
,
API
Gateway
),
Vercel
,
Netlify
,
GCP
basics
Infrastructure
as
code
—
Terraform
fundamentals
,
Serverless
Framework
,
CDK
concepts
Error
tracking
—
Sentry
,
Rollbar
,
source
map
upload
,
release
tagging
Logging
,
metrics
&
tracing
—
structured
logs
,
OpenTelemetry
,
dashboards
and
alerts
Release
strategies
—
blue
-
green
,
canary
,
feature
flags
,
rollback
procedures
WCAG
2.2
AA
conformance
—
perceivable
,
operable
,
understandable
,
robust
criteria
Semantic
HTML
—
landmarks
,
heading
order
,
native
controls
over
divs
ARIA
—
roles
,
states
,
properties
,
live
regions
,
correct
usage
limits
Keyboard
&
focus
management
—
focus
trapping
,
roving
tabindex
,
skip
links
Screen
reader
testing
—
NVDA
,
JAWS
,
VoiceOver
,
TalkBack
workflows
Automated
audits
—
axe
,
Lighthouse
accessibility
,
Pa
11
y
,
CI
gates
Internationalization
—
i
18
next
,
react
-
intl
,
ICU
message
format
,
pluralization
Locale
-
aware
formatting
—
Intl
.
DateTimeFormat
,
NumberFormat
,
Collator
,
RTL
layout
support
5 / 6
16
Workflow
,
Debugging
&
Collaboration
CO RE
8 skills
17
Domain
Summary
190+ skills
DOMAIN
LEVEL
SKILLS
Language
Fundamentals
Core
14
Asynchronous
JavaScript
&
the
Runtime
Core
9
DOM
,
Browser
APIs
&
the
Web
Platform
Core
11
TypeScript
Advanced
9
Front
-
End
Frameworks
&
Libraries
Specialist
15
Node
.
js
&
Server
-
Side
JavaScript
Advanced
13
Build
,
Bundling
&
Developer
Tooling
Advanced
9
Testing
&
Code
Quality
Core
9
Performance
Engineering
Advanced
9
Data
,
APIs
&
Integration
Advanced
7
Databases
&
Persistence
Specialist
6
Architecture
&
Design
Patterns
Advanced
9
Security
Advanced
9
DevOps
,
Cloud
&
Observability
Specialist
10
Accessibility
&
Internationalization
Core
8
Workflow
,
Debugging
&
Collaboration
Core
8
Browser
DevTools
—
Elements
,
Network
,
Sources
,
Performance
,
Application
panels
Debugging
technique
—
breakpoints
,
watch
expressions
,
call
stack
reading
,
source
maps
Editor
configuration
—
VS
Code
extensions
,
workspace
settings
,
snippets
,
tasks
Design
handoff
—
Figma
inspection
,
design
tokens
,
spec
-
to
-
code
translation
Agile
delivery
—
sprint
planning
,
story
estimation
,
Linear
/
Jira
ticket
hygiene
Incident
response
—
triage
,
postmortems
,
blameless
retrospectives
,
runbooks
Technical
writing
—
READMEs
,
API
docs
,
changelogs
,
migration
guides
Mentorship
&
knowledge
sharing
—
pairing
,
internal
talks
,
onboarding
documentation
6 / 6