Coupon swap scheduler interface

Coupon Swap Scheduler

Empowered the marketing team with self-service scheduling, reduced engineering intervention, and improved campaign flexibility.

React AWS Lambda EventBridge Node.js

The Challenge

Every week, marketing campaigns were stalled at the starting line: unable to kick off until a developer manually updated the coupon configurations.

Developer Bottleneck

Marketing teams waited for engineering to manually update coupon configurations

Time-Sensitive Process

2 hours/week of manual work and testing with zero room for error

Campaign Delays

Ad-hoc requests and urgent swaps disrupted development cycles

The Solution

I built an event-driven system that gave marketing teams full control while eliminating developer bottlenecks.

Self-Service Scheduling

Marketing teams can schedule coupon swaps independently

Event-Driven Architecture

AWS EventBridge and Lambda functions handle everything automatically

Zero Developer Intervention

Completely eliminates manual developer work and reduces errors

My Role

I led both frontend and backend development, collaborating closely with our DevOps team to bring this automation vision to life.

Technical Leadership

  • Co-architected event-driven system with AWS EventBridge & Lambda
  • Built React UI optimized for internal team workflows
  • Implemented robust scheduling logic and error handling

Cross-Team Collaboration

  • Coordinated IAM policies & deployment pipeline with DevOps
  • Optimized multi-repo coordination and Lambda packaging
  • Gathered requirements from marketing teams for UX design

The Architecture

A serverless architecture that orchestrates coupon swaps with precision timing and zero manual intervention.

BACKEND EVENTBRIDGE LAMBDA Backend Call (applyCouponSwapInEventBridge) Event Bus EB Rule: Scheduled EB Rule: Live EB Scheduler applyCouponSwapLambda Backend Endpoints

Tech Stack

  • AWS EventBridge – rule-based and time-based triggers
  • AWS Lambda – serverless execution for coupon logic
  • Node.js Backend – API integration layer
  • React Frontend – minimal scheduling interface
  • Statsig – dynamic banner text updates

Strategic Decisions

  • Minimal UI investment focused on backend automation for MVP speed
  • Shared Yarn cache to optimize Lambda deployment times
  • Careful IAM scoping to avoid permission bloat across functions

The Impact

From manual bottlenecks to seamless automation.

2 hrs
Weekly time saved
0
Ad-hoc requests
100%
Self-service adoption
5x
Faster campaign testing
"This saves us from bugging devs every week. Total game-changer!"
— Jenna, Marketing Director

Looking Back

Every project teaches valuable lessons. Here's what I'd prioritize in a v2.

Enhanced UI Experience

Add real-time feedback, execution logs, and status indicators to build confidence for non-technical users and reduce support overhead.

Streamlined Setup

Simplify IAM configurations and deployment processes earlier to enable easier handoffs and maintainability for future team members.

Scalable Architecture

Consider AWS Step Functions for complex workflows to handle growing business logic without overcomplicating the core system.

Back to All Projects

Explore more case studies and technical projects