All BlueprintsFintech

Contribution circle

A savings circle run properly: a fixed group pays in a fixed amount every round, one member takes the pot, and the order, the arrears and the settlements are all on a book any member can check. No payment provider stands between the members and their money.

L2–L4Level range
8Sprints
36Tasks
Backend and frontendBuilt as

What you’ll build.

By the last sprint

A savings circle, the kind people actually run. Members settle the order the pot goes round in before it takes a penny. You record what everybody pays in, close a round, pay out to whoever's turn it is, chase whoever is behind, and settle up with somebody who has to leave. Rounds close themselves on the day they are due.

What you’ll learn.

Each sprint is built around one skill. You show you have it in a pull request your team reviews, then explain it in a walkthrough.

Authentication

You can register and sign in a user, keep a request authenticated without asking for the password again, and explain where the credential lives in the browser and why there rather than somewhere else.

Roles and permissions

You can give users different roles and have the server refuse what a role may not do — not merely hide the button — and show the refusal working against a request the interface never offered.

A ledger you can trust

You can record credits and debits and produce a balance that is the sum of them — and explain why the balance is not a column you update, and what happens when two movements land at once.

Paying money out

You can request a payout, hold the funds while it settles, and reflect success or failure on the balance — and show that pressing the button twice pays once.

Charging the same card monthly

You can start a subscription, produce the next charge on time exactly once, and show what happens between a failed renewal and a cancelled subscription.

Statements that reconcile

You can generate a statement for a date range that adds up, downloads, and returns the same figures when it is generated again next month.

Background jobs

You can hand work to a worker, tell the user it is in progress, and show the result when it lands — and say what happens to that work if the process dies halfway.

Going live

Somebody who has never met you can open a URL and use the product — and you can say what is different about the copy running there, where its secrets come from, and what you do when a release turns out to be wrong.

The roadmap. 8 sprints, 36 tasks.

Every sprint has a goal and a set of tasks. Open a sprint to see the tasks you will pick up.

Sprint 01

Getting in

Somebody can make an account the circle will recognise them by, and come back to it.

5 tasks
  1. Somebody can register and land signed in
  2. Signing back in survives a reload and a week away
  3. A member can sign out on a borrowed phone
  4. A member is shown by the name their group uses
  5. Sign-in does not reward somebody trying passwords in bulk
Sprint 02

Whose turn it is

A circle exists with a fixed group and an agreed order, settled and frozen before it takes a penny.

6 tasks
  1. Somebody can start a circle and state what it costs to be in it
  2. The people who were invited join, and the group closes
  3. The circle agrees an order, and everybody can see it
  4. Starting the circle freezes the terms and the order
  5. Two members can swap turns, and only with each other's agreement
  6. Organising one circle grants nothing in another
Sprint 03

The book

Every amount that moves is a line in a book any member can add up, and a wrong entry is corrected rather than erased.

4 tasks
  1. Amounts are held exactly and add up by hand
  2. Recording what a member paid puts a line in the book
  3. A wrong entry is corrected, never erased
  4. A member can see where they stand without asking anybody
Sprint 04

Closing the round

A round closes exactly once, the pot goes to whoever's turn it is, and both sides of the handover are on the record.

5 tasks
  1. A round has a date it is due and a date it closes
  2. Closing a round pays the pot to whoever's turn it is
  3. A round pays once, however many times somebody presses
  4. The member who was paid confirms they got it
  5. The circle finishes when everybody has taken the pot once
Sprint 05

When the pot is short

A round where somebody has not paid still closes honestly, and the people who are behind are chased before it closes rather than blamed after.

5 tasks
  1. Everybody can see who has paid this round and who has not
  2. Chasing everybody who is behind, in one action
  3. A short round still closes, and pays out what it collected
  4. What a member missed follows them into the next round
  5. A member who owes the circle takes their turn net of what they owe
Sprint 06

Leaving the circle

A member who has to go is settled with, on a record the rest of the circle can check and that does not rewrite the past.

5 tasks
  1. A member who has not taken the pot can leave and be settled with
  2. A member who has already taken the pot cannot simply leave
  3. Somebody can take over a vacant position
  4. Settling somebody out does not change a round that has closed
  5. Every member can take away a statement of the whole circle
Sprint 07

Rounds that turn themselves

Rounds close and members are chased on the dates the circle agreed, with nobody pressing anything, and never twice.

5 tasks
  1. A round closes on its date with nobody pressing anything
  2. Work that runs twice closes the round once
  3. Members are reminded before the deadline, without anybody sending it
  4. A round that fails to close tells somebody
  5. A round due while nothing was running still closes for the day it was due
Sprint 08

Where people can reach it

The circle is on the internet at its own address, the book survives the machine, and a bad release can be undone before a round closes wrongly.

1 task
  1. A stranger can reach it without the developer

Read before you build. The best engineers do.

Senior engineers read the docs before they touch the code. Every Blueprint comes with short documents on the product and its world, the kind a team hands a new hire. Read them well and you ask sharper questions and walk into every review prepared.

What you are building

The product, who it is for, and what finished means.

How a contribution circle actually works

Domain you will not have: the rotation, why the order is the whole negotiation, who the organiser is, and what happens when somebody defaults.

Build contribution circle.

Start your free week. Adaeze runs your kickoff, and Lars reviews every pull request.