Selected case study
Leads
A secure lead-intelligence platform that turns large publisher-domain datasets into qualified, review-ready outreach and CRM opportunities for ad networks.
- Next.js
- PostgreSQL
- Drizzle
- Redis
- BullMQ
- HubSpot
- 7
- Persisted workflow stages
- BullMQ
- Durable job processing
- 2-step
- CRM approval gate
Challenge
Coordinate slow and rate-limited enrichment providers, long-running background jobs, imperfect company and contact data, paid lookups, AI drafting, and human approval without losing workflow state or blocking the interface.
Responsibility
Product design and full-stack architecture across the review interface, durable workflow state, background processing, provider coordination, data normalization, security controls, AI-assisted drafting, and CRM integration.
Solution
Built a staged Next.js workflow with PostgreSQL and Drizzle as the source of truth, Redis and BullMQ for retryable background jobs, advisory locks for shared provider limits, and an approval-gated HubSpot adapter for previewing changes before any external write.
Outcome
A recoverable lead-operations system that reduces manual research while preserving control over data quality, paid enrichment usage, generated messaging, duplicate handling, and CRM synchronization.
Persist every workflow stage
Import, screening, ads.txt classification, company and contact discovery, paid lookup, AI drafting, approval, and CRM state are stored so interrupted work can resume instead of restarting.
Coordinate shared provider limits
Central request pacing, PostgreSQL advisory locks, shared usage tracking, bounded backoff, and validation before paid calls keep multiple application replicas within account-level quotas.
Preview before external writes
Users review companies, contacts, deals, duplicate conditions, and editable AI drafts, then confirm a second time before records or sequences are written to HubSpot.