Accepting a limited number of new workflows · Introductory client pricing

GIS Automation Reliability Desk

Keep the Python and GIS automation your team depends on, from ArcPy to GeoPandas, PostGIS, and scheduled ETL, organized, inspectable, and easier to maintain.

Built for small engineering, environmental, and municipal GIS teams running an inherited or scheduled script without a dedicated Python developer on staff. My background is deepest in ArcPy and ArcGIS Pro geoprocessing alongside open-source Python GIS. I review one existing workflow to find where it can fail silently, then help keep it running cleanly month to month.

★ ArcPy & ArcGIS Pro 3.x (Primary Specialty) GeoPandas · Shapely · GDAL PostGIS & Spatial SQL ETL PyQGIS ArcGIS API for Python · Scheduled ETL

$299 one-time baseline audit + $249/month reliability retainer

Up to 2 hours/month of dedicated reliability work plus a written monthly report. Available to the first five qualifying clients. Scope approval required.

Who is behind the Desk

Former Esri Product Engineer (Spatial Analysis & Data Science), with 5 years helping ship the geoprocessing tools in ArcGIS Pro. Now Senior GIS Technical Specialist running production GIS automation at Southern California Edison.

Independent service by Danny McVey; no Esri or SCE endorsement implied. No Esri or SCE intellectual property, confidential information, or employer resources are used.

Capacity: First 5 workflows (10 hrs/mo cap) Scope: 1 GIS Python workflow (≤ 3 files, ≤ 750 LOC) Response: Within 2 business days (async) Rate lock: 12-month lock · Cancel anytime

Two-part structure: Baseline Audit + Monthly Reliability Retainer

Part 1 · Baseline Audit & Onboarding
$299one-time baseline auditIntroductory client pricing

1 GIS Python workflow (≤ 3 files, ≤ 750 LOC) · Delivered in 5 business days

  • Read-only code & environment audit: Review sanitized scripts, dependencies, config paths, and places where errors get swallowed.
  • Baseline Risk & Reliability Report: Written report ranking failure modes (High / Medium / Low).
  • Test-seam & preflight blueprint: Plan for pure-Python test seams, schema/CRS/lock checks, JSON receipts, and walkthrough.
Part 2 · Monthly Reliability Retainer
$249/ month reliability retainerFirst 5 qualifying clients

Month-to-month · Scope approval required · Cancel anytime before next billing cycle

  • Up to 2.0 hours/month all-inclusive: Covers your scheduled check and written Monthly Reliability Report (~0.5 hr) plus up to 1.5 hrs/mo of async fixes, hardening diffs, and coordination.
  • Explicit hour cap & monthly expiry: Logged in 15-min increments. Unused hours expire monthly (no rollover). Overages require prior approval ($125/hr intro rate).
  • 2-business-day async response: Direct engineering support (Mon–Fri) on sanitized code.
Need a one-time diagnostic before approving a monthly retainer?

Book a Standalone Baseline Audit ($299 for ≤ 750 LOC, or $149 for single-file scripts ≤ 350 LOC). Activate the $249/month retainer within 14 days of your $299 report and your setup fee is already satisfied.

Why 5 workflows & how your 12-month introductory rate lock works

5-Workflow Cap: I perform all reviews personally alongside my full-time role, capping capacity at five active client workflows (10 hrs/mo roster ceiling), reserved upon scope approval, 1-page agreement sign-off, and checkout.

12-Month Rate Lock & 60-Day Notice: Your $249/month rate will not increase for your first 12 consecutive monthly billing cycles while active; thereafter it remains $249/month unless I give 60 days’ advance written notice. Cancel anytime before your next billing date. Reactivating within 30 days for the same workflow reinstates your $249/month rate for the remainder of your initial 12-month lock window; reactivations after 30 days depend on slot availability and then-current pricing. (Planned standard pricing after the first five slots fill is $599 baseline audit + $499/month retainer.)

Supported GIS stacks & clear service boundaries

A good fit (1 workflow · ≤ 3 files · ≤ 750 LOC)
  • ArcPy & ArcGIS Pro (Primary Specialty): Geoprocessing scripts, .pyt/.atbx toolboxes, File GDB/SDE staging ETL, and ArcGIS API for Python syncs.
  • Open-Source Python GIS & Spatial ETL: GeoPandas, Shapely, GDAL/Rasterio, PyQGIS scripts, and Python + PostGIS / REST pipelines.
  • Sanitized code & internal owner: You share sanitized code, sample schemas, and redacted logs; your team runs approved diffs in production.
Not included
  • No 24/7 on-call, pager SLAs, or direct production writes: Async 2-business-day response; zero direct access to live production SDE or cloud servers.
  • No credentials, PII, or utility conflicts: Never send passwords, API keys, regulated data, or work connected to Southern California Edison (SCE) / California electric utilities.
  • No sprawling apps or IT hosting: Multi-thousand-line systems, full-stack web apps, DBA server administration, or legacy Python 2.7 rewrites.
Supported vs. out-of-scope technology matrix & credential-free AI policy

In-Scope (≤ 3 files, ≤ 750 LOC): ArcPy (ArcGIS Pro 3.x), ArcGIS API for Python, GeoPandas / Shapely / PyProj / Fiona / GDAL / Rasterio, PyQGIS processing scripts, PostGIS / Spatial SQL Python jobs (psycopg / SQLAlchemy), and Task Scheduler / cron / GitHub Actions wrappers.

Out-of-Scope: Enterprise GIS server administration (ArcGIS Enterprise / GeoServer hosting), C# Pro SDK add-ins, frontend web mapping (React/Mapbox), ML model training, and unquoted ArcMap 10.x (Python 2.7) rewrites.

Human-Reviewed, Credential-Free AI Policy: Sanitized code and synthetic schemas may be analyzed with AI-assisted tooling under my direct review. Customer credentials and confidential data are never accepted or sent to third-party AI models.

What a Monthly Reliability Report looks like

MONTHLY RELIABILITY REPORT · SAMPLE EXCERPT1 Patch Ready for Staging
Covered Workflowparcel_etl_nightly.py (540 LOC)
GIS StackArcGIS Pro 3.3 / GeoPandas · py311
All-In Monthly Hours1.50 / 2.00 hrs (0.50 Report + 1.00 Fix)
Production Writes0 (Client-Gated)
High Risk

Unhandled schema lock & silent exception during staging table truncate

Logs exited 0 despite lock failure (ERROR 000464) swallowed by except Exception:. Added preflight lock check & non-zero exit in diff #04 (0.75 hr).
Medium

Missing CRS & row-count threshold guard before target overwrite

Upstream export dropped 42% of rows last month. Added CRS assertion (EPSG:2229) and row guard (min_expected_rows: 12000) in dry-run config (0.25 hr).
Healthy

Pure-Python field normalization & pytest suite (14/14 passing)

Monthly log inspection & report (0.50 hr). APN formatting and schema transforms verified outside desktop GIS via pytest.
View sample JSON run receipt (run_receipt.json) & patch handoff

Deliverable: 04_preflight_lock_and_row_guard.patch (48 lines across 2 files) · Next step: Client runs --dry-run on staging data before production cutover.

{"workflow":"parcel_etl_nightly.py","mode":"dry-run","crs_verified":"EPSG:2229","input_rows":14820,"min_expected_rows":12000,"schema_lock_detected":false,"status":"READY_FOR_COMMIT"}
Want to inspect a complete $299 Baseline Reliability Assessment (20-point scorecard, 24/100 to 92/100 maturity score, and 7 prioritized findings)? View full sample Baseline Assessment (Synthetic)
5-minute workflow scope check · No credentials or live DB access

Tell me about the GIS workflow your team depends on.

Complete the quick triage fields below in under five minutes, or book a 30-minute call directly. No payment is collected now, and you can also copy a structured Markdown brief for your own records or internal sign-off.

Prefer to talk through your workflow live first?Book a 30-minute Workflow Scope Check on Calendly ↗
Step 1 · Core Workflow Triage (Required) ~3 to 5 minutes · Plain-language summary
Optional Step 2: Add data store, scheduler & staging details (speeds up written scope sign-off)
Estimated Fit & Recommended Path Standard Scope Fit · 5-Day Audit

Recommended: $299 Baseline Audit + $249/mo Reliability Retainer

Fits standard single-workflow boundaries (≤ 3 files, ≤ 750 LOC). Your 5-business-day Baseline Audit will map silent exception paths, add preflight row/CRS/lock guards, and establish a repeatable dry-run receipt before monthly retainer coverage begins.

Step 1 · Immediate Scope Brief Logged Submit above, or copy your Markdown brief into a 30-min Calendly slot. No upfront payment is collected.
Step 2 · Within 2 Business Days Written Scope & Sanitization Checklist I confirm exact tier fit ($149, $299, or $299 + $249/mo), send a 1-page agreement, and share a redaction checklist.
Step 3 · 5 Business Days After Handoff Baseline Audit & Preflight Blueprint Receive your ranked risk report, pure-Python test seams, dry-run receipt design, and live walkthrough.

I’ll use your email only to respond to this request. Checkout links are sent only after mutual scope sign-off.