Resources
Revolut Engineering
Building the Web that Moves Money
Inside Web engineering at Revolut — tech stack, architecture, culture
Canvas-based JS Blur Detection
KYC document verification — Laplacian variance, Canvas API, typed arrays
Best Practices for Unit Testing
Sample functions, MockFunc, builder pattern, AAA
Event Loop
javascript.info — Event Loop
Macrotasks, microtasks, rendering pipeline, splitting heavy tasks
Event Loop Explained with Examples
Call stack, Web APIs, callback queue, code traces
Promises & Async
javascript.info — Promise Basics
Constructor, resolve/reject, .then/.catch/.finally
javascript.info — Promise Chaining
Chaining .then, returning promises, thenable objects
javascript.info — Error Handling with Promises
Implicit try/catch, .catch placement, rethrowing
javascript.info — Promise API
Promise.all, allSettled, race, any, resolve, reject
javascript.info — Async/Await
async functions, await, error handling, parallel patterns
Fetch & Networking
javascript.info — Fetch
fetch(), Response object, headers, POST, status codes
javascript.info — Fetch: Abort
AbortController, signal, cancellation patterns
javascript.info — Fetch: CORS
Cross-origin requests, preflight, simple vs complex
JS Fundamentals
javascript.info — Closures
Lexical environment, scope chain, closure-in-loop
javascript.info — Function Binding
Losing this, bind, call, apply, partial application
javascript.info — Map and Set
Map vs Object, Set for uniqueness, iteration, conversion
javascript.info — Array Methods
map, filter, reduce, find, sort, flatMap, and more
javascript.info — Objects
Property access, this, computed properties, in operator
javascript.info — Prototypal Inheritance
[[Prototype]], __proto__, prototype chain
TypeScript
TS Handbook — Narrowing
Type guards, discriminated unions, never, control flow
TS Handbook — Generics
Generic functions, constraints, utility types
React
react.dev — Preserving and Resetting State
Keys, state identity, same position same component
react.dev — useEffect
Effects, cleanup, dependency array, lifecycle
react.dev — Synchronizing with Effects
When to use effects, not events vs effects
react.dev — Error Boundaries
getDerivedStateFromError, componentDidCatch
Testing
React Testing Library — Cheatsheet
Queries, events, async utilities, best practices
RTL — Query Priority
getByRole > getByLabelText > getByText > getByTestId
Revolut
Interview Flashcards
Interview Prep
Extra Practice
Cards:
0
left
Got it:
0
Missed:
0
Score:
0%
All cards
Missed only
Unseen only
Click or press Space to flip
Forgot (1)
Skip (S)
Got it (2)
Space
flip ·
1
forgot ·
2
got it ·
S
skip ·
←
→
navigate
Live Console
Load example
Clear
Run (Ctrl+Enter)
// Output appears here after Run
Round complete!
Go again
Browse back