Goiânia, GO, Brazil · UTC-3 (Brasília time, no daylight saving)

João Pedro Guimarães Borba

Full-stack developer who documents decisions before writing code and ships systems that don't break twice.

I write the constraints and the trade-off down before I write the code, and I put my name on what happens after it ships, including the parts that broke.

AvailabilityImmediate. Full availability regardless of time zone or working hours.

5 systems in production, 6 business domains served, 5+ years shipping software, and 4,276+ files across production codebases.

Cases

How I work

Documentation is the source of truth

Behavior lives in specs before it lives in code. A disagreement between the two gets fixed like any other bug.

See it in FunilChat AI

Every decision gets its trade-off written down

A decision only counts as engineering once its cost is written down next to it. Every case on this site shows both sides.

See it in FECOT

Zero regressions, checked by the build

A rule that depends on someone remembering eventually gets forgotten. Absolute rules become blocking checks in the pipeline instead.

See it in Knoxis

Stack

Backend

  • Argon2id (argon2-cffi)
  • Argon2id (password hashing)
  • Devise (authentication)
  • Django 5 + Django REST Framework
  • Docker SDK for Python
  • FastAPI (Python 3.11)
  • FastAPI (Python 3.12)
  • Fernet field-level encryption
  • Flask (Python)
  • JWT (HS256)
  • JWT + TOTP MFA
  • Jinja2 + HTMX (admin panel)
  • Pundit (authorization policies)
  • Python 3.12
  • Ruby on Rails
  • SQLAlchemy 2 + Alembic
  • bcrypt

Frontend

  • ApexCharts / Highcharts
  • Chakra UI
  • Next.js 16 (App Router)
  • React
  • React 18 + Vite
  • React 19
  • Redux Toolkit
  • Tailwind + shadcn/ui
  • TypeScript
  • Vite
  • Web Audio API
  • code-server (VS Code in the browser)
  • noVNC
  • sessionStorage

Data

  • JSON file store (portal-data/alunos.json)
  • Oracle (read-only, over client integrations)
  • PostgreSQL (application database)
  • PostgreSQL 16
  • PostgreSQL 16 + pgvector
  • PostgreSQL with row-level security
  • Redis (message grouping)

Infra

  • ClamAV
  • Cloudflare Tunnel
  • Docker Compose
  • Docker Compose (Nginx + Gunicorn + Postgres)
  • EasyPanel
  • EasyPanel / VPS
  • Evolution API (self-hosted WhatsApp)
  • IPsec VPN tunnels (per-client, on demand)
  • PulseAudio + websockify
  • RPA against client-side software
  • Traefik v3.2
  • n8n (self-hosted automation)
  • systemd + nginx, single VPS

AI

  • Claude (Anthropic, tool use)
  • OpenAI (via n8n AI Agent)
  • external embeddings provider

Contact