Engineering task library · Version 5 Work that feels like work. Design a system. Diagnose tail latency. Ship a migration. Recover a failed rollout. Pick a focused ticket or follow a project through its delivery phases.
1380 tickets · 138 projects · 26 engineering fields · Four difficulty levels
Practice briefs Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included. Completing a ticket does not issue a credential.
AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.
Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.
Pattern topics identify design choices to practice. Read the ticket's acceptance criteria and justify the simplest suitable approach. Tags are not capability or ownership evidence; an untagged ticket has no curated pattern topic assigned.
Field counts and the engineering field filter use each project's primary field. Estimated ticket labels can span multiple fields.
Backend 60 Data engineering 50 Platform engineering 50 Security 50 Frontend 60 Mobile 50 Developer tooling 50 Quality engineering 50 Applied AI 50 Integrations 60 Real-time systems 50 Accessibility 50 System design 60 Performance engineering 50 Database engineering 50 Distributed systems 60 Site reliability 50 Cloud infrastructure 50 Networking 50 API design 50 Storage systems 50 Compiler and language tooling 60 Embedded and edge 50 Privacy engineering 50 Systems programming 60 DevOps 60 ACACHE-105 Bug Expert
A read for revision 7 starts before an edit, then finishes after revision 8 has already been cached and overwrites it.
Estimated field mix
Distributed systems 80% Database engineering 20% Keep shared product caches consistent across writersACACHE-106 Task Advanced
An old invalidation arrives after a fresh fill and deletes valid data, triggering avoidable refresh work across instances.
Keep shared product caches consistent across writersACACHE-107 Story Intermediate
A popular product expires and every API instance refreshes it simultaneously, increasing pressure on the source database.
Estimated field mix
Distributed systems 60% Performance engineering 40% Keep shared product caches consistent across writersACACHE-108 Task Advanced
A Redis outage makes every request retry repeatedly, overwhelming the authoritative database while users wait.
Estimated field mix
Distributed systems 40% Site reliability 30% Performance engineering 30% Keep shared product caches consistent across writersACACHE-109 Chore Expert
A new release changes product projection shape while old and new API instances share cached envelopes.
Estimated field mix
Distributed systems 70% Platform engineering 30% Keep shared product caches consistent across writersACACHE-110 Task Foundational
The dashboard shows a high hit rate as proof the product data is correct, though hit count says nothing about revision freshness.
Estimated field mix
Distributed systems 50% Site reliability 50% Keep shared product caches consistent across writersBMONO-101 Task Foundational
A root compiler change passed CI although an unchanged package no longer compiled. Inventory inputs the planner must treat as shared.
Monorepo change plannerBMONO-102 Task Intermediate
The planner must inspect an unfamiliar checkout without triggering install hooks or repository commands.
Estimated field mix
Developer tooling 70% Security 30% Monorepo change plannerBMONO-103 Bug Advanced
Two shared packages depend on each other through development tooling, and recursive traversal never finishes.
Monorepo change plannerBMONO-104 Bug Advanced
A package deletion disappears from the current workspace map and incorrectly produces an empty plan.
Monorepo change plannerBMONO-105 Story Intermediate
Maintainers cannot review a large affected set because the tool prints only package names.
Monorepo change plannerBMONO-106 Bug Advanced
Generated client code changed after a tool upgrade while the cache reused an old successful result.
Estimated field mix
Developer tooling 70% Storage systems 30% Monorepo change plannerPPOLICY / Backend Evolve a quoting module as partner contracts diverge, while keeping calculations reproducible and abstractions proportional to the problem.
PDOC / Frontend Build a bounded browser editor whose tree operations, history, subscriptions, and exports remain coherent under failures and repeated use.
PPROVIDER / Integrations Support two incompatible notification providers while keeping domain decisions, instrumentation, and overload behavior explicit.
PDSL / Compiler and language tooling Replace a growing set of warehouse eligibility switches with a small, bounded rule language that support can inspect and engineers can evolve.
PMIGRATE / System design Evolve a long-lived account module while preserving tenant boundaries, client contracts, and a credible route back from partial migration.
PRECOVER / Distributed systems Coordinate return inspection, replacement stock, and refunds across controllable provider boundaries while keeping uncertain outcomes visible.
SMEM / Systems programming Build a bounded arena with explicit alignment, lifetime and corruption behavior.
SCONCUR / Systems programming Implement bounded scheduling, cancellation and shutdown without hidden liveness failures.
SIPC / Systems programming Build framed IPC, bounded buffering, process lifecycle control and restart-safe request identity.
SRUNTIME / Systems programming Implement decoding, stack safety, resource budgets and compatible bytecode revisions.
SFFI / Systems programming Design a safe FFI contract with explicit ownership, error mapping and compatibility.
SKERNEL / Systems programming Wrap files, timers and readiness notifications with explicit partial-result and portability behavior.
Take the brief into your own workflow. For engineers Practice scoped changes, keep a portable implementation and verification record, and learn to explain operational tradeoffs. Choose a ticket whose prerequisites you can provide.
For companies Use realistic work to structure onboarding, internal practice, and conversations about engineering decisions. Each project names the delivery benefit. Agree scope and compensation before requesting company-specific work.
CSV contains one row per ticket. Map fields and issue types in your tracker; project grouping and dependency keys are descriptive. JSON preserves the complete project structure. These downloads do not synchronize with Jira.