๐Ÿช TechCookies
HomeDSASystem DesignMy Progress
Free
Log inStart free
TechCookies โ€” Practice ยท Learn ยท PrepareTechCookies โ€” Practice ยท Learn ยท Prepare
ConceptsPracticeSD challengesPricingPrivacyTermsContact
ยฉ 2026 TechCookies
โ† System Design

Practice MCQs

3416 questions across 93 concepts. Pick a topic to reinforce your understanding before SD challenges.

Free concepts unlocked โ€” Pro concepts require an upgrade

Get access to all concepts, practice questions, and design challenges.

Upgrade โ†’
Quick filter:
93 concepts
๐Ÿ“š
A/B Testing SystemsPRO~26 min

A/B testing evaluates user responses to different versions of a webpage or app

6 Q ยท not taken
ABTestingStatisticalSignificanceVariantAssignment
Upgrade
๐Ÿ“š
Adaptive Bitrate Streaming (HLS/DASH)PRO~30 min

Learn about Adaptive Bitrate Streaming and its key components

21 Q ยท not taken
AdaptiveBitrateStreamingHLSDASH
Upgrade
๐Ÿ“š
Analytics PipelinesPRO~37 min

A comprehensive guide to understanding analytics pipelines and their components

20 Q ยท not taken
AnalyticsPipelinesKafkaClickHouse
Upgrade
๐Ÿ“š
Append-Only Audit TablesFREE~29 min

Audit tables provide a tamper-proof record of system actions

26 Q ยท not taken
AuditTablesDataIntegrityDatabaseDesign
Start โ†’
๐Ÿ“š
Async Job Processing FundamentalsPRO~69 min

Learn the fundamentals of asynchronous job processing and message queues

212 Q ยท not taken
MessageQueuesWorkerPoolsIdempotencyKeys
Upgrade
๐Ÿ“š
Async Processing PipelinesPRO~30 min

Explore the fundamentals of asynchronous processing pipelines in software development

27 Q ยท not taken
AsyncProcessingPipelinesEventDriven
Upgrade
๐Ÿ“š
Audio Streaming ArchitecturePRO~30 min

Explore the architecture and mechanisms behind audio streaming technologies

33 Q ยท not taken
AudioStreamingCDNProgressiveDownload
Upgrade
๐Ÿ“š
Authentication FundamentalsPRO~41 min

Learn the fundamentals of authentication and authorization in web applications

29 Q ยท not taken
AuthenticationAuthorizationJWT
Upgrade
๐Ÿ“š
Authorisation and RBACPRO~34 min

Understanding authorization and role-based access control for secure applications

23 Q ยท not taken
AuthorizationRBACSecurity
Upgrade
๐Ÿ—„
CachingFREE~44 min

Caching improves application performance by storing frequently accessed data temporarily

24 Q ยท not taken
CachingPerformanceOptimizationDataStorage
Start โ†’
๐Ÿ“š
Canvas and WebGL RenderingPRO~23 min

Explore canvas rendering techniques for efficient graphics and animations

24 Q ยท not taken
CanvasRenderingViewportCullingAnimationLoop
Upgrade
๐Ÿ“š
Back-of-Envelope EstimationFREE~33 min

Quick estimations for system design feasibility before coding

32 Q ยท not taken
CapacityPlanningEstimationFrameworkStorageMath
Start โ†’
๐Ÿ“š
CDN CachingFREE~28 min

Globally distributed networks caching content at edge nodes near users for speed and scale

30 Q ยท not taken
ContentDeliveryNetworksEdgeCachingCacheControl
Start โ†’
๐Ÿ“š
Circuit BreakersFREE~27 min

Prevent cascading failures by stopping requests to failing dependencies and fast-failing instead.

25 Q ยท not taken
CircuitBreakerResilienceFailureHandling
Start โ†’
๐Ÿ“š
Client-Side CachingFREE~31 min

Store data locally in the browser to eliminate redundant network requests and improve app performance

29 Q ยท not taken
ClientSideCachingReactQueryLRUCache
Start โ†’
โฌก
Consistent hashingPRO~49 min

Distributes keys across nodes with minimal reshuffling on topology changes

32 Q ยท not taken
ConsistentHashingDistributedSystemsLoadBalancing
Upgrade
๐Ÿ“š
Conflict-Free Replicated Data Types (CRDTs)PRO~32 min

Conflict-free data structures enabling real-time collaborative editing without central coordination.

32 Q ยท not taken
CRDTsCollaborativeEditingOperationalTransform
Upgrade
๐Ÿ“š
Cross-Tab SynchronisationPRO~29 min

Enable multiple browser tabs to synchronize state and communicate in real time

32 Q ยท not taken
CrossTabMessagingBrowserAPIsStateSync
Upgrade
๐Ÿ“š
Database Constraints as Data GuardsFREE~30 min

Database constraints enforce data integrity rules that survive application bugs and multiple entry points.

30 Q ยท not taken
DatabaseConstraintsDataIntegritySchemaDesign
Start โ†’
๐Ÿ“š
Database Indexes: Making Queries FastFREE~32 min

Database indexes accelerate query lookups using B-Tree structures, balancing read speed against write cost

30 Q ยท not taken
BTreeIndexesQueryOptimizationCompositeIndexes
Start โ†’
๐Ÿ“š
Database Relationships and Foreign KeysFREE~27 min

Master database relationships, foreign keys, and referential integrity for normalized schemas

30 Q ยท not taken
DatabaseRelationshipsForeignKeysNormalization
Start โ†’
๐Ÿ’พ
Databases & storagePRO~38 min

Core database concepts covering relational and non-relational storage, indexing, transactions, and distributed patterns.

40 Q ยท not taken
RelationalDatabasesNoSQLDatabasesDatabaseIndexing
Upgrade
๐Ÿ“š
Dead-Letter QueuesPRO~28 min

Safety nets for failed messages in distributed systems using queues

30 Q ยท not taken
DeadLetterQueuesMessageQueuesErrorHandling
Upgrade
๐Ÿ“š
At-Least-Once vs Exactly-Once DeliveryPRO~27 min

Master message delivery guarantees and build idempotent consumers for reliable distributed systems

28 Q ยท not taken
MessageQueuesIdempotencyDeliveryGuarantees
Upgrade
๐Ÿ“š
Delta SyncPRO~27 min

Synchronize distributed systems by transmitting only data changes, not full state

24 Q ยท not taken
DeltaSyncDistributedSystemsDataSynchronization
Upgrade
๐Ÿ“š
Distributed Payment ArchitecturePRO~28 min

Build fast, reliable payment systems handling money flow across distributed services safely

34 Q ยท not taken
DistributedPaymentsAtomicTransactionsIdempotency
Upgrade
๐Ÿ“š
Drag-and-Drop ArchitecturePRO~27 min

Master drag-and-drop interaction design from raw browser APIs to production libraries.

38 Q ยท not taken
DragAndDropHTML5APIReactLibraries
Upgrade
๐Ÿ“š
End-to-End Encryption in the BrowserPRO~30 min

Build secure end-to-end encrypted notes using Web Crypto API in the browser

45 Q ยท not taken
WebCryptoE2EEncryptionKeyDerivation
Upgrade
๐Ÿ“š
Edge Computing and CDN ArchitecturePRO~28 min

Distribute computation and caching globally to reduce latency and improve user experience

38 Q ยท not taken
EdgeComputingCDNArchitectureEdgeFunctions
Upgrade
๐Ÿ“š
Microcontroller and Embedded ConstraintsPRO~29 min

Design patterns, constraints, and safety mechanisms for embedded microcontroller systems

42 Q ยท not taken
EmbeddedSystemsMicrocontrollersRealTimeOperatingSystems
Upgrade
๐Ÿ“š
Event-Driven ArchitectureFREE~27 min

Software design pattern enabling system components to communicate asynchronously through events

30 Q ยท not taken
EventDrivenAsynchronousMessageBrokers
Start โ†’
๐Ÿ“š
Exponential Backoff and RetryFREE~29 min

Retry failed requests with exponentially increasing delays and randomization to improve resilience.

30 Q ยท not taken
RetryPatternsExponentialBackoffJitter
Start โ†’
๐Ÿ“š
Failure Modes in Distributed SystemsFREE~29 min

Learn failure modes in distributed systems and resilience patterns

30 Q ยท not taken
DistributedSystemsNetworkPartitionsProcessCrashes
Start โ†’
๐Ÿ“š
File API and File System Access APIPRO~29 min

Read, write, and manage files in the browser using File API and File System Access API

35 Q ยท not taken
FileAPIFileSystemAccessAPIBlobHandling
Upgrade
๐Ÿ“š
File Security and DeduplicationPRO~29 min

Store files efficiently by content hash while maintaining security, privacy, and safe deletion.

25 Q ยท not taken
ContentAddressableStorageDeduplicationStrategyCryptographicHashing
Upgrade
๐Ÿ“š
Frontend Architecture PatternsFREE~28 min

Organizing frontend code through proven patterns for maintainability, scalability, and team collaboration

54 Q ยท not taken
ComponentArchitectureStateManagementDesignPatterns
Start โ†’
๐Ÿ“š
Geolocation and Permissions APIPRO~29 min

Master browser Geolocation and Permissions APIs to build location-aware web apps responsibly

35 Q ยท not taken
GeolocationAPIPermissionsAPIRealTimeLocation
Upgrade
๐Ÿ“š
Geospatial QueriesPRO~45 min

Query locations using latitude, longitude, and distance calculations on Earth's surface

35 Q ยท not taken
GeospatialQueriesSpatialIndexingProximitySearch
Upgrade
๐Ÿ“š
Graceful Degradation and FallbacksFREE~30 min

Design systems to work partially when components fail instead of crashing completely

23 Q ยท not taken
GracefulDegradationFallbackPatternsCacheStrategy
Start โ†’
๐Ÿ“š
Grid Layout and Widget SystemsPRO~34 min

Build interactive draggable dashboards using flexbox, grid, and react-grid-layout

52 Q ยท not taken
FlexboxLayoutCSSGridWidgetSystems
Upgrade
๐Ÿ“š
IdempotencyFREE~28 min

Make non-idempotent operations safe to retry using unique keys and server-side deduplication

33 Q ยท not taken
IdempotencyDistributedSystemsPaymentSystems
Start โ†’
๐Ÿ“š
IndexedDB for Browser-Side StoragePRO~29 min

Low-level browser API for storing large structured data with transactions and indexes

35 Q ยท not taken
IndexedDBClientSideCachingOfflineFirst
Upgrade
๐Ÿ“š
Infinite Scroll and PaginationFREE~29 min

Load large datasets incrementally using pagination and infinite scroll patterns

35 Q ยท not taken
PaginationInfiniteScrollCursorBased
Start โ†’
๐Ÿ“š
Intersection Observer APIPRO~28 min

Browser API for detecting element visibility changes without polling or layout thrashing

35 Q ยท not taken
IntersectionObserverPerformanceOptimizationLazyLoading
Upgrade
๐Ÿ“š
IP-Based LocalisationPRO~30 min

Determining user location and locale from IP addresses to serve localized content.

34 Q ยท not taken
GeolocationApiGeoIPDatabasesCDNEdgeComputing
Upgrade
๐Ÿ“š
Kafka Deep DivePRO~27 min

Distributed event streaming platform for high-throughput, fault-tolerant real-time data pipelines

32 Q ยท not taken
EventStreamingDistributedSystemsMessageQueues
Upgrade
๐Ÿ“š
Last-Write-Wins Conflict ResolutionPRO~29 min

Resolves simultaneous writes by keeping the one with the highest timestamp

34 Q ยท not taken
ConflictResolutionDistributedSystemsTimestampOrdering
Upgrade
๐Ÿ“š
Lazy Loading Images and MediaFREE~29 min

Load images only when needed to improve page performance and user experience

40 Q ยท not taken
LazyLoadingIntersectionObserverImageOptimization
Start โ†’
๐Ÿ“š
Virtualisation and Large ListsFREE~26 min

Render only visible items to handle thousands of DOM nodes efficiently

30 Q ยท not taken
VirtualisationWindowingDOMPerformanceLargeListsGrids
Start โ†’
โš–
Load balancingFREE~28 min

Distributes incoming traffic across multiple servers to prevent overload and ensure availability

33 Q ยท not taken
LoadBalancingHighAvailabilityDistributedSystems
Start โ†’
๐Ÿ“š
Message Queue FundamentalsPRO~30 min

Message queues decouple services, enable asynchronous processing, and improve system resilience.

30 Q ยท not taken
MessageQueuesEventDrivenArchitectureDecoupling
Upgrade
๐Ÿ“š
Object Storage (S3-Compatible)PRO~27 min

Store and retrieve files at scale using S3-compatible object storage systems

37 Q ยท not taken
ObjectStorageS3BlobStorage
Upgrade
๐Ÿ“š
Logging and ObservabilityPRO~28 min

Understand system observability through logs, metrics, traces, and retention strategies

40 Q ยท not taken
ObservabilityStructuredLoggingDistributedTracing
Upgrade
๐Ÿ“š
Offline-First ArchitecturePRO~31 min

Design applications that function offline by prioritizing local storage and syncing when reconnected

30 Q ยท not taken
OfflineFirstIndexedDBServiceWorkers
Upgrade
๐Ÿ“š
Offline-Capable Hardware SystemsPRO~25 min

Physical devices that function offline, sync transactions safely, and maintain security when reconnected

25 Q ยท not taken
OfflineFirstIdempotencyEdgeComputing
Upgrade
๐Ÿ“š
Operational Transform (OT)PRO~32 min

Technology enabling concurrent multi-user document edits through operation transformation and convergence

24 Q ยท not taken
OperationalTransformCollaborativeEditingConcurrencyControl
Upgrade
๐Ÿ“š
Password SecurityPRO~29 min

Comprehensive guide to secure password handling, hashing, breach detection, and system design

33 Q ยท not taken
PasswordHashingCryptographyBreachDetection
Upgrade
๐Ÿ“š
Payment Integration FundamentalsPRO~28 min

Learn secure payment processing, PCI compliance, webhooks, and subscription data modeling with Stripe.

35 Q ยท not taken
PaymentProcessingStripeIntegrationPciCompliance
Upgrade
๐Ÿ“š
Presence and AwarenessPRO~30 min

Real-time presence and awareness systems showing who is active and their live state

35 Q ยท not taken
RealtimePresenceWebSocketArchitectureEphemeralState
Upgrade
๐Ÿ“š
Provider Adapter PatternPRO~27 min

Design pattern enabling applications to communicate with multiple third-party services through a single, consistent interface

35 Q ยท not taken
ProviderAdapterPatternDesignPatternsAbstraction
Upgrade
๐Ÿ“š
Queue-per-Channel PatternPRO~45 min

Use separate message queues per channel to avoid noisy neighbor problems and enable independent scaling.

51 Q ยท not taken
MessageQueuesQueuePatternsAsyncProcessing
Upgrade
๐Ÿ“š
Rate Limiting AlgorithmsPRO~27 min

Algorithms to fairly distribute API capacity and prevent system abuse

34 Q ยท not taken
RateLimitingTokenBucketSlidingWindow
Upgrade
๐Ÿ“š
Rate Limiting in PracticePRO~27 min

Control how often actions occur to protect systems from abuse and overload

26 Q ยท not taken
RateLimitingTokenBucketLeakyBucket
Upgrade
๐Ÿ“š
Server State with React QueryFREE~29 min

Manage server state efficiently using React Query with caching, revalidation, and mutations

36 Q ยท not taken
ReactQueryServerStateDataFetching
Start โ†’
๐Ÿ“š
Read Replicas and Write ScalingFREE~28 min

Scale database reads using replicas while routing all writes through a primary.

35 Q ยท not taken
DatabaseScalingReadReplicasReplicationLag
Start โ†’
๐Ÿ“š
Real-Time Location TrackingPRO~30 min

Techniques for smooth, real-time driver tracking on maps with GPS filtering and animation

90 Q ยท not taken
GPSRealTimeTrackingMapAnimation
Upgrade
๐Ÿ“š
Real-Time State ManagementPRO~29 min

Keep application data synchronized with live server changes using efficient patterns

18 Q ยท not taken
StateManagementRealtimeSyncDeltaUpdates
Upgrade
๐Ÿ“š
Redis Deep DiveFREE~27 min

In-memory data structure store enabling fast caching, rate limiting, and real-time operations

45 Q ยท not taken
InMemoryDatabaseDataStructuresCaching
Start โ†’
๐Ÿ“š
REST API Design PrinciplesFREE~28 min

Master HTTP-based API design using REST principles, resource naming, status codes, and pagination.

38 Q ยท not taken
RestArchitectureHttpProtocolResourceNaming
Start โ†’
๐Ÿ“š
Scheduled Jobs and CronPRO~28 min

Time-based job scheduling using cron with idempotency and distributed coordination

50 Q ยท not taken
CronSchedulingIdempotencyDistributedLocking
Upgrade
๐Ÿ“š
Schema Design FundamentalsFREE~29 min

Design database schemas using tables, columns, data types, and constraints effectively

35 Q ยท not taken
DatabaseSchemaRelationalDatabasesDataTypes
Start โ†’
๐Ÿ“š
Server-Sent Events (SSE)PRO~28 min

Server-pushed real-time data delivery using HTTP without polling or bidirectional protocols

40 Q ยท not taken
ServerSentEventsRealTimePushHTTPStreaming
Upgrade
๐Ÿ“š
Service WorkersPRO~27 min

Programmable network proxy enabling offline support, caching, and background sync for web apps

40 Q ยท not taken
ServiceWorkersOfflineFirstCachingStrategies
Upgrade
๐Ÿ“š
SQS and Managed QueuesPRO~27 min

Master Amazon SQS for decoupled, scalable message processing architectures

31 Q ยท not taken
MessageQueuesEventDrivenAsyncProcessing
Upgrade
๐Ÿ“š
State Machines on the FrontendPRO~28 min

Disciplined approach to modeling UI state using finite state machines

43 Q ยท not taken
StateMachinesStateManagementFSM
Upgrade
๐Ÿ“š
Stateless Service DesignFREE~31 min

Design services without storing state between requests for infinite horizontal scaling

33 Q ยท not taken
StatelessServicesHorizontalScalingSessionManagement
Start โ†’
๐Ÿ“š
Synchronous vs Asynchronous CommunicationFREE~29 min

Master when to block for responses versus fire-and-forget in distributed systems.

100 Q ยท not taken
SynchronousCommunicationAsynchronousCommunicationMessageQueues
Start โ†’
๐Ÿ“š
Third-Party API ResiliencePRO~30 min

Patterns and techniques to keep applications working when external APIs fail or degrade

30 Q ยท not taken
ApiResilienceCircuitBreakerCaching
Upgrade
๐Ÿ“š
Three-Way MergePRO~29 min

Algorithm combining two document versions using a common ancestor to automatically resolve non-overlapping changes

33 Q ยท not taken
ThreeWayMergeVersionControlConflictDetection
Upgrade
๐Ÿ“š
Time-Series and Columnar DatabasesPRO~25 min

Learn how columnar databases and time-series partitioning enable fast analytics on billions of rows

35 Q ยท not taken
ColumnarDatabasesOLAPTimeSeriesData
Upgrade
๐Ÿ“š
Vertical vs Horizontal ScalingFREE~26 min

Choose between upgrading single machines or adding multiple machines to handle growth.

30 Q ยท not taken
VerticalScalingHorizontalScalingLoadBalancing
Start โ†’
๐Ÿ“š
Video Processing PipelinesPRO~32 min

Backbone systems that convert raw video uploads into multi-resolution streams delivered globally.

40 Q ยท not taken
VideoTranscodingAsynchronousProcessingContentDeliveryNetworks
Upgrade
๐Ÿ“š
Web Audio APIPRO~30 min

Browser-based audio creation, processing, and control via JavaScript without plugins.

45 Q ยท not taken
WebAudioAPIAudioGraphBiquadFilter
Upgrade
๐Ÿ“š
Web Crypto APIPRO~31 min

Browser-native cryptographic operations for encryption, decryption, and key management without external libraries

102 Q ยท not taken
WebCryptoAPISymmetricEncryptionAsymmetricEncryption
Upgrade
๐Ÿ“š
Web Workers for Heavy ComputationPRO~30 min

Move heavy computation off the main thread using Web Workers to keep UI responsive.

34 Q ยท not taken
WebWorkersThreadingComlink
Upgrade
๐Ÿ“š
Webhooks: Receiving External EventsPRO~27 min

HTTP push notifications from external services to your server for event-driven workflows

30 Q ยท not taken
WebhookPatternsEventDrivenArchitectureSignatureValidation
Upgrade
๐Ÿ“š
WebRTCPRO~28 min

Peer-to-peer audio, video, and data communication directly between browsers without plugins

36 Q ยท not taken
WebRTCPeerToPeerRealTimeCommunication
Upgrade
๐Ÿ“š
WebSocket ArchitecturePRO~28 min

Master WebSocket architecture for real-time two-way communication at scale

35 Q ยท not taken
WebSocketsRealTimeCommunicationPubSubPatterns
Upgrade
๐Ÿ“š
WebSockets vs SSE vs PollingFREE~28 min

Compare polling, SSE, and WebSockets for real-time web communication

21 Q ยท not taken
RealTimeCommunicationWebSocketsServerSentEvents
Start โ†’
๐Ÿ“š
When to Use NoSQLPRO~30 min

Master NoSQL database selection, document stores, key-value stores, and data modeling patterns.

30 Q ยท not taken
NoSQLDocumentStoresKeyValueStores
Upgrade
๐Ÿ“š
Worker Pool PatternPRO~29 min

Fixed number of long-running processes continuously dequeuing and processing tasks from a shared queue

30 Q ยท not taken
WorkerPoolMessageQueuesConcurrency
Upgrade
๐Ÿ“š
Yjs in PracticePRO~29 min

Build real-time collaborative apps with Yjs: syncing, offline support, persistence, and presence awareness.

35 Q ยท not taken
CRDTsWebSocketProviderOfflineFirst
Upgrade
๐Ÿ“š
State Management with ZustandFREE~28 min

Lightweight React state management library with minimal boilerplate and selective re-renders

25 Q ยท not taken
StateManagementZustandReact
Start โ†’
Ready for SD challenges?

Apply your concept knowledge to full system design problems with diagrams and tradeoffs.

SD challenges โ†’