Skip to content
View EndriwEngSoft's full-sized avatar
🎯
Focusing
🎯
Focusing

Highlights

  • Pro

Block or report EndriwEngSoft

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.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. 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
EndriwEngSoft/README.md

Endriw Colvara Bento

Desenvolvedor backend Java em formação. Estudante de Engenharia de Software na Estácio, no 6º de 8 períodos. Busco estágio ou vaga júnior em backend Java.

Construo APIs REST com Java 21 e Spring Boot, com atenção a segurança, testes automatizados e deploy. Moro em Cerrito, RS (região de Pelotas).


Projeto em destaque: LifeSync API

CI

API de produtividade pessoal com tarefas e subtarefas, hábitos com streak e histórico, e metas com progresso. Está em produção no Render, com banco PostgreSQL no Neon.

Repositório · Testar no Swagger (o primeiro acesso pode levar cerca de 1 minuto para acordar o servidor)

Decisões técnicas:

  • Proteção contra IDOR: toda consulta é filtrada por (id, userId). Recurso de outro usuário retorna 404, não 403, para não revelar que existe. Os IDs são UUID, não sequenciais.
  • JWT com access e refresh tipados: um refresh token vazado não autentica rotas protegidas.
  • Check-in no fuso do usuário: o "hoje" vem de um Clock injetado, não do fuso do servidor. Check-in duplicado é bloqueado no serviço e por uma constraint UNIQUE no banco, que cobre requisições simultâneas.
  • Schema versionado: migrations com Flyway e ddl-auto: validate, conferidos por um teste de integração com Testcontainers contra PostgreSQL real.

Java 21 · Spring Boot 4.1 · Spring Security · JPA/Hibernate · PostgreSQL · Flyway · 65 testes (JUnit 5, Mockito, Testcontainers) · GitHub Actions · Docker


Outros projetos

  • FinanceSync API: API de finanças pessoais com conversão de moeda via API externa (Frankfurter). A cotação usada fica salva com a transação, e uma falha da API externa retorna 503. Docker multi-stage, manifestos Kubernetes (Kustomize) e 102 testes.
  • TaskFlow API: API de tarefas com JWT stateless, isolamento por usuário, tratamento global de exceções e Swagger.
  • Chess System: xadrez no terminal em Java puro, com roque, en passant, promoção e xeque-mate. Projeto de estudo de orientação a objetos.

Estudos: JPA/Hibernate · MongoDB · JDBC e padrão DAO


Stack

  • Backend: Java 21, Spring Boot, Spring Security, JWT, JPA/Hibernate, Bean Validation
  • Bancos: PostgreSQL, MongoDB, Flyway
  • Testes: JUnit 5, Mockito, MockMvc, Testcontainers
  • Ferramentas: Maven, Docker, GitHub Actions, Git, Swagger/OpenAPI

Certificados


Contato

LinkedIn · endriwbento@gmail.com · Portfólio

Pinned Loading

  1. financesync-api financesync-api Public

    API REST de finanças pessoais: contas, categorias e transações isoladas por usuário. Java 21, Spring Boot, JWT, PostgreSQL, Docker multi-stage e manifestos Kubernetes (Kustomize).

    Java

  2. taskflow-api taskflow-api Public

    API REST de tarefas com autenticação JWT stateless: cada usuário acessa só as próprias tarefas. Tratamento global de exceções e documentação Swagger/OpenAPI. Java, Spring Boot, PostgreSQL.

    Java

  3. chess-system chess-system Public

    Xadrez jogável no terminal em Java puro, sem bibliotecas externas: roque, en passant, promoção e xeque-mate. Projeto de estudo de POO (herança, polimorfismo, encapsulamento).

    Java

  4. lifesync-api lifesync-api Public

    API REST de produtividade pessoal: tarefas com subtarefas, hábitos com streak e histórico, metas com progresso. Java 21, Spring Boot 4.1, JWT, PostgreSQL e Flyway. Em produção no Render + Neon.

    Java