Senior Software Engineer
π’ Proper AI Β· all Proper AI jobs
π Argentina
π
Posted 2026-08-23 Β· via Himalayas
π· Software-Engineer,Backend-Engineering,Systems-Engineering,Platform-Engineering,Senior-Software-Engineer-Jobs,Senior-Engineer
Apply on original site βProper AI is an AI-first accounting service built for property managers and real estate operators.
By combining automation, technology, and a global team of accounting experts, we deliver faster, more accurate financial operations at scale.
Weβre a team of builders, problem-solvers, and operators from around the world, working together to modernize one of the most critical functions in real estate.
Learn more at
We are looking for a Senior Software Engineer with strong backend and systems fundamentals to help own the core of our platform: the services, data models, and automations behind workflow and productivity tooling for B2B accounting operations.
This is a depth role, not a breadth role. The work is logic-heavy β multi-service data flows, third-party platform integrations, and document-processing pipelines where correctness matters more than surface area. The engineer will be a technical counterpart to the Tech Lead on architecture, and will take ownership of our AI-backed document processing service.
The ideal candidate is language-agnostic in outlook but deep in practice: comfortable moving between Go, Python, and TypeScript, and able to build a real working model of an unfamiliar system before changing it.
Key Responsibilities
Core Functional Responsibilities
-
Design, build, and maintain backend services across a microservices estate (Go, NestJS/TypeScript, Python).
-
Own the AI-backed document processing and classification service (Python/FastAPI): extraction quality, accuracy measurement, and the pipeline around it.
-
Design and maintain integrations with third-party platforms, including authentication, sync cadence, retries, and recovery.
-
Model data deliberately β schemas, migrations, and invariants that hold as the product changes.
-
Debug across service boundaries: correlate behaviour across multiple systems and databases to find the actual cause.
-
Build observability and provenance into automated flows: actions should be traceable, auditable, and reconstructable after the fact.
-
Design for safe automation: idempotency, pre/postconditions, dry-runs, and guardrails on anything that writes to a customer's system of record.
-
Write clean, tested, maintainable code, and leave the systems better instrumented than found.
Performance and Metrics Tracking
-
Define and track correctness and reliability measures for owned systems (task success, error and fallback rates, accuracy of automated inference).
-
Build evaluation coverage for AI-backed output: scenario tests, invariant checks, and regression detection when a model or prompt changes.
-
Monitor and improve latency, retries, and failure recovery in automated pipelines.
Training and Development
-
Mentor mid-level engineers on system design, debugging methodology, and testing discipline.
-
Lead design discussions and code reviews.
-
Document architecture decisions, failure modes, and debugging runbooks.
Required Hard Skills
-
Backend engineering depth β production services in Go and/or Python; TypeScript/Node useful. Multi-language comfort matters more than any single stack.
-
Data modelling and relational databases β PostgreSQL, schema design, migrations, query performance, and reasoning about data integrity.
-
Distributed and cross-service debugging β tracing behaviour across services, queues, and databases to isolate a root cause.
-
Third-party integration engineering β external APIs with imperfect contracts: auth expiry, partial failures, retries, idempotency.
-
Reliability practice β observability, structured logging, tracing, failure-mode analysis, and recovery design.
-
Testing and evaluation β unit and scenario tests, invariant checks, and measuring correctness of non-deterministic (AI-backed) output.
-
Cloud and infrastructure β GCP preferred (Cloud Run, Cloud SQL, Pub/Sub); Docker and CI/CD.
-
Working with LLM-backed services β using them as components, understan