
Soul Global 2.0
A full architectural rewrite of Soul Global β from a React + REST monolith to Next.js 16 Server Components with durable workflows.
Version 1 proved the product but accumulated client-side complexity and a brittle order model. Version 2 is a ground-up rewrite on a server-component-first architecture, with Inngest workflows and a complete Brazilian import tax engine. The hard part was migrating live production data while v1 kept serving paying customers.
ROLE
Software Engineer
Full Stack
Architect
TOOLS
Bun
Next.js 16
React 19
PostgreSQL
Drizzle ORM
Inngest
Decimal.js
next-intl
DURATION
2025 - Present
INTEGRATIONS
Supabase Auth
Asaas
Inngest
Mailtrap
Anthropic Claude
π
soulglobal.com.br
βΆ Live data migration (11-step β 7-step)
Migrated the legacy schema to a simpler order model while preserving every historical order, contract, and payment. Ran in shadow mode against production for weeks, comparing v1 vs v2 row-by-row before a reversible cutover.
βΆ Client-fetching β React Server Components
Re-architected to Next.js 16 Server Components by default, dropping initial load weight and reworking auth and caching that were core to v1's client-side SWR model.
βΆ Durable workflows with Inngest
Replaced manual state machines and fragile cron jobs with Inngest workflows β order progression, payment reconciliation, and operator queues survive crashes, retries, and 3rd-party outages.
βΆ Brazilian import tax engine
Full CIF β II β IPI β PIS/COFINS β ICMS cascade with multi-currency handling, computed with Decimal.js so rounding never drifts.