Skip to content
pedrovilaca.dev
Read this page in Portuguese

pedro/online

Pedro Vilaça

Full-stack developer. Connecting things since 2017.

pedro/now

What I'm working on now

pedro/projects

Featured projects

From student research with ESP8266 to web tools and my own infrastructure.

pedro/projects/horta-inteligente
Horta Inteligente prototype set up on the table.

Horta Inteligente

ESP8266 with a soil moisture sensor publishing over MQTT, and a React Native app that shows soil moisture in real time and opens or closes the irrigation valve.

Stack: ESP8266 NodeMCU · Soil moisture sensor · MQTT (PubSubClient) · HiveMQ · React Native 0.62

IoTAcademic
pedro/projects/text-bubbles

text-bubbles

Open source npm library that turns text into interactive 2D Canvas particles: about 4 KB, zero dependencies, for plain JavaScript, React, or as <text-bubbles>.

Stack: TypeScript · Canvas 2D · Web Components · React · tsup

Web
pedro/projects/pse-image

pse-image

A visual image-processing environment: a pipeline of blocks (PGM, convolution, histogram) with the algorithms implemented from scratch.

Stack: React 19 · React Flow · Zustand · Vite · Bun

WebAcademic
pedro/projects/smartcampus

SmartCampus

Student assistant: a Telegram bot with AI and OCR, Canvas integration, on-campus location via Wi-Fi, and a REST API in Java with Spring Boot.

Stack: Java 21 · Spring Boot · JWT · PostgreSQL · Docker

IoTWebAcademic
pedro/projects/homelab

Homelab

A Ryzen 7 5700G with Ubuntu Server and about 22 Docker Compose containers: smart home with Mosquitto and Home Assistant, media, networking, and dev tools.

Stack: Ubuntu Server 26.04 · Docker Compose · WireGuard · Caddy · Pi-hole

InfraIoT
pedro/projects/quicksort-paa
Five charts, one per test dataset, showing the time reduction of the hybrid versions relative to the recursive Quicksort: between about 16% and 54%, largest at the smaller sizes.

Comparative study of Quicksort

Three Quicksort versions in C++17 tested on five datasets of 1,000 to 500,000 elements: hybrids up to 54% faster, theoretical worst case confirmed in practice.

Stack: C++17 · Make · Docker · Python (matplotlib, pandas) · LaTeX (ABNT)

Academic

pedro/projects/+

More projects

  • corporate-travel-onfly

    Corporate travel request system: Laravel API with JWT and tests, Vue.js front end, and a Docker environment.

  • DVRQ: Virtual Chemical Reactions Lab★ Selected by CEFET-MG's CIT

    A web-based virtual lab built in Scratch that simulates chemical reactions for Chemistry technical program classes, without the risks of toxic materials.

  • Enterprise network in Packet Tracer

    Headquarters, three branch offices, and a home office with VLSM, VLANs, NAT, ACLs, IPSec VPN, and OSPF, documented in a LaTeX paper.

  • convex

    PDF-to-XML converter with a Python API and a web interface.

  • portal-filmes

    A movie portal built first in plain HTML, CSS, and JavaScript, then migrated to React with MUI as a hands-on study of React and stack migration, without AI.

  • sinsitro-teste

    A mobile phone insurance claims portal built in minutes at an AI workshop, later the project I used to learn OpenSpec and a documented software lifecycle.

pedro/mqtt

MQTT, the common thread

Publish/subscribe is the model that runs through my career: a broker in the middle, clients publishing and subscribing to topics.

  1. CEFET-MG: student research

    NodeMCU (ESP8266) modules talking over MQTT and over CoAP, with the two compared with robot soccer in mind.

    Read the case study: CEFET-MG: student research
  2. PUC Minas: Horta Inteligente

    An ESP8266 publishes soil moisture every second; the React Native app subscribes to the topic and sends commands to open or close the irrigation valve.

    Read the case study: PUC Minas: Horta Inteligente
  3. Homelab

    Mosquitto as the home's broker, with Frigate and Home Assistant publishing and subscribing to events.

    Read the case study: Homelab
Publish/subscribe diagramAn MQTT broker at the center connected to three clients: the 2017 robot soccer project, the 2020 Horta Inteligente (smart garden), and the 2026 homelab. Messages flow between them.brokerrobotsNodeMCU ESP8266gardenESP8266 + apphomelabMosquitto + HA

pedro/career

Career

From the technical program at CEFET-MG to the systems I deliver today.

  1. pedro/education(education)

    CEFET-MG

    Computer Networks Technician

    Research with ESP8266 and MQTT under CEFET-MG's scientific initiation program, presented at the Science & Technology Week. Also part of the DVRQ team, whose project was selected by CEFET-MG's Technological Innovation Office (CIT) for software registration.

  2. pedro/milestone(milestone)

    DVRQ at META (CEFET-MG project exhibition)

    At META, CEFET-MG's project exhibition, I was part of the team behind DVRQ, a virtual chemical reactions lab built in Scratch. The project was selected by CEFET-MG's Technological Innovation Office (CIT) for software registration.

  3. pedro/work(work)

    Teknisa

    Full-Stack Developer

    New features and system maintenance across the front end and back end, with PHP, Oracle, and an in-house Angular-based framework.

  4. pedro/education(education)

    PUC Minas

    Computer Engineering

    Projects in IoT, image processing, networking, and algorithms: Horta Inteligente, SmartCampus, pse-image, and the Quicksort comparative study.

  5. pedro/work(work)

    Teknisa

    Full-Stack Developer

    Planning, development, and delivery of a new trading platform for the food industry, focused on wholesale and logistics, built with React and Laravel. Technical leadership and supervision of junior developers.

  6. pedro/work(work)

    Framework Digital

    Systems Development Analyst

    Projects for clients such as Hermes Pardini, Líder Aviação, Grupo Zelo, and Supermix, adapting delivery to each client's context: Java (Spring Boot) and Angular web applications, REST APIs, and AWS/Azure cloud.

  7. pedro/work(work)

    Prime Results

    Full-Stack Developer

    .NET/C# services (BFF and commercial hub), Salesforce CRM integration, MySQL on AWS RDS, and Azure DevOps.

pedro/stack

Stack

What I use day to day, what I've taken to production, and what runs in my lab.

Today

  • C#/.NET
  • Java/Spring Boot
  • TypeScript
  • React
  • Angular
  • Node
  • Salesforce

Used in production

  • PHP/Laravel
  • Vue
  • Oracle PL/SQL
  • MySQL
  • PostgreSQL
  • SQL Server

Infra

  • Docker
  • Linux
  • AWS
  • Azure
  • Cloudflare
  • Caddy
  • WireGuard

IoT

  • ESP8266/ESP32
  • MQTT/Mosquitto
  • Home Assistant

AI in my workflow

  • Claude Code
  • OpenCode
  • OpenSpec
  • Ollama

pedro/certifications

Certifications

  • Red Hat System Administration I (RH124)

    Red Hat Academy · PUC Minas

  • Digital Safety and Security Awareness

    Cisco Networking Academy · PUC Minas

pedro/contact

Let's talk

The fastest way to reach me is by email.