Sync Apps
Two production ETL pipelines feeding the park system's PostGIS database: a nightly sync of field-collected inspection and survey data from the Fulcrum mobile platform, and a multi-county pipeline pulling parcel and property boundary data from county GIS servers.
The Fulcrum pipeline exposes run history to the staff dashboard and accepts remotely-triggered syncs through a polling queue, since the production database server has no inbound network access; the parcels pipeline uses a single declarative config to onboard each new county.
The Fulcrum pipeline also translates Fulcrum's raw Postgres-dialect API responses — including mapping numeric type codes back to real column types — and isolates failures per table so one bad record never takes down a whole nightly run; the parcels pipeline hardens its fetch layer per county, including anti-scraping headers and request throttling for a more restrictive server.
- Python
- PostgreSQL / PostGIS
- psycopg2 + SQLAlchemy
- pandas
- Docker Compose
- cron
- GDAL / ogr2ogr
- ArcGIS REST API