Build Long-Running Marketing Automation Engine

Job ID: 40470511

Budget: $250 – $750 CAD

Build Long-Running Marketing Automation Engine (Node.js / React / MongoDB)
Budget

$400 - 500 Fixed Price
2 Milestones ($200-250 each)

Potential for long-term work after completion.

About The Project

We are upgrading an existing SaaS platform called ###### Campaigns.

This is NOT a greenfield build.

The system already exists and already supports basic campaign automation.

We are now evolving it into a behavior-driven long-running marketing automation engine that businesses can put on autopilot.

Think:

ActiveCampaign
HubSpot workflows
Customer.io
GoHighLevel automations

But integrated deeply into our own SaaS ecosystem.

Main Objective

Build a long-running campaign automation engine that allows businesses to:

Set campaigns once and let marketing run automatically.

Campaigns should:

✅ Run for weeks or months
✅ Adapt to customer behavior
✅ Make decisions dynamically
✅ Stop automatically on conversion
✅ Re-engage users later if needed
✅ Prevent over-emailing/spam
✅ Track real conversion outcomes

This is NOT just an email sender.

We are building a behavior-driven conversion engine.

Example:

User submits form
→ nurture campaign starts
→ user clicks pricing page
→ campaign changes path
→ user books meeting
→ automation stops automatically

OR

Document sent
→ wait 24h
→ IF not signed
→ send reminder
→ IF signed
→ stop automation and enter upsell flow

Current System (Already Built)
Existing Features (Phase 1)
Triggers

Currently supported:

Contact added
Form submitted
Actions

Currently supported:

Send email (template-based)
Automation

Currently supported:

Basic delays
Basic conditions
Linear campaign sequences
UI

Already have:

Existing campaign builder
Existing automation UI
Existing email template system
Existing campaign creation flow
Current Limitations

Current system behaves mostly like:

❌ Basic email sequences

We want:

✅ Intelligent behavior-driven automation

Problems today:

Linear flows only
No persistent user memory
No behavior adaptation
No conversion awareness
No stop logic
No re-entry logic
Weak analytics
Tech Stack
Frontend
React
Backend
Node.js
Express
Database
MongoDB
Infrastructure
PM2
Preferred (Recommended)
Redis queues
Event-driven architecture
Worker-based processing

We want a system capable of scaling long-term.

MILESTONE 1 — Core Automation Engine Upgrade ($200)
Goal

Transform current linear campaigns into a behavior-aware automation engine.

1. Goals / Conversion Engine
Purpose

Allow campaigns to define conversion goals.

Examples:

Meeting booked
Link clicked
Tag added
Document signed
Behavior

When goal achieved:

Option A:

Stop automation immediately

Option B:

Redirect to another flow

Example:

User books meeting
→ stop nurture campaign

User signs document
→ start upsell automation

Requirements

Need:

Goal Node in builder
Goal listener system
Continuous goal checking
Automation exit support
2. True Branching (If / Else Logic)
Purpose

Allow campaigns to adapt based on user behavior.

Need real:

IF / ELSE branching

Example:

IF clicked booking link
→ send sales-focused email

ELSE
→ send reminder email

Conditions should support:

Email opened
Link clicked (specific link)
Tag exists
Field value
Last activity date/time

Must support:

Nested conditions
Multiple branches
Dynamic pathing
3. Contact Tag System (Persistent State)
Purpose

Persist user state across campaigns.

Need support for:

Actions
Add tag
Remove tag
Conditions
Tag exists
Tag does not exist

Initial tags:

hot_lead
engaged
inactive
booked
signed

Requirements:

Contact-level persistence
Queryable conditions
Trigger support
Cross-campaign compatibility
4. Exit / Stop Logic
Purpose

Ensure campaigns stop intelligently.

Exit triggers:

Goal achieved
Converted tag added
User unsubscribes

Critical Requirement:

Once exited:

No pending emails should continue sending.

Must override scheduled actions.

5. Architecture Review + Refactor

Review and improve automation architecture for:

Long-running workflows
Queue processing
Event handling
Worker execution
Scalability

We want recommendations for:

Queue structure
State management
Execution engine
Future scaling

Redis queue approach preferred.

Milestone 1 Deliverables

By completion:

✅ Goal system
✅ If/Else branching
✅ Persistent tag system
✅ Exit logic
✅ Improved automation architecture

Result

Campaigns become:

Behavior-driven instead of linear

MILESTONE 2 — Long-Running Campaign Engine + Analytics ($200)
Goal

Enable campaigns to run intelligently for weeks/months on autopilot.

1. Wait Until Logic
Purpose

Pause campaign until:

Condition OR time is met.

Example:

Wait until:

Meeting booked

OR

24 hours passes

Then continue.

Requirements:

Support:

Time-based waiting
Event-based waiting
Timeout fallback
Correct flow resume
2. Re-Entry Logic
Purpose

Allow long-term re-engagement.

Examples:

Re-enter campaign:

After X days
New form submitted
User inactive

Need:

Re-entry toggle
Frequency protection
Infinite-loop prevention
3. Link-Level Tracking
Purpose

Behavior-driven automation.

Track:

Unique link clicks
Click history
Contact-level engagement

Example:

Clicked pricing link
→ sales-focused sequence

Clicked help link
→ educational sequence

4. Email Skip Logic
Purpose

Avoid over-emailing engaged users.

Examples:

Skip next email if:

Previous email opened
Previous email clicked

Should support conditional sending.

5. Frequency / Cooldown Controls
Purpose

Prevent spam/fatigue.

Requirements:

Max emails/day
Max emails/week
Minimum delay between sends

Campaign-level overrides preferred.

6. Campaign Analytics + Behavior Tracking
Purpose

Provide visibility into real campaign performance.

We want more than email metrics.

We want:

Campaign Analytics
Contacts entered
Active contacts
Completion rate
Exit rate
Conversion rate
Email Analytics
Delivered
Opened
Clicked
Skipped
Unsubscribed
Behavior Analytics
Link-level tracking
Trigger source tracking
Goal attribution
Contact activity timeline
Funnel Reporting

Visual funnel:

Entered
→ Opened
→ Clicked
→ Booked
→ Signed

Need support for:

Goal-Based Reporting

Example:

Campaign A:

1000 entered
→ 380 opened
→ 112 clicked
→ 44 meetings booked
→ 18 documents signed

We care about:

Business outcomes, not just email opens.

Requirements:

Analytics event storage
Campaign-level reporting
Goal-based conversion tracking
Funnel reporting
Event tracking tied to automations
Milestone 2 Deliverables

By completion:

✅ Wait-until logic
✅ Re-entry system
✅ Link tracking
✅ Email skip logic
✅ Cooldown controls
✅ Campaign analytics
✅ Funnel reporting
✅ Conversion tracking

Result

Businesses can:

Set campaigns once and place marketing on autopilot.

Future Scope (NOT Part of This Project)

Potential future work:

Cross-App Triggers
Calendar
Meeting booked
Meeting cancelled
No-show
eSign
Document viewed
Document signed
Document declined

Example:

Document sent
→ wait 24h
→ IF unsigned
→ reminder email

Cross-App Actions

Future:

Send eSign document
Insert booking link
Trigger workflow
Create tasks
Ideal Freelancer

Must have experience with:

Node.js
React
MongoDB
Workflow engines
Automation systems
Event-driven architecture
Queue systems (Redis preferred)

Huge bonus if you’ve worked on:

CRM automations
Email automation
Workflow builders
SaaS products
Important

This is NOT a beginner project.

We want someone who understands:

Long-running automation systems, behavioral logic, workflow execution, and scalable architecture.

When applying, please include:

Similar systems you’ve built
Experience with workflow/automation engines
How you would architect long-running campaigns
Experience with queues/workers/event systems

Please avoid generic proposals — we are looking for someone technical who understands automation architecture.