#System Design

4 posts · All tags

  1. The Reconciliation Alert Fired Twice: Missed and Double-Counted Interest When Bitfinex Positions Switch Sides

    I check user earnings with a ratio of interest actually paid to booked accrual; it fired twice, once undercounting and once double-counting, both because Bitfinex splits one position across credits and loans.

    Engineering ·
    2026.10.06

  2. Designing a SaaS Admin Console: Kill Switches, Broadcasts, and Telegram Notification Channels

    Once my lending platform had users and billing, I built an admin console and multi-channel notifications; this covers permissions, kill switches, broadcast transaction boundaries, Telegram binding, and recipient rules for targeted broadcasts.

    Engineering ·
    2026.10.01

  3. SaaS Billing After Performance Fees: Plan Limits, Promotions, and Suspension in a Flat Subscription

    My auto-lending SaaS moved from performance fees to subscriptions. Plan limits shipped before billing, promo bonuses freeze onto the invoice, the 30-day notice only gates passive charges, and suspension never touches users' lending toggles.

    Engineering ·
    2026.09.30

  4. From a FastAPI Script to a Spring Boot SaaS: Rebuilding My Bitfinex Auto-Lending Platform

    A Bitfinex auto-lending side project rewritten from a good-enough FastAPI script into a multi-module Spring Boot and Next.js platform with idempotency, reconciliation, circuit breaking, and full monitoring.

    Engineering ·
    2026.05.20