Email PA is a scheduled backend service I built to turn noisy job-application emails into structured tracking state. It reads Outlook emails from Microsoft Graph, classifies them into meaningful application updates, stores processing state in Airtable, creates or updates matching job records when appropriate, and sends a Telegram summary after each run. The goal was not to build a general-purpose workflow engine, but to solve a narrow operational problem reliably enough that I could trust it with my real inbox.

Sections

The section pages are linked below.

The Problem

The Goal

System Overview

Core Components

Key Engineering Decisions

Reliability and Failure Handling

Evaluation Approach

Results

Limitations

What I’d Improve Next

Reproduction and Setup Notes

Closing Reflection