← All works

engineering · Since 2023

ASG OS

for Alex Stoykov Group · Compass

The production platform behind a Chicago real estate team that scaled from 10 to 32 agents on top of it: one Postgres system of record, a typed API serving every surface, and an AI agent that drafts listing marketing for human review.

ASG OS

A top-performing Chicago real estate team was growing faster than its tooling. Every page ran its own script against a third-party API, every listing lived in someone's head or a scattered doc. As Marketing Director I built ASG OS: 15,000 lines of TypeScript, 27 database migrations, and 97 API endpoints of connective tissue that let the team triple without tripling overhead.

Role

Marketing Director · Systems Architect

Production

Since 2023

Scope

Systems designAutomationApps ScriptAnalyticsRaspberry Pi

01

Pre-production

Mapped every workflow the team actually ran (listings from signed to marketed, agent onboarding, marketing requests) and designed the system around them. The core decision: replace the sprawl of per-page scripts with one Supabase Postgres system of record, so every surface reads from the same fast, relational data.

02

Production

Built the platform in TypeScript on Fastify: ten external connectors (CRM, MLS, Drive, Asana, Acuity), fourteen scheduled sync jobs with full run audits, row level security on every table, and an AI agent that drafts on-brand, Fair-Housing-aware listing marketing with a hard cost ceiling per run. Plus a Raspberry Pi kiosk driving the office TV dashboard.

03

Creation & Deliverables

The team scaled from 10 to 32 agents on this infrastructure. Marketing support that once required constant coordination now runs as a system: seller intake spawns the CRM record, the Asana project, and a drafted marketing package before anyone touches a keyboard, and a human reviews everything before it ships.

Client words

Tim excels at creating and refining critical marketing assets, from listing presentations to agent brag books. He demonstrates a meticulous commitment to Compass brand standards and proactively integrates company tools into client-facing materials.
Compass · Alex Stoykov Group

The system in numbers

from the repo

15,135

Lines of TypeScript across 78 backend modules

27

SQL migrations, RLS-hardened Postgres schema

97

API endpoints across serving and admin routes

10 + 14

External connectors + scheduled sync jobs

How it works

one system of record

Six external systems sync on a schedule into one database, and every surface reads from there through one typed API. The site got fast, an upstream outage stopped breaking anything, and every tool finally agrees on the same numbers. An AI agent drafts on-brand listing marketing from verified facts only, always for human review.

CRMIDX / MLSGoogle DriveAsanaSchedulingLead intake

↓  scheduled sync

One database, one API

system of record · photo CDN · role-based access

↓  everything below

WebsiteAdmin consoleAgent consoleClient portalMicrositesTV dashboard

The surfaces

real captures, live data

Website Redesign

Website Redesign

The new public site. Live inventory straight from the platform, the team's film, real client reviews, and neighborhood guides, all served by the same API as the internal tools.

The office TV

raspberry pi kiosk
ASG live team performance TV dashboard

Live team performance, on the wall

The leaderboard runs on a Raspberry Pi I wired behind the office TV: a dependency-free Node server boots on power-up via systemd, launches the dashboard fullscreen in kiosk mode, and refreshes itself from the same API as everything else. Anyone on the team can switch views from their phone through a small remote-control web app the Pi serves on the local network, and updates deploy over SSH with one script. Volume, closings, pending deals, and upcoming closings, always current, no laptop attached.