Open to backend roles

I build scalable software and solid architectures.

Backend Engineer with 5+ years shipping production Python systems for e-commerce, telecom and enterprise. Specialised in Domain-Driven Design and high-traffic APIs. Open to full-time roles, contracts and consulting.

How to hire me
5+ years in production
DDD clean architecture
Python · Django primary stack
shoppipai-cluster.svc
LIVE
Storefront Vite · React 19 Dashboard Next.js · shadcn API Gateway REST · GraphQL X-Tenant-Id Auth JWT RS256 · 2FA Core Service Django · 27 DDD Saga + Outbox Celery workers Postgres + pgvector Redis cache · sess Queue async retry
01 — Philosophy

Three principles, one standard.

How I approach every product, from the first line of code to production deploy. Over five years shipping Python backends in e-commerce, telecom and enterprise — code that reads, tests and holds up under real load.

01 Architecture

Systems that scale.

Domain-Driven Design, layered separation and SOLID principles. Code reads the way the business talks.

  • Bounded contexts
  • Hexagonal
  • CQRS where it fits
02 Quality

No surprises on deploy day.

Automated tests, observability and continuous review. Zero surprises on deploy day.

  • Test coverage
  • OWASP review
  • Hardened CI/CD
03 Ecosystem

Backends that integrate.

Robust Python backends seamlessly integrated with dynamic Next.js frontends.

  • REST + GraphQL
  • Async-first
  • Crisp DX
02 — Projects

Selected work.

Real systems in production. Audited code, documented decisions.

shoppipai.com
NEW DROP
Modular monolith.
Ship fast.
Shop now →
POST /api/v1/orders → 201
01 Active development · 3 apps in production

Shoppipai

Enterprise E-Commerce · Full-Stack Monorepo · 3 apps

Full-stack product across 3 independent apps: Django backend (27 DDD modules · 16,867 tests · 91.76% coverage), React + Vite customer storefront and Next.js + shadcn multi-tenant staff dashboard. Saga + Outbox, Stripe/Wompi payments, DIAN invoicing and RAG semantic search.

  • Backend · Django 5.2 + DRF + Strawberry GraphQL · 27 DDD bounded contexts · hexagonal architecture · 16,867 tests at 91.76%
  • Storefront · Vite 7 + React 19 + TypeScript · MVVM + Adapter pattern · React Compiler · Playwright × 6 configs · Lighthouse CI
  • Dashboard · Next.js 16 + shadcn/ui + Tailwind v4 · multi-tenant via X-Tenant-Id · virtualised TanStack Table · Server Components
  • Cross-stack · shared OpenAPI contract · type-safe Orval SDK · Saga Pattern + Outbox · DIAN/Factus invoicing · pgvector RAG
Django 5.2DRFStrawberry GraphQLPostgreSQLpgvectorRedisCeleryVite 7React 19TypeScriptNext.js 16shadcn/uiTailwind v4Docker
View demo Read case study Private repository · 3 independent apps · stack and architecture documented
~/normadocs
$ normadocs build thesis.md
Reading thesis.md … ok
Applying APA template … ok
Generating cover, ToC, refs … ok
thesis.docx · 142 pages · 2.1 MB
✓ Built in 1.34s
$
02 Maintained

normadocs

Open Source · CLI

MIT-licensed CLI that converts Markdown into APA 7th edition and ICONTEC NTC 1486 academic documents in one command.

  • Auto-generated cover page, table of contents and bibliography
  • CLI and importable Python library with PEP 561 typing
  • Quality gates: lint, tests and security review in CI
Pythonpython-docxClickMIT
/docs · OpenAPI 3.1
GET /products 200
POST /cart/items 201
GET /cart 200
POST /orders 201
PATCH /orders/{id} 200
DELETE /cart/items/{id} 204
03 Open Source

ecommerce-api

REST API · Django 6 + DRF · type-safe

Production-grade e-commerce REST API with Redis caching, composite DB indexes, RBAC (anonymous/user/admin) and analytics endpoints. Strict mypy across the codebase with zero suppressions, 28 integration tests passing.

  • Type-safe: mypy strict across the codebase · zero `# type: ignore`
  • Redis caching with smart invalidation on writes (CachingMixin)
  • Composite database indexes on hot query paths (name+category, price+is_active)
  • django-filter integrated across all endpoints · admin-only Reports endpoint
Python 3.14Django 6.0DRFRedismypy strictdjango-filter
jobscolombia · v0.2.0
$ jobscolombia score --input jobs.csv
Loading 1,247 listings …
Detecting tech stack ▰▰▰▰▰
Excelente · 84 jobs
Bueno · 312 jobs
Regular · 540 jobs
Descartados: 311 (blacklist + low score)
jobs_scored_20260601.csv
$
pip install jobscolombia
04 Open Source · v0.2.0

JobsColombia

Python Library · Published on PyPI

Python library published on PyPI that scores, classifies and enriches tech job listings from the Colombian market. Relevance algorithm 0-100 based on stack, seniority and work modality.

  • Published on PyPI · `pip install jobscolombia` (v0.2.0, Hatchling build)
  • CI/CD with GitHub Actions · Codecov coverage · Ruff + mypy in pipeline
  • Relevance scoring 0-100 · classification Excellent/Good/Regular/Discarded
  • Automatic tech stack identification from job titles and descriptions
  • Standardised CSV export · company blacklist · configurable weights via env
Python 3.11+PyPIpandasscraplingHatchlingRuffmypyCodecovMIT
03 — Stack

Tools I use daily.

My core stack. I learn whatever the problem requires, but I know these deeply.

Python JavaScript / TypeScript SQL Bash Django Django REST Framework FastAPI Strawberry GraphQL Celery PostgreSQL MySQL / MariaDB pgvector Redis Meilisearch Docker Kubernetes Linux GitHub Actions Sentry Prometheus OpenTelemetry Next.js React TypeScript Tailwind shadcn/ui Python JavaScript / TypeScript SQL Bash Django Django REST Framework FastAPI Strawberry GraphQL Celery PostgreSQL MySQL / MariaDB pgvector Redis Meilisearch Docker Kubernetes Linux GitHub Actions Sentry Prometheus OpenTelemetry Next.js React TypeScript Tailwind shadcn/ui
Languages
  • Python
  • JavaScript / TypeScript
  • SQL
  • Bash
Backend
  • Django
  • Django REST Framework
  • FastAPI
  • Strawberry GraphQL
  • Celery
Data
  • PostgreSQL
  • MySQL / MariaDB
  • pgvector
  • Redis
  • Meilisearch
Infra & Observability
  • Docker
  • Kubernetes
  • Linux
  • GitHub Actions
  • Sentry
  • Prometheus
  • OpenTelemetry
Frontend
  • Next.js
  • React
  • TypeScript
  • Tailwind
  • shadcn/ui
04 — Journey

From support to architecture.

Five years building systems and solving real problems in production.

2021 — 2022
Tech Support & Systems
CDA Automor 14 Calimax · Cali

Adopted DevOps practices and wrote my first Python automation: log rotation, disk monitoring and automated backup policies.

2022 — 2023
Inventory & Automation Analyst
Tigo Colombia

Custom Python apps that replaced manual Excel processes for inventory control across regional warehouses · ETL pipelines from legacy CRM and POS systems · Basic forecasting models for stock planning.

2023
Python Developer & Tech Support
American Telnet · Cali

Python automation suite (pandas, requests, paramiko) and Selenium RPA. Middleware APIs between CCTV hardware and central platforms over HTTP/REST and WebSockets. SLA cut by 70%.

2024
L2/L3 Support Analyst
SIESA · Cali

Resolved L2/L3 escalations on SIESA ERP/POS at enterprise clients: deep software-level debugging, commercial master setup, and server deployments. Practical foundation working with large systems running in real production.

2025
Tech Support & Systems
CDA La Luna · Cali

Linux/Windows server administration + automated backup policies and security hardening. Infrastructure base that translates today into deploy and observability of backend systems.

2025 — Present Actual
Backend Engineer — Shoppipai
Independent · Cali

Enterprise e-commerce architecture across 27 DDD modules with multi-tenant isolation, dual REST + GraphQL API (Django 5.2 / Strawberry), Stripe/Wompi integration, DIAN invoicing, semantic search via pgvector and Sentry/Prometheus observability.

05 — Contact

Want to build something serious?

Backend Developer based in Cali, Colombia · open to remote full-time roles, project contracts or architecture consulting. I work with Python, Django, FastAPI, GraphQL and DDD. I reply within 24 hours.