Open to new opportunities

Rogélio Claro Fraga FULL STACK DEVELOPER

Lead engineer of a B2B SaaS in production at UFU, from the API to the AWS infrastructure in Terraform, and author of a teaching platform used by 73 students every week. I work with Java, Spring Boot and Angular, and I own the path to production: tests against a real database, CI/CD, alarms and backups.

  • 73 students using in production the platform I built
  • 66 AWS resources under Terraform at InovaLayer
  • 1,500+ automated tests across my projects
Photo of Rogélio Claro Fraga

About me

I am a full stack developer and I work from the domain model to the deploy. At InovaLayer, an innovation project linked to UFU and funded by FAPEMIG, I am the lead engineer: I own the Spring Boot API, the web portal and the desktop app in Angular and Electron, and the AWS infrastructure, versioned in Terraform and shipped by CI/CD.

I also teach Web Programming Techniques at a technical school, on a platform I built and operate myself. Having 73 students using the system during class raises the bar: migrations rehearsed against real data, deploys locked out of class hours, and the bare minimum of personal data, because they are minors.

Rogélio in a pinstripe suit with arms crossed, leaning on a palm tree, in black and white Rogélio in a pinstripe suit in front of an orange pillar

How I work

Infrastructure as code

InovaLayer's AWS (network, database, CDN, e-mail, alarms and cost ceiling) is provisioned in Terraform and reviewed in the plan before every apply.

Tests that prove the rule

InovaLayer's cost engine is validated against UFU's official spreadsheet: 24 of 24 line items, maximum error of 0.0024%.

Secure by default

At Razor, an audit closed three critical flaws before the pilot. The webhook is fail-closed and login attempts are rate limited.

Real database in tests

Integration with Testcontainers against real PostgreSQL and Redis in CI, not mocks. That is more than 1,500 tests across my projects.

Deploys without surprises

OIDC instead of static AWS keys, deploys through SSM with port 22 closed, and pg_dump before every migration.

Decisions written down

ADRs, C4 model and a context log in every project: the reason behind each choice is documented, not kept in someone's head.

Experience & Education

Current · Research & Innovation

Lead Engineer · InovaLayer

UFU · FAPEMIG grant

Technical lead of CostPro IL, the quoting platform for wire arc additive manufacturing (WAAM), in production: Spring Boot API, web portal and desktop app in Angular and Electron, and AWS infrastructure in Terraform, with alarms, backups, a cost ceiling and an auto-update channel for the desktop app.

Since Aug/2026

Teacher · Web Programming Techniques

Educare Araguari · Trilhas do Futuro program

An 80-hour course for two classes, 73 students. I plan the syllabus, write the material and built the platform they use in the classroom.

Aug/2026

Systems Analysis and Development

IMEPAC University Center

Bachelor's degree in software development, databases and systems engineering.

Collaboration

Developer · WireArc IL

WAAM toolpath software

I contribute to the toolpath generation software for wire arc additive manufacturing, a Python desktop application with GPU acceleration.

Technical skills

Java
Spring Boot
Angular
TypeScript
PostgreSQL
AWS
Terraform
Docker
GitHub Actions
JUnit
NestJS
Next.js
React
Node.js
Redis
Electron
Nginx
Thymeleaf
Python
MySQL
Tailwind CSS
Git

Projects

Five complete systems I designed and built, from the data model to the deploy. Two of them are in production. Four more projects at the end of this section

B2B SaaS · In production

CostPro IL · InovaLayer: quoting for additive manufacturing

Turns an industrial customer's request into a costed technical proposal for wire arc additive manufacturing (WAAM). Web portal for the customer, desktop app for engineering and an API, all running in production on AWS.

  • Auditable cost engine: validated against UFU's official spreadsheet, 24 of 24 line items matching, maximum error of 0.0024%. Every calculation in BigDecimal.
  • Infrastructure as code: 66 AWS resources in Terraform (VPC, EC2, RDS, S3, CloudFront, SES), ten alarms, a cost ceiling and an external health check.
  • Security under test: IDOR, forged JWT and rate limit cases, integration against real PostgreSQL, and a test that fails the PDF proposal if it ever exposes cost or margin.
Java 21 Spring Boot Angular 21 Electron PostgreSQL Terraform AWS GitHub Actions
InovaLayer logo: Wire Arc Additive Manufacturing Official video · inovalayer.com.br
Full Stack · In production · 73 students

Classroom System: a teaching platform

The platform I teach on: a code editor with live preview, quizzes with a real-time leaderboard and assignment delivery. It runs in the browser and on phones, because the lab machines do not allow installing anything.

  • Model panel: the lesson code sits beside the editor and every line typed correctly disappears, so the system knows exactly where each student stopped.
  • 487 tests and 95 Flyway migrations, with pg_dump before every migration and a time lock that prevents restarts during class.
  • Deploys by GitHub Actions with OIDC and SSM, no AWS keys stored and port 22 closed. When a migration took production down, the system was back in 12 minutes, with the defect reproduced before the fix.
Spring Boot 3.4 Java 21 Thymeleaf PostgreSQL + Flyway Docker AWS EC2 GitHub Actions Nginx
Classroom System architecture diagram: student, Nginx and the Spring Boot application on EC2, PostgreSQL with Flyway, volumes outside the image and deploys by GitHub Actions with OIDC and SSM.
From the student's browser to the database, and how the deploy reaches EC2 with no stored key.
Multi-tenant SaaS · AI

Razor: the barbershop operating system

The evolution of BarberBot: from a WhatsApp bot into a SaaS where each barbershop has an AI that answers, books and charges over WhatsApp, plus a web panel with schedule, cash register, commissions, inventory and a subscription club.

  • Legacy refactoring: a ~1,000-line central class became cohesive services, the empty catch blocks are gone, and conversation state moved from 12 in-memory maps to a StateStore port backed by Redis.
  • Fail-closed tenant isolation: a security audit closed three critical flaws before the pilot, among them a forgeable webhook and the pairing QR code exposed without login.
  • 486 tests, with integration against real PostgreSQL and Redis through Testcontainers in CI, and 34 Flyway migrations.
Java Spring Boot 3 React 18 + Vite PostgreSQL + Flyway Redis OpenAI (GPT-4o / Whisper) Testcontainers
Razor architecture diagram: WhatsApp and Evolution API, fail-closed webhook, Spring Boot API resolving the barbershop, services isolated by barbershop_id, PostgreSQL, Redis and OpenAI.
The two entry points (WhatsApp and panel) over the same core, isolated per barbershop.
Marketplace · Monorepo

ObraCerta: a construction marketplace

Connects construction professionals to the people hiring them, with scheduling, double-blind reviews, sealed bids on jobs and plan-based subscriptions. An end-to-end MVP, installable as a PWA.

  • Modular hexagonal/DDD monolith in NestJS, with 23 domain modules and shared Zod contracts: changing a contract breaks front and back at compile time.
  • Geographic and full-text search with PostGIS, pg_trgm and unaccent, BullMQ queues, idempotent payment webhooks and money stored in cents.
  • Observability and quality: Prometheus metrics, logs with a correlation id, more than 240 tests including integration against real Postgres, E2E with Playwright and WCAG AA accessibility.
Turborepo Next.js 15 NestJS PostgreSQL + PostGIS Redis / BullMQ Drizzle Zod
ObraCerta architecture diagram: browser and PWA, Next.js as a BFF with an httpOnly cookie, hexagonal NestJS API, PostgreSQL with PostGIS, Redis with BullMQ, S3 storage and Prometheus metrics.
The browser only talks to the BFF; the Zod contract in the middle breaks both sides at compile time.
B2B · Multi-tenant

DevFlow: financial management for IT projects

A platform to follow the financial health of IT contracts: timesheets, cloud and API costs, a real-time income statement and PDF reports.

  • Budget Guard: a project moves itself to warning at 80% of the budget and to over-budget at 100%.
  • Multi-tenant with RBAC: each company only sees its own data, with manager and developer roles on top of JWT.
  • Reproducible environment: Docker Compose with a seed that covers the warning and over-budget scenarios.
Angular 21 Spring Boot 4 Java 21 PostgreSQL 16 Docker JWT / RBAC Swagger
DevFlow architecture diagram: Angular panel, Spring Boot API with JWT and per-company isolation, Budget Guard with a warning at 80% and over-budget at 100%, PostgreSQL and PDF reports.
Where Budget Guard sits between logging hours and the income statement.

Other projects

Research, architecture studies and a live client website. Click an image to see the screens.

WireArc IL: 3D view of the deposition toolpath on the part, layer by layer See the screen
Collaboration · Research

WireArc IL

Desktop app that slices STL models, orders the toolpath by solving a travelling salesman problem (TSP) and generates the G-code for WAAM, with 3D visualisation and GPU acceleration.

Python · PyQt5 · PyVista · CUDA
Clinic Management in Angular: dashboard with the clinic's indicators See 4 screens
Frontend

Clinic Management in Angular

SPA in Angular 18 and PrimeNG with Typed Forms and RxJS: scheduling, patient records and medical charts.

Angular · TypeScript · PrimeNG · RxJS
Clinic Core API: diagram with the gateway, Eureka and the administrative, scheduling and care services on MySQL See architecture and screens
Backend

Clinic Core API

REST API in Java 17 and Spring Boot 3, as microservices with Spring Cloud, Spring Security and JWT protecting patient data, persisted in MySQL.

Java 17 · Spring Boot 3 · Spring Cloud · MySQL
Psychology Clinic: website home page See 4 screens
Real client · Live

Psychology Clinic

Website for a working clinic, in plain HTML, CSS and JavaScript on Vercel, focused on SEO and on turning a visit into a booking.

HTML · CSS · JavaScript · Vercel

Let's talk

I am open to full stack developer roles and to custom projects. The fastest way to reach me is WhatsApp.