Skip to content
View erichiroshi's full-sized avatar
🚀
🚀

Block or report erichiroshi

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
erichiroshi/README.md

Eric Hiroshi

Backend Engineer | Java | Spring | Arquitetura Hexagonal | Mensageria | Observabilidade


Sobre

Desenvolvedor backend com foco em Java e Spring Boot, construindo sistemas que vão além do CRUD: autenticação JWT stateless, mensageria assíncrona com RabbitMQ, resiliência com Resilience4j, observabilidade full stack e arquitetura de microsserviços com Spring Cloud.

Formado em Engenharia de Software e Análise e Desenvolvimento de Sistemas pelo Centro Universitário da Grande Dourados. Construo projetos de portfólio com padrões de produção — com CI/CD, testes de integração, Docker Compose e documentação — porque acredito que código sem contexto operacional não comunica capacidade real.


Stack principal

Linguagens & Frameworks

Java Spring Boot Spring Security Spring Data JPA Spring Cloud Spring AI

Mensageria & Integração

RabbitMQ OpenFeign RestClient

Persistência

PostgreSQL Redis Flyway H2

Observabilidade

Prometheus Grafana Zipkin OpenTelemetry

Resiliência & Segurança

Resilience4j JWT OpenAPI

Infra & DevOps

Docker AWS S3 GitHub Actions Git

Testes

JUnit 5 Testcontainers MockWebServer


Projetos em destaque

🎙️ speech-ai-hexagonal — Plataforma Backend de Transcrição e Análise de Áudio

API REST de speech-to-text construída com Arquitetura Hexagonal, em fases evolutivas com foco em qualidade de produção. Integra Whisper via Speaches, Spring AI + Ollama e notificações multicanal.

Fase O que foi construído
Fase 1 Arquitetura Hexagonal desde o início: domínio puro, portas/adapters, RestClient, ProblemDetail RFC 9457, Docker Compose
Fase 2 Qualidade de código: SonarQube + JaCoCo (threshold 60%), Codecov, pipeline CI integrado
Fase 3 Persistência: PostgreSQL + JPA + Flyway, deduplicação por hash SHA-256, portas desacopladas do ORM
Fase 4 Cache Redis com chave SHA-256 do conteúdo binário, TTL configurável, testes com Testcontainers
Fase 5 Resiliência: CircuitBreaker + Retry com backoff exponencial + Bulkhead, testes com WireMock
Fase 6 Observabilidade: Prometheus, Grafana (dashboards provisionados via código), Zipkin/OTel, logs JSON + MDC
Fase 7 Testes arquiteturais com ArchUnit validando regras da Arquitetura Hexagonal no pipeline
Fase 8 Spring AI + OpenAI Whisper como segunda porta de saída, seleção por profile/config
Fase 9 Spring AI + Ollama para resumo de transcrições, novo bounded context analysis/, cache Redis para resumos
Fase 10 Mensageria RabbitMQ: EventPublisherPort, consumer de auditoria, DLQ, testes com Testcontainers
Fase 11 Notificações multicanal via eventos RabbitMQ: e-mail, SMS e WhatsApp

Destaques técnicos:

  • Domínio 100% livre de Spring — use cases testáveis sem contexto, portas são interfaces Java puras
  • Cache SHA-256 do conteúdo binário → mesmo áudio com nomes diferentes acerta o cache · hit em ~15ms vs ~800ms sem cache
  • Dois adapters de transcrição intercambiáveis (Speaches local / OpenAI cloud) via @ConditionalOnProperty — use case não muda uma linha
  • Dois bounded contexts hexagonais independentes: transcription/ e analysis/
  • Testes arquiteturais com ArchUnit garantem que nenhuma camada viola as fronteiras hexagonais no CI
  • CircuitBreaker + Retry + Bulkhead (Resilience4j) com WireMock simulando falhas reais do Speaches

🔗 GitHub · 🌐 Documentação · 🗺️ Roadmap

Java Spring Boot Spring AI Ollama RabbitMQ Redis Resilience4j SonarQube ArchUnit Prometheus Grafana Zipkin PostgreSQL Flyway WireMock Docker Compose Testcontainers OpenAPI 3.1


📚 library-api — API de gerenciamento de biblioteca

API REST evoluída do monolito para microsserviços com Spring Cloud, com foco em arquitetura, segurança e observabilidade.

Fase O que foi construído
Fase 1–2 Monolito com JWT stateless, upload AWS S3, Redis cache, Resilience4j, Flyway migrations
Fase 3 Microsserviços: Config Server, Eureka, API Gateway com validação JWT centralizada, OpenFeign com Circuit Breaker
Fase 4 Mensageria RabbitMQ, testes de carga com k6/JMeter (monolito vs microsserviços)

Destaques técnicos:

  • Gateway como único ponto de entrada: valida JWT e propaga X-User-Id / X-User-Roles para os serviços internos
  • Config Server com Git backend para configuração centralizada e versionada
  • Observabilidade full stack: Prometheus · Grafana · logs estruturados
  • CI/CD com GitHub Actions: matrix strategy para build paralelo dos serviços, Docker multi-stage

🔗 GitHub

Java Spring Boot Spring Cloud Spring Security PostgreSQL Redis RabbitMQ Flyway AWS S3 Docker Compose GitHub Actions Prometheus Grafana


Outros projetos

Repositório Descrição Stack
upload-s3 Estudo de integração com AWS S3: upload, download e exclusão de arquivos Java, Spring, AWS SDK
envio-de-email Estudo de envio de e-mails transacionais com templates HTML Java, Spring Mail
mapstruct-com-lombok Estudo de mapeamento de DTOs com MapStruct + Lombok Java, MapStruct

Formação

Engenharia de Software — Centro Universitário da Grande Dourados
Tecnologia em Análise e Desenvolvimento de Sistemas — Centro Universitário da Grande Dourados


Contato

Aberto a oportunidades como Backend Engineer, Java Developer ou Spring Boot Developer.

📧 erichiroshi@hotmail.com · 💼 linkedin.com/in/eric-hiroshi

Pinned Loading

  1. library-api library-api Public

    API REST completa para gerenciamento de biblioteca com Spring Boot e Java 25. Inclui autenticação JWT, cache Redis, observabilidade (Prometheus/Grafana), Docker Compose e CI/CD.

    Java

  2. dscatalog dscatalog Public

    Migração de monolito para microservices com Spring Cloud (Eureka, API Gateway, Config Server). Demonstra discovery, roteamento e configuração centralizada em Java/Spring Boot.

    Java

  3. toshiro-shibakita-dio toshiro-shibakita-dio Public

    Forked from denilsonbonatti/toshiro-shibakita

    Docker: Utilização prática no cenário de Microsserviços. Docker, PHP, MySQL e Nginx. Desenvolvido durante o bootcamp Accenture - Desenvolvimento Java & Cloud em parceria com a DIO.

    PHP

  4. desafio-backend-picpay desafio-backend-picpay Public

    Resolução do desafio backend do PicPay

    Java

  5. board-dio board-dio Public

    Forked from digitalinnovationone/board

    Projeto de board para gerenciamento de tarefas, implementado em Java, desenvolvido durante o bootcamp CI&T - Backend com Java & AWS em parceria com a DIO.

    Java

  6. desafio-backend-backendbrasil-cryptography desafio-backend-backendbrasil-cryptography Public

    Resolução do desafio de Criptografia proposto pelo Back-End Brasil.

    Java