Hi, I'm João.

Front-end developer specializing in Angular, expanding into React and Next.js.

Building clean, functional, and minimalist interfaces.

Download CV
4+ years
of experience with digital products
Angular & TypeScript
main stack in production
React. Next.js. AWS.
currently exploring

66 modules · 10+ squads · 14 products

_

João Costa

.about()

I'm a Front-end Engineer at PicPay, one of Brazil's largest digital banks with over 60 million users, where I help build and scale HeroDash, our Angular monorepo of 66 feature modules shared across 10+ squads, using TypeScript and RxJS.

I'm currently expanding my stack into React and Next.js. This portfolio is the living proof of that journey.

Outside of work, I freelance and build personal projects. The ones that push me the most are the ones built for real people with real problems.

.experience()

Frontend Engineer · PicPay

Nov 2024 to Present

São Paulo, Brazil

One of Brazil's largest digital banks, with 68M+ registered users.

  • ▸Built and scaled HeroDash, PicPay's Angular monorepo of 66 feature modules shared by 10+ squads, spanning fraud prevention, chargeback, lending, cards, and insurance.
  • ▸Architected a config-driven fraud-analysis workspace, replacing per-product screens with a unified system of 4 analysis queues across 14+ financial products.
  • ▸Led the refactor to config-level queue delivery, cutting new-queue code by roughly 90% and enabling rapid delivery of MED, the Central Bank's mandatory Pix-refund queue.

↑ Promoted to mid-level Software Engineer in July 2026.

Frontend Developer · Sinqia

Nov 2021 to Oct 2024

São Paulo, Brazil

One of Brazil's largest financial software providers, serving banks and credit unions.

  • ▸Developed and maintained mission-critical PIX and SPB systems, Brazil's real-time payment infrastructure, building Angular screens for transaction processing and monitoring for banks with zero tolerance for downtime.
  • ▸Integrated REST APIs and RabbitMQ-backed monitoring flows, collaborating daily with Java and C#/.NET backend teams in a multi-team agile environment.

↑ Promoted from Software Development Intern to Junior Software Engineer in October 2022.

.projects()

FinLivre

Personal · Live
FinLivre

Local-first personal finance app that turns messy bank and credit-card statements into one honest picture of your money. Parses OFX deterministically and reads photos/PDFs via Claude Vision (bring-your-own-key, no backend). Projects installments and recurring items into future months, with a 50/30/20 budget view. Everything stays in the browser (IndexedDB). 112 unit tests.

Next.jsReactTypeScriptDexieClaude VisionLive

Dispute Triage Agent

Personal · Live

$ triage --case #4471

classifydone

assessdone

decideFIGHT · 90%

draftletter ready

_

Agentic system (LangGraph + Claude) that triages card chargebacks end to end: reasons over conflicting signals to recommend fight or accept, then drafts the representment letter itself when fighting, citing only evidence the merchant actually has. FastAPI backend, Next.js frontend, deployed as two services with real rate limiting. Fraud and chargeback was the domain I used to work in at PicPay, mostly fraud, tackled here with an LLM agent instead of a rules engine.

PythonFastAPILangGraphClaudeNext.jsLive

Mixórdia

Freelance
Mixórdia

Signup portal for an electronic-music events brand in Brazil. I took over a half-built React + Flask project, moved it onto Supabase (subscribers, event storage and a locked-down signup function) and built its TV power-on intro and CRT signal effects.

ReactSupabaseSASSResendLive

vizinhelp

Academic
vizinhelp

My postgraduate thesis (PUC-RS, 2024): a neighborhood skill-exchange app built end to end: Angular front end, Node/Express API on PostgreSQL, Keycloak auth and CI deploying to AWS EC2.

AngularTypeScriptNode.jsPostgreSQLKeycloak

.skills()

// Expert

AngularTypeScriptRxJSJavaScriptHTML/CSS

// Learning

ReactNext.js

// Testing & Tooling

JestNxGitTailwind CSS

.contact()

I'm genuinely interested in people with real problems. If you need more creativity and innovation in your digital product, I can help. I'm curious and always up for it, so if you want to talk tech, collaboration, or anything else, let's connect.