Notes from building real products
Lessons from the systems I have shipped: what made them hard, what I would do again, and what I changed after real users arrived. Written for founders, business owners and fellow developers.
- 7 min read
Offline-first POS: a sale that cannot wait for the network
How I made Asaan Optics record sales with no internet: one write path, idempotency keys end to end, a dead-letter list, stock as deltas and a per-till ledger.
- Flutter
- SaaS
- Offline-first
- POS
- 8 min read
ERP is workflow engineering, not CRUD
The tables are the easy part of an ERP. What I learned from the unwritten rules for attendance, performance scores, invoicing and one-transaction POS billing.
- ERP
- Laravel
- Business software
- 8 min read
Flutter on Windows: installers, updates and receipt printers
Lessons from building Flutter Windows apps for shops: per-user Inno Setup installers, silent updates, local SQLite, backups and thermal receipt printing.
- Flutter
- Desktop apps
- Windows
- 8 min read
Tenant isolation in multi-tenant SaaS: three real systems
Tenant isolation patterns from three SaaS systems I worked on: tenant IDs from tokens, query filters, safe auth rollouts, RBAC grant ceilings and plan gating.
- SaaS
- Architecture
- Security
- 8 min read
Implementing ZATCA Phase 2 e-invoicing in a Flutter POS
How I built ZATCA Phase 2 (Fatoora) e-invoicing in Dart for a Flutter POS: UBL 2.1 XML, hash chaining, ECDSA signing, CSID onboarding and Saudi VAT receipts.
- ZATCA
- Saudi Arabia
- Flutter
- POS
Have a software idea or a business process that needs a proper system?
Tell me what you are trying to fix. I will reply with honest questions, a practical plan and a realistic estimate.