Resilient, scalable services powering every field operation β from mobile sync to ESRI integration, background jobs, and structured observability
The server-side backbone that connects mobile field apps to web dashboards, ESRI, and organizational systems
Standards-compliant REST API built on ASP.NET Core 10 with full OpenAPI 3.1 / Swagger documentation. All endpoints are versioned (URI versioning), support content negotiation, and return structured ProblemDetails error responses. HTTP client SDKs are auto-generated from the OpenAPI spec.
Every outbound HTTP call β to ESRI ArcGIS, authentication providers, and external notification services β is wrapped with Polly 8.x resilience policies: exponential backoff retry (3 attempts), circuit breaker (5 failures / 30s open), timeout (30s per call), and bulkhead isolation to prevent cascade failures.
Tenant-scoped repositories enforce row-level data isolation at the EF Core query interceptor level β no cross-tenant data leakage is possible even through developer error. Each tenant has its own configuration, feature flag set, GNSS accuracy thresholds, and ESRI portal credentials.
Hangfire 1.x manages scheduled and triggered background jobs: nightly compliance certificate generation, scheduled analytics report email delivery, periodic ESRI feature service sync, SLA breach detection sweeps, and audit log archival. Jobs are persistent, retryable, and visible in the Hangfire dashboard.
Every request, background job, and domain event is logged with Serilog 3.x structured log entries. Each entry carries correlation ID, tenant ID, user identity, GNSS position (where applicable), request duration, and outcome β enabling precise log queries in any sink (Seq, Elasticsearch, Application Insights, CloudWatch).
EF Core 10 with NetTopologySuite (NTS) provides full spatial type support for geometry columns: Point, LineString, Polygon, and multi-variants stored in SQLite/SpatiaLite, SQL Server, or PostgreSQL/PostGIS. Spatial LINQ queries translate to native ST_ functions at the database β no manual SQL required.
Managed typed HttpClient for ESRI ArcGIS REST API with token refresh, attachment sync, domain value cache, feature service version management, and geodatabase-to-GeoPackage conversion pipeline. Supports both named user and application credential auth flows for ArcGIS Online and Enterprise portals.
MediatR-based domain event pipeline decouples core business logic from side effects. Compliance encroachment detected β raises DomainEvent β handled by: AuditHandler (log entry), WorkOrderHandler (auto-create WO), NotificationHandler (push alert to dispatch). New integrations add handlers without touching domain code.
Framework versions, library choices, and database compatibility
External systems the backend connects and orchestrates
Feature service sync, attachment upload, geodatabase
OIDC token validation & user provisioning
Scheduled report delivery & alert emails
Structured log ingestion & monitoring
Evidence photo and certificate file storage
FCM (Android) & WNS (Windows) via abstraction layer
Learn how the backend services integrate with your existing ESRI infrastructure and identity provider