01
Software Architecture
Shaping systems so that domain boundaries, data ownership, and change remain explicit. Architecture as a set of decisions with consequences — not a diagram produced after the code exists.
$Medellín, Colombia
Senior Software Engineer / Software Architect
Designing scalable systems, distributed architectures and high-performance platforms.
$stack
full inventory →$Stack
Technologies come from the CV, named roles, and later platform work. Proficiency levels are not shown.
$Engineering identity
01
Shaping systems so that domain boundaries, data ownership, and change remain explicit. Architecture as a set of decisions with consequences — not a diagram produced after the code exists.
02
APIs, persistence, and the operational path of a request. PHP and Node.js platforms, relational modeling, and the unglamorous work that keeps business operations correct under load.
03
Work that does not fit in a single process: queues, caches, background workers, and the failure modes that appear when those pieces drift. Design for partial failure, not for the happy path alone.
04
Service boundaries only where they earn their cost. Independent deployability, explicit contracts, and the operational overhead that comes with splitting a system — accepted only when the domain demands it.
05
Models that follow the business, not the database schema. Bounded contexts, ubiquitous language, and the discipline of keeping infrastructure out of the domain.
06
Runtime, not slides: Google Cloud in production backend work, containers with Docker, orchestration with Kubernetes, and the supporting layer of caches and process supervisors.
07
Latency and throughput as design constraints. Caching (Redis, Memcached), query shape, worker supervision, and measuring before changing — because intuition about bottlenecks is usually wrong.
08
Coordinating delivery, setting technical direction, and making decisions that other engineers can execute. Research into new technology when it is justified; restraint when it is not.
$Architecture notes
Architecture
Edge responsibilities, domain behind
Client
API Gateway
Auth, route, limits
Service A
Service B
Service C
Technical perspective. The gateway routes; services own the rules.
$Selected systems
$Career
June 2019
— Present
Head of R&D
Soga SAS
Lead research and development for the internal engineering platform: hexagonal Laravel services, Python stream workers, and architectural direction for products such as ProCrédito v2.
January 2024
— March 2026
Technical Lead
Armirene
Technical lead on Armi, a multi-commerce platform: Commerce Tools as the engine, Checkout and Merchant Center as Next.js products, delivery with Docker and Kubernetes.
November 2019
— August 2023
Senior Backend Developer
TRIKO SAS
Senior backend engineering with architecture, development practices, and infrastructure on Google Cloud — including Redis, Memcached, and process supervision.
January 2018
— June 2019
Development Coordinator
FENALCO Atlántico
Coordinate, design, and implement custom software for organizational needs — including ProCrédito 2.0 and FACTIBLE electronic invoicing.
Concurrent roles are listed separately, with dates as recorded. See the complete history.
$Contact