#0 jotave.dev · Full-Stack Developer · UTFPR · Nobuntu Tecnologia

João VictorPiloni

I build APIs and tools with NestJS, TypeScript, Angular and GCP. I like solving problems with clean code and well-thought-out solutions, from backend to infrastructure.

bash · ~
$ whoamijotave$ cat stack.txtnestjs · typescript · angular · postgresql · gcp

#1 About

From backend to infra

Portrait of João Victor Piloni Vilhegas, processed with dithering
Algorithm
Switch the dithering algorithm applied to the portrait. Floyd–Steinberg

I'm João Victor Piloni Vilhegas, or just jotave. A Computer Science graduate from UTFPR, I work as a Full-Stack developer at Nobuntu Tecnologia, building APIs and tools with NestJS, TypeScript, Angular and Google Cloud.

I like solving problems with clean code and well-thought-out solutions. That covers the whole path: modelling the database, designing the API, building the interface and keeping the infrastructure up in production, highly available when the system calls for it.

After hours I keep my own projects going: a game that helps cats get adopted, a GitHub App that automates the flow from issue to release, and an IoT pallet tracker. Each one started with the same question: can this be done better?

Facts

Education
Computer Science · UTFPR
Currently
Full-Stack Developer · Nobuntu Tecnologia
Focus
APIs, internal tools and infrastructure on GCP
Daily stack
NestJS · TypeScript · Angular · PostgreSQL

#2 Projects

Things I've built

Five projects, from a custom system running in production to an experiment with sensors. Screenshots go through the same dithering as the rest of the site.

Auction lots screen of the ERP, dithered#2.1

#2.1

ERP de Leilão de Gado

Custom cattle auction management system, running in production on high-availability infrastructure.

  • Java Spring Boot
  • Angular
  • PostgreSQL
  • Redis
  • RabbitMQ
  • GCP
  • Docker
  • EvolutionAPI
Private
  • Meawdle game screen, dithered#2.2

    Meawdle

    #2.2

    Cat-themed Wordle connected to an adoption NGO, giving visibility to cats still waiting for a home.

    • NestJS
    • Prisma
    • PostgreSQL
    • Redis
    • Angular 18
    • Puppeteer
    • GitHub Actions
  • Hero of the nutritionist landing page, dithered#2.3

    LP Nutricionista

    #2.3

    Landing page for a nutritionist with a small audit backend that tracks visits and contact clicks: who clicked and through which channel.

    • HTML
    • CSS
    • TypeScript
  • $ kanban-provisioner --watch[webhook]  issues.opened          #142[graphql]  createRef              feature/142[graphql]  createPullRequest      #143 → main[webhook]  pull_request.merged    #143[graphql]  createRelease          v1.8.0[ok]       issue → branch → pr → release
    #2.4

    Kanban Provisioner

    #2.4

    GitHub App that automates the Issue → Branch → PR → Release flow through webhooks and the GitHub GraphQL API.

    • NestJS
    • Cloud Run
    • GitHub GraphQL API
    • Webhooks
    Private
  • LogTrack dashboard, dithered#2.5

    LogTrack

    #2.5

    Automatic tracking of batches and pallets over IoT: sensors and microcontrollers talk directly to the API.

    • IoT
    • Microcontroladores
    • RFID UHF
    • Next.js

#3 Stack

Tools

What I use every day and what I have already shipped to production.

  • #3.1 Languages

    • TypeScript
    • JavaScript
    • Python
    • SQL
  • #3.2 Back-end

    • NestJS
    • Node.js
    • Java (Spring Boot)
    • REST APIs
    • Microsserviços
    • RabbitMQ
    • Redis
  • #3.3 Front-end

    • Angular
    • RxJS
    • Next.js
    • HTML
    • CSS
  • #3.4 Databases

    • PostgreSQL
    • MongoDB
    • Prisma
    • TypeORM
  • #3.5 DevOps & Cloud

    • Docker
    • Git
    • GitHub Actions
    • GitHub Apps / API
    • Linux (PopOS User Btw)
    • GCP
    • AWS
  • #3.6 Other

    • Puppeteer
    • EvolutionAPI (WhatsApp)
    • IoT / RFID UHF
    • Microcontroladores

#4 Contact

Let's talk

No forms. Pick a channel and reach out.

bash · ~
$ curl -s jotave.dev/contact{  "handle":   "jotave",  "email":    "jvpiloni@gmail.com",  "linkedin": "in/joaopiloni",  "github":   "JotaveX"}