Task library BBILL Integrations · Phased project Payment-provider reconciliation adapter A fictional software vendor changes payment providers. Its application must tolerate unknown outcomes, signed callbacks, refunds, and inconsistent settlement reports.
Practice brief · Version 5
Project scope 10 tickets / 3 phases
Total focused work estimate 29h + setup
Suggested stack TypeScript · PostgreSQL · HTTP Fictional engineering practice briefs. Starter repositories, fixtures, automated grading, and verified ownership are not included.
Choose a bounded subset for an assessment or practice session. Prerequisites and remaining project work must be agreed separately.
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.
Recommended next step Start with BBILL-101 Open the first ticket for its prerequisites, acceptance criteria, verification plan, and an editable task draft.
What the engineer takes away Practice idempotent integrations, state reconciliation, and provider migration.
What the team gains Provide a reviewable adapter design that protects order consistency and recovery.
Before you start Create a local payment-provider double and synthetic orders; use test-only signatures and execute no financial transactions. Delivery agreement Deliver local provider contracts and reconciliation rehearsals; no live money or provider accounts.
AI tools are welcome during implementation. Record assumptions, review the result, and verify its behavior.
Delivery phases PHASE 1 Model identities and state transitions.
PHASE 2 Process callbacks and unknown outcomes safely.
PHASE 3 Reconcile records and rehearse migration.
Define provider semantics Model identities and state transitions.
BBILL-101 Entry ticket; project setup still required Estimated field mix
Integrations 60% Backend 40% BBILL-102 Depends on BBILL-101 Estimated field mix
Backend 50% Integrations 30% Database engineering 20% Handle asynchronous results Process callbacks and unknown outcomes safely.
BBILL-103 Depends on BBILL-101 Estimated field mix
Security 70% Integrations 30% BBILL-104 Depends on BBILL-102, BBILL-103 Estimated field mix
Integrations 40% Distributed systems 40% Database engineering 20% BBILL-105 Depends on BBILL-102, BBILL-104 Estimated field mix
Integrations 50% Distributed systems 50% BBILL-106 Depends on BBILL-104 Estimated field mix
Database engineering 50% Backend 30% Integrations 20% Recover discrepancies Reconcile records and rehearse migration.
BBILL-107 Depends on BBILL-105, BBILL-106 Estimated field mix
Data engineering 60% Integrations 40% BBILL-108 Depends on BBILL-107 Estimated field mix
Integrations 60% Data engineering 40% BBILL-109 Depends on BBILL-105, BBILL-108 Estimated field mix
System design 50% Integrations 30% Distributed systems 20% BBILL-110 Depends on BBILL-109 Estimated field mix
Site reliability 40% Integrations 40% Security 20% Use this project CSV keeps grouping and dependency keys as descriptive fields. Import mapping depends on your tracker configuration.