JOB-EASY

Project Overview

Job-Easy is a production-grade, multi-tenant platform designed for job application outreach and tracking. Users can manage target companies across different locations, store resumes and email templates, and send highly personalized applications directly through their own Gmail accounts. The platform tracks every application as an ongoing conversation, automatically syncing replies from Gmail and moving candidates through a visual hiring pipeline.

Engineering Showcase

This documentation provides a comprehensive technical walkthrough of the architecture, data models, and features built into the platform for engineering evaluation purposes.

What the Platform Does

Company Management

Location-bucketed company lists with CSV import, deduplication, and a community-shared pool.

Email Outreach

Template-based personalised emails sent through the user's own Gmail with resume attachment.

Application Tracking

Pipeline from Sent → Replied → Interview → Offer/Rejected/Hired with Gmail thread sync.

Resume Management

Multiple resumes with private Cloudinary storage, signed URLs, and shareable links.

Gmail Integration

OAuth refresh tokens, Gmail API sending, and reply synchronisation via history ID.

Subscription System

Plans, trials, UPI payments, admin verification, entitlement gates, and expiry reminders.

Admin Platform

Full back-office for user approvals, subscriptions, templates, support, legal, and platform settings.

Monitoring & Ops

Operations console tracking database health, queues, scheduled jobs, incidents, and API quotas.

Notifications

In-app notification centre with categories, preferences, digests, broadcasts, and collapse grouping.

Analytics

Dashboards with application stats, outreach charts, pipeline funnels, and conversion metrics.

Support Desk

Threaded support tickets with attachments, internal notes, and SLA tracking.

Legal & Compliance

Versioned policy documents, acceptance records with IP/UA tracking, and re-acceptance gates.

Global Search

⌘K command palette with GIN trigram search across all user-owned entities.

Data Export

GDPR-compliant ZIP export containing JSON records, CSVs, and actual resume files.

Marketing Site

CMS-driven landing page with hero, features, testimonials, pricing, FAQ, and newsletter.

Account Lifecycle

Two-phase deletion workflow with Google token revocation, Cloudinary purge, and farewell mail.

Global Company Pool

Community-contributed company directory with moderation, quality scoring, and role matching.

Automated Discovery

ATS board registry and poller that automatically discovers actively hiring companies.

Audit Log

Immutable chronological record of administrative actions and critical system events.

Multi-Tenant Architecture

The platform is fully multi-tenant, supported by a comprehensive administrative back-office. Registrations are gated by admin approval, and every database record is securely scoped by userId. Platform-wide behavior—such as branding, feature flags, quotas, subscription plans, legal documents, and the marketing site—is dynamically controlled from the database rather than hardcoded.

The Two Email Systems

Job-Easy explicitly separates user outreach (using the Gmail API to send applications directly from the user's account) from platform mail (using Resend for verification codes, security notices, and billing reminders). These two systems operate on completely different infrastructure, authentication methods, and delivery models.

Key Technical Characteristics

  • Strict vertical slice architecture containing 23 isolated domain features.
  • 59 relational database models featuring cascade-safe deletions and GIN trigram indexes.
  • Cookie-based sessions with hashed tokens, built without reliance on third-party auth libraries.
  • Server-side authorization enforced on every single route and API endpoint.
  • Encrypted Google OAuth refresh tokens stored safely at rest.
  • Private asset storage via Cloudinary, accessed exclusively through signed URLs.
  • Snapshot-based history logs (e.g., EmailLog, Application) that safely survive edits and deletions.
  • Database-backed system settings, feature flags, and versioned legal documents.
  • Durable background job queues, automated cron scheduling, and robust system monitoring.