Selected workPCPatricio CalderonLinkedIn
P-04 / AdTech outreach platformPrivate engagement

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
01

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.

02

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.

03

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.

04

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.

Engineering decisionsD-01
01

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.

02

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.

03

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.

Have a difficult product or system to build?

Message me on LinkedIn