Descrição da vagaDesenvolver e sustentar funcionalidades de software, que agreguem valor ao produto, garantindo a satisfação do cliente dentro do segmento de atuação.Responsabilidades e atribuiçõesDesenvolver soluções técnicas de média e alta complexidade, com baixo nível de supervisão e pouco apoio, através do desenvolvimento de requisitos de softwares utilizando-se das tecnologias back-end envolvidas no projeto; Conhecer a fundo a arquitetura back-end do software e ser capaz de atuar nela através da análise de seus componentes, organização e funcionalidades; Criar testes de alta complexidade, sejam estes manuais ou automatizados, que cubram o comportamento desejado dos componentes técnicos desenvolvidos utilizando os requisitos e ferramentas de testes; Documentar as etapas de desenvolvimento realizando o registro nas ferramentas de versionamento e documentação; Orientar e trabalhar com o time de desenvolvimento para encontrar soluções de negócio, arquitetura e desenho através da comunicação e trocas de conhecimento; Manter a qualidade do software verificando os processos, ferramentas e boas práticas disponíveis para o produto e tecnologia utilizados; Orientar desenvolvedores de menor senioridade apoiando suas dúvidas, disseminando seu conhecimento, desenhando e arquitetando soluções ou indicando documentação de apoio; Detalhar requisitos de média através do contato com clientes e áreas envolvidas no projeto/atendimento; Cria frameworkse necessário para o desenvolvimento de suas soluçõesRequisitos e qualificaçõesJAVA, nível avançado; Spring, nível avançado; MicroServiços, nível avançado; Testes unitários - nível avançado; Métodos ágeis de desenvolvimento de software – desejável nível intermediário; Sistemas distribuídos e escalabilidade – nível intermediário.Residir em Joinville ou São Paulo.Requisitos desejáveisConhecimento em Angular; Comunicação assíncrona entre serviços (RabbitMq); Arquitetura Hexagonal; Conhecimento domercado de logística; Conhecimento prático de modelagem DDD; Conhecimento prático de DevOps; Projetos disponíveis para avaliação no Git.Aplicação de testes unitários de forma automatizada com JUnit com mockito.