Full-stack and AI engineer, schema to screen.
I'm Pedro. I design, build and run production systems end to end: multi-tenant SaaS, mobile apps, internal systems and AI agents. I was the only engineer behind a multi-tenant CRM in daily use, and my code is merged into Supabase, Kestra and QuestDB.
- TypeScript, React, Node.js, Python, PostgreSQL
- Viçosa, Brazil (UTC−3)
- English and Portuguese
A CRM I built alone, from schema to screen
Multi-tenant CRM in React, TypeScript and Supabase: Postgres row-level security per tenant, Edge Functions, a WhatsApp Cloud API inbox, a Kanban pipeline and dashboards. One engineer, the whole stack, paying customers.
A Flutter app and the API behind it
A fitness app live in the stores, with the backend that runs it: authentication, user data, notifications and the API the app talks to.
An agency's internal app
I built and run the system Núcleo de Performance works in: each person signs in and sees only the sections opened to them, each client opens only its own SEO report, a vault keeps passwords encrypted in the browser, and sensors alert on Telegram when a flow stops.
AI agents with rules, tools and a metric
Agents that qualify, answer, summarize and hand off to people inside business rules, wired into the CRM, with limits on what they may say and a number that shows whether they paid off.
Integrations that never fire twice or fail silently
A lead from an ad arrives by webhook and passes an idempotency key before any side effect. When the sale closes in the CRM, it goes back to Meta and Google Ads as a conversion.
Sign-in approved, owner checked on every route
At Starhash (Next.js, Express, MongoDB) I built sign-in with Google and YouTube, TikTok and Instagram, each approved in that platform's review, plus sessions on rotating refresh tokens. In the security audit I put an ownership check on every authenticated route and hardened SSRF and JWT handling.
Code that other teams merged
Most of my work is closed-source client code. This part anyone can audit: bug fixes, features and docs that the maintainers of Supabase, Kestra and QuestDB reviewed and merged. The two client fixes below started as bugs I hit in production.



All merged pull requests
The stack, and where it ran
Every item here went into a real project, paid or public. Pick a project to see what it was built with.
How I work
Problem before stack
I came from marketing and data. Before choosing tools I ask what costs money today and which number has to move.
Correct under concurrency
Row locks where tokens and money are involved: FOR UPDATE on refresh-token rotation, FOR NO KEY UPDATE to avoid deadlocks, unique keys instead of hope.
Done means verified
A green typecheck is not proof. I run the flow end to end, and when I can't verify something I say exactly what is left.
Measured, not claimed
The metric is agreed before the build: time per lead, cost per qualified lead, meetings booked. Then it gets measured against the old process.
From marketing to engineering
- 2026 to now
AI Engineer, Solabs
AI agents, integrations and product engineering for a group of companies.
- Production AI agents on WhatsApp and Instagram handling 300+ leads a day, writing straight into Bitrix24 and RD Station.
- A multichannel B2B outreach engine (LinkedIn and email) with scraping, enrichment and automated sequences (Apify, HeyReach).
- 2026 to now
AI Engineer, Núcleo de Performance
Conversion tracking and the internal app of a performance marketing agency.
- Server-side conversion tracking fed by the CRM (Meta Conversions API, Google Ads offline conversions), giving the agency's campaigns their sales attribution back.
- Built and run the agency's internal app: per-person sign-in with access by section, a portal with SEO reports for 13 clients, a password vault encrypted in the browser, sensors and Telegram alerts.
- 2026 to now
Software Engineer, Starhash
Platform that licenses creators' likeness for generative AI, live with real billing (starhash.ai).
- 700+ commits since June 2026: Starboost, the integration with the ad accounts on Meta, TikTok and Google Ads, plus sign-in and account linking with Google and YouTube, TikTok and Instagram, each one approved in that platform's app review.
- Security hardening: ownership checks on every authenticated route, SSRF protection, hardened JWT, sessions with rotating refresh tokens, all locked behind automated guards.
- 2025 to 2026
Full-stack Developer, Funil Faixa Preta
Sole developer. Built the company's multi-tenant CRM from the database to the interface, plus the automations and integrations around it.
- 862 commits from the Postgres schema (migrations, row-level security) and Edge Functions to the React, TypeScript and Vite front end, serving 20 client companies.
- LLM agents with RAG and embeddings for triage, FAQs and human handoff, cutting the time to first reply to a customer by 60%.
- 2024 to 2025
Data and BI Analyst, Cafezinho
Dashboards, data models and predictive models for an app operating in Portugal.
- 2020 to 2024
Paid Media, independent
Where I learned what a business actually measures.
Notes from production
Short write-ups of problems I hit and how I fixed them, with sources.