Senior Full-stack Engineer
Remote · Colombia · Medellín (hybrid optional) Full-time · Remote
Posted July 28, 2026
ApplyAbout the role
We are looking for someone who can take an entire module — electronic health invoicing, pharmacy and inventory, or the emergency and inpatient circuit — and own it end to end: data model, API, interface and deployment.
This is not a ticket-executing role. It is for arguing about architecture, saying "this is modelled wrong" with evidence, and leaving the code in a state where the next person does not have to guess.
You will work on a system where isolation between hospitals, audit logging on medical-record access and the legal validity of an invoice are hard requirements, not optional good practice.
What you will do
- —Design and build complete HIS modules (NestJS + Prisma + PostgreSQL), respecting tenant isolation through row-level security and the mandatory audit log on every medical-record read.
- —Build the interfaces that consume those modules in Next.js 14 with the App Router and strict TypeScript, inside a CSS-variable theming system (no hardcoded colours).
- —Integrate critical third-party services: electronic invoicing with the Colombian tax and health authorities, WhatsApp Cloud API, a payment gateway, S3/MinIO object storage, and AI model providers with streaming responses.
- —Build the safety net we are missing today: automated tests over the business rules that matter (RIPS validation, receivables balances, inventory deductions) and verification at deploy time.
- —Deploy and keep it alive: Docker Compose on VPS, schema migrations, re-applying RLS policies, and diagnosing an outage when a hospital calls at 7 in the morning.
- —VERIFY, which is not the same as reading code: build the tests, automated checks and audits that let AI-written code reach production without fear. Writing is fast here; what is scarce is proving that what was written is correct.
What we need from you
- —4+ years building web applications in production, with at least 2 years of TypeScript on both sides (Node.js and React).
- —Real command of SQL and relational modelling: reading a query plan, understanding indexes and transactions, and spotting a race condition before a user does.
- —Experience with a structured backend framework (NestJS ideally; Spring, Django or .NET work if you understand dependency injection, layering and input validation).
- —Modern React with judgement: knowing when a component belongs on the server or the client, why a given `useEffect` is unnecessary, and how to stop the UI from lying about the real state of the data.
- —Real teamwork in Git: branches, code review, conflict resolution, and the ability to reconstruct what happened from the history.
- —Hands-on Docker and having deployed to a Linux server yourself (not only pushing to Vercel).
- —Security judgement: role-based access control, server-side validation, secret handling, and awareness of what must never reach a log.
- —Fluent Spanish (the team and the product are Colombian) and clear written communication in both languages — on a small remote team, writing well is half the job.
Nice to have (not required)
- +Previous experience in healthcare (HIS, EHR, claims, electronic invoicing, HL7/FHIR, DICOM) or another heavily regulated domain such as fintech.
- +Experience with real multi-tenancy and PostgreSQL row-level security.
- +Shipping LLM features to production: streaming, token cost control, handling provider failures.
- +Swift/SwiftUI — there is an iOS app consuming the same API and it is going to grow.
- +Advanced use of Claude Code or another coding agent: you know how to direct it, scope it and review what it produces.
The stack you will work with
TypeScriptNext.js 14 (App Router)React 18NestJSPrismaPostgreSQL + Row-Level SecurityTailwind CSSDockerGit / GitHubClaude CodeMinIO / S3SSE (streaming)NginxSwift (iOS, nice to have)
This role is NOT for
- ×Anyone who needs frozen requirements and a perfectly specified ticket before starting.
- ×Anyone who ships AI-generated code without reading it: here you answer for what you push, whether a person or a model wrote it.
- ×Anyone who sees the clinical and regulatory domain as an obstacle. It is half the product and our deepest moat.
How the process works
- 1 · ApplyThe form on this page, with your GitHub or portfolio. No cover letter: we would rather read code.
- 2 · Intro call (30 min)A short video call: what you have built, what interests you, how you work. We talk about terms and the salary band here, openly.
- 3 · Paid take-homeA scoped exercise on our real stack (3–5 hours). We pay for it: your time is worth something.
- 4 · Technical review (60 min)We go through your decisions together. No whiteboard algorithms — we talk about your code.
- 5 · OfferAn answer within 5 business days of the review, yes or no.
What we offer
- —Salary in USD, paid monthly — we discuss the band on the first call, no games.
- —Fully remote within Colombia (optional hybrid in Medellín).
- —Budget for AI tooling (Claude, frontier models) — we use them, we pay for them.
- —Real product, real users, fast decisions: what you propose ships in days.
- —A crash course in Colombian healthcare: regulation, interoperability and electronic invoicing.