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 plannerBILL / Backend Reconcile payment settlements against invoice records without hiding money movement or retry failures.
STOCK / Backend Build reservation and allocation behavior for a small retailer with two warehouses and unreliable checkout retries.
PIPE / Data engineering Ingest delayed, duplicated, and corrected parcel events into an explainable tracking timeline.
LAKE / Data engineering Replace a fragile daily sales query with versioned, reconcilable warehouse metrics.
ROLL / Platform engineering Build a release workflow that can distinguish a healthy process from a safe application version.
QUEUE / Platform engineering Operate an asynchronous document pipeline through retries, poison jobs, worker loss, and tenant bursts.
ACCESS / Security Make partner access explicit across list APIs, batch commands, invitations, cached sessions, and exports.
VAULT / Security Introduce explicit credential versions, safe rotation, redacted diagnostics, and recovery for a webhook integration.
DESK / Frontend Repair queue navigation, reply composition, and agent handoffs in a customer support workspace.
FORM / Frontend Make purchase requests accurate, recoverable, and reviewable across revisions.
FIELD / Mobile Keep assigned maintenance work usable without reception and reconcile changes safely when connectivity returns.
TRIP / Mobile Make saved journeys, departures, and service alerts useful when feeds or device permissions change.
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.