⚔ limeira-sp · full-stack developer

TiagoPortilho_

I build web platforms and APIs with Node.js, TypeScript and React. 3+ years questing through production software, from architecture to CI/CD.

tiago@limeira · zsh
0+years experience
0apps em produção
0public repos
Node.jsTypeScriptReactExpressPostgreSQLPrismaRedisBullMQDockerGitHub ActionsMongoDBPython
Node.jsTypeScriptReactExpressPostgreSQLPrismaRedisBullMQDockerGitHub ActionsMongoDBPython

◆ 01 / Projects

Selected work

Each project has its own page. Click through for the full story, features and source.

01Main quest

OneHub

Corporate SSO and internal app ecosystem: 4 apps running across 9 production services. Lead developer and technical owner, from architecture to CI/CD.

  • Centralized auth with SSO and 2FA
  • Cross-service RBAC
  • Four apps in production
Node.jsTypeScriptReactPostgreSQLDockerGitHub ActionsTurborepocase study
02

FiscalHub

in development

Multi-tenant platform for Brazilian NFS-e management: two-layer tenant isolation, BullMQ async pipeline, SPED EFD generator and email-based document ingestion. Actively in development.

Node.jsTypeScriptPostgreSQLBullMQRedisPrismaReactDocker
03

Multi-Agent Quality Gates

Multi-agent quality gate methodology on the Claude API: specialized agents per risk domain, cost-routed across Haiku/Sonnet/Opus, with BLOCK/WARN/PASS verdicts. Deployed across FiscalHub and OneHub.

Claude APITypeScriptNode.jsMulti-AgentPrompt Engineering
04

Wissensforte Website

Institutional website for a SAP consulting firm: Next.js 15, Framer Motion, i18n across 4 languages and a multi-layer contact form with Cloudflare Turnstile.

Next.js 15TypeScriptTailwind CSSFramer MotionResendCloudflare Turnstile
05

ZFlex Selantes

Institutional website for ZFlex Selantes Técnicos, an industrial sealants manufacturer in Limeira-SP. In production since October 2023 on GCP Cloud Run. Sole developer: build, deploy, hosting and all technical support.

Node.jsExpressEJSDockerGoogle Cloud RunPWAreCAPTCHA
06

SAP Table Organizer

Python CLI that parses raw SAP Excel exports, identifies table sections by keyword, normalizes inconsistent column names and writes a clean, structured XLSX. Used in a real SAP consulting context.

Pythonpandasopenpyxl
07

ServEasy

Full-stack restaurant management system built as my SENAC final project: three role-based panels (Admin, Kitchen, Server), 42 REST endpoints, stateless JWT auth and Docker Compose with health checks.

JavaSpring BootMySQLSpring SecurityDockerThymeleaf
08

Athena

Personal knowledge management desktop app built with Electron and SQLite. Seven integrated modules, everything stored locally, cross-platform.

ElectronJavaScriptSQLiteBootstrap 5Node.js
09

VerdadesVivas Sys

Desktop management system for a religious book distribution operation. Java Swing + SQLite, offline-first, distributed as a .jar with a bundled JDK installer. Three screens, one Extra tab, no server needed.

JavaSwingSQLiteApache NetBeans
10

TingBot

Python Discord bot with YouTube music streaming, text-to-speech with pitch shifting, rock-paper-scissors and dice, bilingual PT/EN commands, and simultaneous audio. Deployed with Docker.

PythonDiscord.pyyt-dlpgTTSFFmpegDocker
11

FaceRecognition

Real-time face detection and recognition with OpenCV in Python. Record your face, then run the main script and the webcam identifies you live.

PythonOpenCV

◆ 02 / the journey

Where I have shipped

3+ years building production software, from corporate platforms to client sites that pay the bills.

Feb 2023 · Present

Wissensforte Technologies

Full Stack Developer

Remote

Node.jsTypeScriptReactPostgreSQLDockerGitHub Actions

Corporate software company, focused on internal tooling and process digitalization.

  • Lead developer and technical owner of OneHub: a corporate SSO ecosystem of 4 apps running across 9 production services (Node.js backends + React front ends), digitalizing the company's entire internal operations and saving ~29 hrs/month.
  • Designed centralized auth (SSO, 2FA, session management, rate limiting) and a cross-service RBAC system with full admin panel.
  • Turborepo monorepo with a parallel CI pipeline (lint, typecheck, test) on every push. Tests use HTTP contract assertions against a real Express app (not mocks), so refactors are safe to ship. Deploy runs via GitHub Actions SSH to a self-managed VPS: git reset --hard + selective git clean preserves .env while keeping the server in exact sync with the repo.
  • Built a Python automation for SAP-exported Excel datasets, cutting a manual finance process from ~2 hours to under 10 minutes.
  • Delivered an NFSe consultation API in .NET + MySQL; currently building FiscalHub, a multi-tenant fiscal document platform.

Oct 2023 · Present

ZFlex Selantes Técnicos

Full Stack Developer, Freelance

Limeira, BR

Node.jsEJSDockerGoogle Cloud Run

Industrial sealants manufacturer: client-facing institutional website.

  • Built and maintain the production institutional website (Node.js, EJS, Docker, Google Cloud Run). Increased inbound business contacts and serves as the client's primary product information channel.
  • Sole developer: deployment, hosting configuration, branding-aligned front-end work and all technical support.

Technical Degree in Software Development

SENAC Brazil, completed Oct 2025. Final project: ServEasy, a full-stack restaurant management system.

Portuguese native · English B2

Async-first, comfortable across time zones. Open to remote roles with international teams.

◆ 03 / stack

Tools of the trade

The config does not lie. Everything here has shipped at least one real project.

stack.config.ts
1export const stack = {
2core: ["node", "typescript", "javascript", "express", "react"], // daily drivers
3backend: ["rest-apis", "sso/2fa/rbac", "prisma", "redis", "bullmq"],
4frontend: ["react", "next.js", "vite", "ejs", "html", "css"],
5databases: ["postgres+rls", "mongodb", "mysql", "redis"],
6devops: ["docker", "gh-actions", "vps", "caddy", "cloud-run"],
7other: ["python", "java", "spring-boot", ".net", "claude-api"],
8} as const;
9// always learning, list grows every quarter

◆ 04 / contact

Send a
courier.

got something i'm supposed to deliver. your hands only.

copied to clipboard