Descrição
**Objetivo**
------------
Atuar no desenvolvimento e evolução de aplicações utilizando Java e Kotlin, contribuindo para a construção de soluções eficientes, escaláveis e de qualidade. Participar do ciclo de desenvolvimento de software, aprendendo e aplicando boas práticas de programação, testes e arquitetura, sempre com apoio do time técnico.
**Responsabilidades e atribuições**
-----------------------------------
* Desenvolver, testar e realizar manutenção em aplicações utilizando Java e Kotlin.
* Auxiliar na implementação de novas funcionalidades e melhorias nos sistemas existentes.
* Participar da análise de requisitos e apoiar na definição de soluções técnicas.
* Criar e executar testes unitários e de integração, garantindo a qualidade das entregas.
* Contribuir com a evolução da arquitetura das aplicações seguindo os padrões definidos pelo time.
* Apoiar na criação de documentações técnicas e no compartilhamento de conhecimento.
* Participar de revisões de código, aprendendo e contribuindo com boas práticas de desenvolvimento.
* Auxiliar na identificação e correção de problemas de performance e estabilidade das aplicações.
* Trabalhar em conjunto com outras áreas e equipes para garantir a entrega de soluções eficientes.
* Zelar pela organização do ambiente de trabalho e pelos recursos disponibilizados pela empresa.
* Buscar evolução técnica contínua por meio de estudos, treinamentos e troca de conhecimento com outros colaboradores.
**Requisitos**
--------------
* Conhecimento em Java 17\+ e fundamentos de Kotlin.
* Conhecimento básico de frameworks como Micronaut ou Quarkus.
* Noções de autenticação e autorização utilizando OAuth e JWT.
* Conhecimentos de orientação a objetos, princípios SOLID e boas práticas de desenvolvimento.
* Conhecimento básico em arquitetura de software e conceitos de sistemas distribuídos.
* Noções de programação assíncrona utilizando Java Virtual Threads ou Kotlin Coroutines.
* Experiência com criação de testes unitários (JUnit, TestNG) e interesse em testes de integração.
* Conhecimento no desenvolvimento de APIs REST.
* Conhecimentos básicos de ambientes em nuvem (AWS), como EC2, ECS, EKS, ECR e Load Balancers.
* Conhecimento em Docker e conceitos de conteinerização.
* Conhecimento em banco de dados relacional, especialmente MySQL.
* Experiência com controle de versão utilizando Git.