Applied AI on 11 years of Rails
I integrate AI models into systems that are already in production. Standardized output, predictable cost, human review at the steps that decide.
I connect systems and move data between them without stopping operations. I work with companies in Brazil, the United States and Canada.
Capabilities
Skills, lessons and working rules picked up across projects.
AI Engineering
- Document extraction with the output bound to a schema
- Invariant checks before an output becomes data
- Deterministic templates after the first read, so the model is not called again
- RAG over codebases and sensitive documents
- Long-term memory through summarization and vector search
- Agent orchestration in parallel, isolated by worktree
- Cost, time and tool ceilings per role
- Custom MCP servers, with per-role gating and a sandboxed database
- Event-triggered agents, with a queue, a worker and a pull request at the end
- Evals and regression guardrails
- Asynchronous calls, off the application's critical path
- Prompts owned by the domain expert, not by engineering
- Model provider swaps without touching the consumer
Anthropic API
Claude Code
MCP
Claude Agent SDK
Gemini API
Languages
- Gradual typing over a legacy codebase
- Test suites and TDD as a net for refactoring
- Tests that have to fail first, before they go in
- Deterministic engines: same seed, same result on any machine
- Fixed-point arithmetic and decimal scale conversion in contracts
- Native bindings inside a game server
- Headless suites running in seconds, to fit inside an agent's loop
Ruby
JavaScript
TypeScript
Python
C++
GDScript
Solidity
Back end, APIs and front end
- Integrations written for the other side to fail: retry, idempotency and reconciliation
- Inbound and outbound webhooks, with forwarding that is checked
- Periodic reconciliation of the event a webhook missed
- Public APIs consumed by partners, and business integration with ERPs
- REST to GraphQL migration, trading controllers for services and adapters
- Rails engines attached to a third-party application
- Major Rails upgrades with the application in production
- Cross-platform authentication, with cohorts coexisting through the transition
- Background jobs and heavy processing outside the request cycle
- Structured logging and investigation of low-frequency bugs
- Test coverage on a legacy codebase, until deploying becomes routine
- Bot automation where the partner has no API
- Front-end migration between frameworks, with the product live
- Offline-first front ends, usable with no network
Ruby on Rails
React
Sidekiq
GraphQL
Vue
Vuetify
REST APIs
FastAPI
Hotwire
Next.js
Node.js
SvelteKit
WebRTC
Highcharts
PWA
Data
- Data lakes structured from scratch, from raw data to an automated decision
- Incremental sync between the operational system and the warehouse
- A single record format for domains that do not talk: entity, metric, time, value and context
- Row-Level Security inside the database
- Time series in hypertables
- Vector indexes for semantic search
- Query and index tuning up to the response SLA
- Third-party API ingestion with its own cache and retry policy
- Database migration across platforms preserving integrity
PostgreSQL
BigQuery
pgvector
Infrastructure and deploy
- Infrastructure sized by the invoice, not by the theoretical peak
- Containers with scale-to-zero where the traffic allows
- Hand provisioning where scale-to-zero does not fit
- Serverless architecture for bursty load
- CI/CD pipelines with automated deploys
- Agents running inside the pipeline, with human approval at the merge
- Root cause of instability after an operating system change
- Migration and sync of large file volumes between servers
- Replacing a licensed tool with a service of our own, to get out of lock-in
AWS
Google Cloud
Docker
Heroku
Ansible
NGINX
Ubuntu Server
CI/CD
Firebase Hosting
Integration, migration and guarantees
- Parity proved by replay of real requests against both versions
- Per-API feature switch to flip the key, and to flip it back
- Shards synced with a shadow database, to check the migration in production
- Rollback plans written before the cutover
- Whole applications migrated across languages, with operations live
- A survey of the real dependencies before designing the cutover
- Integration with ERPs, clinical labs and credit bureaus
- Clinical message exchange over HL7
- Reconciling two data models after an acquisition
- Root cause with an investigation document and a task breakdown for the team
TDD
Contract Testing
Serasa
Background
Each line is a contract or a role, identified by the client's industry.
Healthcare and e-commerce platform (US/Canada)
Senior Ruby on Rails engineer, integrations team · Contract via Toptal
Global B2B freight SaaS
Senior back-end engineer · Contract via Toptal
Consumer credit fintech (Brazil)
Software engineer · Project
Healthcare e-commerce (US/Canada)
Full-stack developer · Contract via Toptal
Consumer credit fintech (US)
Rails developer · Contract via Toptal
Pathology lab (US)
Rails developer · Contract via Toptal
Healthcare staffing platform (US)
Senior Ruby on Rails developer · Contract via Toptal
Construction industry software
Head of Product
Digital marketing platform
Full-stack developer
Education and languages
- Information Systems
- Bachelor's degree at Universidade Federal de Santa Catarina, 2018–2021.
- Materials Engineering
- Coursework at Universidade Federal de Santa Catarina, 2015–2018.
- Portuguese
- Native language.
- English
- Professional, in daily use with teams in the United States and Canada since 2021.
Availability
open to projectsWhat needs to be connected, migrated or taken out of manual operation.