OffloadOps Get a free plan

Taking on new automation projects

Hand off the busywork. Keep the business.

I build the automations, CRMs and data pipelines that take copy-paste work off your team, so their hours go back to clients and sales.

Describe one task. Get a written plan and a fixed quote within one business day.

Pick a moment in your business

See every step that runs without anyone touching it.

    Running…

    113,603
    spreadsheet rows moved into a real database
    44,415
    duplicate leads retired so callers stop double-dialing
    900+
    historical payments imported from two processors
    0
    manual steps between a signed contract and a welcomed client

    Which one happens every week?

    Pick the one that sounds like your team. Here’s what it looks like once it runs on its own.

    What I build for operations teams

    Most of my work sits between the tools a company already pays for. I connect them, clean up the data moving through them, and build the missing pieces when no tool fits.

    Workflow automation

    Contracts, payments, bookings and reports that move themselves. A signed contract opens the client channel, sends the invites and emails the right rep before anyone has to remember.

    • Zapier
    • Webhooks
    • Slack
    • Telegram
    • Gmail
    • Google Apps Script

    Custom CRMs and internal tools

    When the spreadsheet has 100,000 rows and fifty people editing it, it’s time for a real database. I migrate the data, keep the old sheet running in parallel, and give each person a screen made for their job.

    • Supabase
    • PostgreSQL
    • Retool
    • Streamlit
    • FastAPI
    • Flask

    Lead capture and data pipelines

    Scrapers, browser extensions and enrichment jobs that turn listing sites and public records into clean, deduplicated, ready-to-call lists.

    • Python
    • Playwright
    • Chrome extensions
    • Residential proxies
    • Enrichment APIs

    AI agents and call intelligence

    Agents that research markets for you, and pipelines that pull every sales call, transcribe it, summarize it and file it where managers will actually read it.

    • Claude Agent SDK
    • Anthropic API
    • Zoom API
    • GitHub Actions
    • Translation

    Recent work

    Built for a fast-growing real estate and short-term rental operations company. Client details stay private; the numbers are real.

    • 44,415
      duplicate leads retired from a 113,603-row sheet

      Moving a 60-person calling team off one giant spreadsheet

      The team was dialing the same houses twice because one property was listed on three sites. I moved everything into a database, collapsed cross-platform duplicates into about 69,000 real properties, and gave every caller their own PIN-protected queue.

      Built with Supabase, Streamlit, FastAPI, Python

      How it was done
      • Ran the old sheet and the new app side by side so no one lost a day of calls.
      • Marked merged copies with their own status so surviving leads kept their phone numbers.
      • Added a lightweight backup caller view in case the main app went down.
    • 15
      live SQL metric views replacing manual reports

      A fulfillment CRM with a client portal

      Migrated the client tracker off a project-management board into a proper database, imported 900+ historical payments from two processors, and added a call log for account managers and a portal clients can log into.

      Built with Supabase, Retool, Flask, PostgreSQL

    • 0
      manual steps between a signed contract and a welcomed client

      Hands-free client onboarding

      When a contract is signed, the client gets a private Slack channel, an invite to the community and a personal intro email from their assigned rep, sent from the rep’s own address.

      Built with Zapier, PandaDoc, Slack, Gmail send-as aliases

    • 740+
      historical payments backfilled into one tracker

      One payments tracker across every processor

      Payments from several checkout and financing providers land in one sheet with the right processor name, and disputes trigger an instant alert that tags the people who handle them.

      Built with Zapier, webhooks, Google Sheets, Slack

      How it was done
      • Found and fixed a channel-naming bug that was silently dropping paid clients from the tracker.
      • Reconciled the missing records by hand and removed the duplicates it had created.
    • 9
      rental listing sites captured by one browser extension

      A one-click rental lead capture extension

      Callers browse listings as usual; one click saves the property, contact and price straight into the CRM’s import queue, where it gets deduplicated before anyone dials.

      Built with Chrome extension APIs, JavaScript, Supabase

    • 5
      listing platforms scraped nationwide, behind bot protection

      Lead scrapers and enrichment pipelines

      Mobile-friendly scraper apps for map listings and rental sites, plus enrichment jobs that find decision-makers and contact details for brand outreach.

      Built with Python, Chrome DevTools Protocol, residential proxies, Docker, Render

    • Daily
      every closer’s calls pulled, transcribed and filed

      Sales call vault and AI meeting notes

      Recordings and transcripts arrive in a searchable log each morning. Meeting summaries post straight to the right team channel, translated when a manager prefers another language.

      Built with Zoom API, GitHub Actions, Supabase, Streamlit, Zapier

    • 1
      question in, a full market brief out

      Short-term rental market research agent

      An AI agent that researches a city for rental arbitrage: typical rents, nightly rates, occupancy and local rules, then writes it up as a brief the sales team can use.

      Built with Claude Agent SDK, Python

    • 3
      daily report types parsed from chat into sheets

      End-of-day reports that file themselves

      Reps post their end-of-day numbers in Slack or Telegram the way they always have. A listener reads each message, matches it to the right person and writes clean rows to the team sheet.

      Built with Zapier, Telegram bots, regex parsing, Google Sheets

    • 1 tap
      to claim a new deal, no app account needed

      Deal claim system for a sales channel

      Each new deal post carries a claim link. Account managers fill a short form, the claim is logged privately, and the same deal can’t be claimed twice.

      Built with Telegram Bot API, Google Apps Script

    What is the busywork costing you?

    Think of one repetitive task: copying payments into a sheet, posting reminders, sorting leads. Set the sliders and see what a year of it adds up to.

    624hours a year you could offload

    That’s about 16 full work weeks spent on one task.

    $7,488yearly cost
    208 hper person, per year
    Send this estimate with my request

    How a project runs

    Small enough to start this week, structured enough that nothing breaks on the way.

    1. Map the work

      A short call where you walk me through the task as it happens today. I write back a plain-language plan: what will run automatically, what still needs a person, and what it costs.

    2. Build alongside your system

      I build next to what you already use, so nothing stops while it’s tested. You see it working on real data before anything is switched over.

    3. Hand off and support

      You get short video walkthroughs, documented logins and a fix window after launch. If something in your tools changes later, I’m a message away.

    Ways to work together

    Every project starts with a free written plan, so you know the scope and the price before anything is built.

    A full system

    A CRM, internal tool or data pipeline that replaces an overloaded spreadsheet.

    • Scoped in phases, each priced separately
    • Runs alongside your current setup until you switch
    • Documentation and logins handed over
    Plan my system

    Ongoing support

    A monthly retainer for teams that keep finding new things to automate.

    • A set block of hours each month
    • Fixes when your tools change
    • New automations as you grow
    Ask about a retainer

    Tools I work in every day

    If your team already uses it, I can probably connect it.

    Automation

    Zapier, webhooks, Google Apps Script, Slack Workflows, Telegram bots, Typeform, PandaDoc, Monday.com

    Data and backends

    Python, PostgreSQL, Supabase, FastAPI, Flask, SQLite, Docker, GitHub Actions, Render

    Interfaces

    Retool, Streamlit, HTML and JavaScript, Chrome extensions, Google Sheets dashboards

    Data sources and AI

    Playwright, Chrome DevTools Protocol, proxies, Zoom API, Claude Agent SDK, Anthropic API

    Questions before you start

    The things most teams ask on the first call.

    Do we have to switch tools?

    No. I build on what you already pay for, and only suggest something new when your current setup can’t do the job.

    Who owns the automations and logins?

    You do. Everything runs in your own accounts, and you get documented logins and a video walkthrough at handoff.

    What happens if something breaks later?

    Every delivery includes a fix window after launch. After that, small fixes are quick to quote, or a monthly retainer covers them.

    How do we stay in touch?

    Async by default over Slack, email or Telegram, with calls when they help. My working hours overlap US business hours.

    What does a project cost?

    Your written plan includes a fixed quote before any work starts. Retainers are a set monthly amount for a set block of hours.

    Tell me what keeps eating your week.

    Describe the task in your own words. You’ll get a reply within one business day with questions or a first plan.

    • Short fixed-scope builds and long-term retainers
    • Remote, async-friendly, overlapping US business hours
    • Video walkthrough with every delivery

    What do you need?
    When do you want it running?
    Tools your team uses (pick any)

    A sentence or two is enough.

    Get a free automation plan