Skip to content
View piotrsenkow's full-sized avatar
πŸ—οΈ
Building
πŸ—οΈ
Building

Block or report piotrsenkow

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
piotrsenkow/README.md

Piotr Senkow

Senior full-stack engineer based in Chicago. I build production systems end-to-end β€” currently focused on Realytica, a self-hosted real-estate investment-analytics platform for Chicagoland investors.

Most of my professional work isn't open-source β€” Realytica included β€” but I've carved a couple of production-hardened pieces of its stack out into standalone, general-purpose tools (below). This README is where I describe what I build and the architectural calls I make along the way.


Featured: Realytica

realytica.com β€” solo-built, self-hosted, in active use by agents and buyers.

A real-estate analytics platform that ingests every MLS-Grid listing in the MRED feed (Chicagoland + adjacent IA/WI/IN counties), fuses it with 12 Cook County public datasets (parcels, assessments, sales, etc.), and serves search + comps + investor underwriting on top.

Scale (June 2026)

  • 6.66M total property records on PostgreSQL 17 + PostGIS
  • 2.96M lifetime IDX records, 21K currently active across all counties
  • 4.22M photos with BlurHash placeholders, ~2 TB in self-hosted object storage
  • 12 Cook County public datasets fused with the MLS feed
  • Fully self-hosted, behind Cloudflare with zero open ingress ports

Architecture (at a glance)

Polyglot backend β€” Go for the API and supporting services, C++23 for the in-memory spatial index. TypeScript / Next.js 16 / React 19 / Mapbox GL on the frontend.

The spatial layer is a custom in-memory index built on Google S2 and exposed over gRPC. It serves bounding-box, polygon, radius, and k-nearest queries. S2's hierarchical cell decomposition gives uniform cell area, good clustering of nearby geometry, and battle-tested containment / nearest-neighbor primitives β€” fundamentally different ergonomics from running the same queries through PostGIS, especially for k-NN comps lookup on a working set of a couple hundred thousand listings.

Deal Mode

Investor underwriting workspace: persistence, sensitivity analysis, side-by-side deal comparison, PDF export. Backed by k-NN spatial queries for live comps lookup.

Source

Realytica's source isn't public; the platform serves real users and the codebase stays private. Two general-purpose pieces of its ingestion + query layer are public, though β€” see Open Source. Happy to walk through architecture, decisions, and tradeoffs in interview conversations.


Open Source

Two production-hardened pieces of the Realytica stack, rebuilt clean-room as general-purpose tools anyone with an MLS Grid license can run:

MLS Grid API ──▢ mlsgrid-sync ──▢ PostgreSQL ──▢ mlsgrid-mcp ──▢ your AI agent
                 (replication)     (your data)    (query tools)
  • mlsgrid-sync β€” a single Go binary that replicates MLS Grid (RESO Web API / OData) feeds into PostgreSQL: resumable backfill, cursor-based incremental sync, reconcile sweeps, media download to S3-compatible storage, and configurable field scopes β€” all inside the feed's rate limits. The database schema is a versioned, documented contract.
  • mlsgrid-mcp β€” a read-only Model Context Protocol server that lets AI agents query that database: search listings, pull comps, price history, market stats, open houses. Pins the sync project's schema contract so the two release independently.

Both are Apache-2.0 and ship no MLS data or credentials β€” you bring your own licensed feed.


AI / Local Inference Homelab

A multi-node local-inference stack on my LAN β€” used as my daily dev assistant and for experimentation. Mix of NVIDIA GPUs and AMD Ryzen AI hardware. All endpoints OpenAI-compatible HTTP. Day-to-day usage via terminal coding agents (OpenCode, Claude Code) and direct Python SDK.


Reach out

Popular repositories Loading

  1. piotrsenkow piotrsenkow Public

    GitHub profile README

  2. mlsgrid-sync mlsgrid-sync Public

    Replicate MLS Grid (RESO Web API) listing feeds into PostgreSQL β€” resumable backfill, incremental sync, rate-limit safe

    Go

  3. mlsgrid-mcp mlsgrid-mcp Public

    A Model Context Protocol (MCP) server exposing curated MLS Grid / RESO real-estate query tools over a mlsgrid-sync PostgreSQL database

    Go 1