Challenge Library
Coding Challenges
5,893 curated questions across every arena — browse by topic, then jump into a live 2-minute battle to put them to the test.
Filter by type
Filter by difficulty
Popular topics
5,893 challenges total
- Multiple ChoiceBeginner
Consumer-Driven Contracts
contract-testingpactcdc - Multiple ChoiceIntermediate
Expand-Contract Migration Pattern
expand-contractdatabasemigration - Multiple ChoiceBeginner
Feature Flag Debt
feature-flagstechnical-debtcleanup - Multiple ChoiceBeginner
Trunk-Based Development
trunk-basedgitflowci - Multiple ChoiceIntermediate
ADR Lifecycle
adrdecision-recordsgovernance - Multiple ChoiceBeginner
ATAM Quality Attribute Scenario
atamquality-attributesscenarios - Multiple ChoiceBeginner
Vertical Slice Architecture
vertical-slicemodularitystructure - Multiple ChoiceIntermediate
Modular Monolith Boundaries
modular-monolithboundariesencapsulation - Multiple ChoiceBeginner
Published Language
published-languagedddintegration - Multiple ChoiceBeginner
Backend for Frontend (BFF)
bffapi-gatewayfrontend - Multiple ChoiceIntermediate
API Gateway vs Service Mesh
api-gatewayservice-meshtraffic - Multiple ChoiceIntermediate
Sidecar vs Library
sidecarservice-meshcross-cutting - Multiple ChoiceHard
Service Mesh mTLS
mtlsservice-meshsecurity - Multiple ChoiceBeginner
Golden Paths
platform-engineeringgolden-pathdx - Multiple ChoiceIntermediate
Team Topologies: Cognitive Load
team-topologiescognitive-loadorg-design - Multiple ChoiceIntermediate
Event Sourcing Snapshotting
event-sourcingsnapshottingperformance - Multiple ChoiceBeginner
Optimistic UI
optimistic-uieventual-consistencyux - Multiple ChoiceBeginner
Offline-first sync: conflict-free field types
offline-firstcrdtconflict-resolution - Multiple ChoiceBeginner
Conflict resolution UX for field edits
conflict-resolutionuxoffline-first - Multiple ChoiceHard
CRDT vs OT for collaborative editing
crdtcollaborative-editingot - Multiple ChoiceHard
Local-first software trade-offs
local-firsttrade-offsconsistency - Multiple ChoiceIntermediate
Sync engine design: checkpointing
sync-enginecheckpointingdeltas - Multiple ChoiceIntermediate
Sync vs async architecture
sync-asyncevent-drivenbusiness-flow - Multiple ChoiceBeginner
Transaction outbox in modular monolith
outboxmodular-monolithreliability - Multiple ChoiceBeginner
Module boundary enforcement via build
module-boundariesbuild-enforcementci - Multiple ChoiceBeginner
Dependency inversion at package level
dipports-and-adapterspackages - Multiple ChoiceBeginner
Abstraction leakage
abstraction-leakagerepositoryorm - Multiple ChoiceBeginner
Premature abstraction cost
premature-abstractionyagnicomplexity - Multiple ChoiceIntermediate
Wrong abstraction (Sandi Metz)
wrong-abstractionsandi-metzrefactoring - Multiple ChoiceHard
Duplication vs wrong abstraction
duplicationdryrule-of-three - Multiple ChoiceBeginner
Rule of three
rule-of-threerefactoringdry - Multiple ChoiceBeginner
Composition over inheritance pitfalls
compositioninheritancecoupling - Multiple ChoiceHard
Deep inheritance hierarchies
inheritancecompositionrefactoring - Multiple ChoiceHard
LSP violations in practice
lspsolidcollections - Multiple ChoiceBeginner
ISP and fat interfaces
ispsolidinterfaces - Multiple ChoiceHard
DIP at boundaries
diphexagonalports - Multiple ChoiceBeginner
Hexagonal adapters for third-party SDKs
hexagonaladapterthird-party - Multiple ChoiceIntermediate
Anti-corruption layer at integration
anti-corruption-layerintegrationddd - Multiple ChoiceBeginner
Adapter vs facade
adapterfacadepatterns - Multiple ChoiceBeginner
Strategy vs state vs policy
strategystatepatterns - Multiple ChoiceBeginner
Template method vs strategy
template-methodstrategypatterns - Multiple ChoiceBeginner
What an ADR Records
adrdocumentationdecision-records - Multiple ChoiceBeginner
Cost of Change Meaning
cost-of-changeeconomicsarchitecture - Multiple ChoiceBeginner
Technical Debt Definition
technical-debtarchitecturetradeoffs - Multiple ChoiceBeginner
The Technical Debt Quadrant
debt-quadranttechnical-debtfowler - Multiple ChoiceBeginner
Deliberate vs Accidental Debt
technical-debtdeliberate-debtdebt-quadrant - Multiple ChoiceBeginner
Reversibility of Decisions
reversibilitydecisionstradeoffs - Multiple ChoiceBeginner
Just-In-Time Architecture
just-in-timelean-architecturedecisions - Multiple ChoiceBeginner
YAGNI at Architecture Level
yagnisimplicityarchitecture - Multiple ChoiceIntermediate
Incremental vs Big Design Upfront
incrementalbdufevolutionary-architecture - Multiple ChoiceIntermediate
Architect Role vs Hands-On
architect-rolehands-onenablement - Multiple ChoiceIntermediate
Architecture Enablement
enablementarchitect-roleempowerment - Multiple ChoiceBeginner
C4 Model Diagram Levels
c4-modeldiagramsdocumentation - Multiple ChoiceIntermediate
Diagrams-as-Code Benefit
diagrams-as-codestructurizrdocumentation - Multiple ChoiceIntermediate
Quality Attributes in Diagrams
quality-attributesdiagramsviews - Multiple ChoiceIntermediate
STRIDE Threat Modeling
stridethreat-modelingsecurity - Multiple ChoiceHard
Cell-Based Architecture Rationale
cell-basedblast-radiusresilience - Multiple ChoiceIntermediate
Shuffle Sharding Benefit
shuffle-shardingblast-radiustenancy - Multiple ChoiceBeginner
Canary vs Blue-Green Deployment
progressive-deliverycanaryblue-green - Multiple ChoiceBeginner
Parallel Change for APIs
parallel-changeexpand-contractapi-evolution
Practice now, dominate the arena
Every challenge here is drawn from the live Code Royale pool. Review a question, then head to the arena to answer under pressure against a real opponent — 2-minute matches, Elo ranking, and badge tiers on the line.