B&A
Centillion Infotech LLC
Desenvolvedor(a) Core Java / Líder
Descrição da Vaga
Localização | N/A, Califórnia, Geórgia, Nova York
Duração | Longo prazo
Habilidades Técnicas
Core Java
- Java SE
- Programação orientada a objetos
- Coleções e generics
- Multithreading e concorrência
- Streams e expressões lambda
- Tratamento de exceções
- I/O e NIO em Java
- Arquitetura da JVM
- Gerenciamento de memória e coleta de lixo
- Serialização e reflexão
- Estruturas de dados e algoritmos
Desenvolvimento Backend
- APIs RESTful
- HTTP e JSON
- JDBC
- Spring e Spring Boot
- Microsserviços
- Autenticação e autorização
- Gerenciamento de transações
- Integração de serviços
Sobre a Função
Estamos em busca de um(a) Desenvolvedor(a) Core Java qualificado(a) para projetar, desenvolver, testar e manter aplicações Java de alto desempenho, escaláveis e confiáveis.
O(A) candidato(a) ideal terá uma base sólida em conceitos de Core Java, programação orientada a objetos, multithreading, estruturas de dados, padrões de projeto e desenvolvimento de aplicações corporativas.
O(A) profissional selecionado(a) colaborará com arquitetos, desenvolvedores, engenheiros de QA, equipes de DevOps, gerentes de produto e stakeholders de negócios para entregar soluções de software de alta qualidade.
Principais Responsabilidades
- Projetar, desenvolver e manter aplicações utilizando Core Java.
- Escrever código limpo, eficiente, reutilizável e de fácil manutenção.
- Aplicar princípios de programação orientada a objetos e padrões de projeto de software.
- Desenvolver aplicações multithread, concorrentes e de alto desempenho.
- Trabalhar com coleções, tratamento de exceções, generics, streams e expressões lambda em Java.
- Construir e consumir serviços web RESTful e APIs.
- Desenvolver componentes de aplicação modulares e escaláveis.
- Implementar lógica de negócios, validação, tratamento de erros e gerenciamento de transações.
- Trabalhar com bancos de dados relacionais e NoSQL.
- Escrever consultas SQL eficientes e otimizar interações com o banco de dados.
- Realizar testes unitários, de integração, funcionais e de regressão.
- Solucionar problemas de aplicação, vazamentos de memória, gargalos de desempenho e defeitos em produção.
- Participar de revisões de código e garantir a adesão aos padrões de codificação.
- Colaborar com equipes multifuncionais para entender os requisitos e entregar soluções.
- Contribuir com documentos de design técnico e planos de implementação.
- Integrar aplicações com pipelines de CI/CD.
- Dar suporte à implantação de aplicações, monitoramento e resolução de problemas em produção.
- Participar de cerimônias ágeis, planejamento de sprint, reuniões diárias (daily stand-ups), revisões e retrospectivas.
- Manter-se atualizado(a) com lançamentos de Java, práticas de desenvolvimento, ferramentas e tendências do setor.
Qualificações Necessárias
- Bacharelado em Ciência da Computação, Engenharia, Tecnologia da Informação ou área correlata.
- 10+ anos de experiência em desenvolvimento de software Java.
- Conhecimento sólido em Core Java, incluindo:
- Programação orientada a objetos
- Framework de coleções
- Tratamento de exceções
- Generics
- Multithreading e concorrência
- I/O e NIO em Java
- Streams e expressões lambda
- Gerenciamento de memória em Java
- Coleta de lixo (Garbage collection)
- Experiência com Java 8 ou superior.
- Forte compreensão de estruturas de dados, algoritmos e padrões de projeto.
- Experiência no desenvolvimento de APIs RESTful e serviços backend.
- Conhecimento de bancos de dados relacionais como Oracle, SQL Server, MySQL ou PostgreSQL.
- Experiência com SQL, JDBC e conceitos de ORM.
- Familiaridade com Maven ou Gradle.
- Experiência com Git ou outros sistemas de controle de versão.
- Compreensão de testes unitários usando JUnit, Mockito ou ferramentas equivalentes.
- Familiaridade com metodologias de desenvolvimento ágil/Scrum.
- Fortes habilidades analíticas, de depuração, comunicação e resolução de problemas.
Qualificações Desejáveis
- Experiência com Java 11, 17, 21 ou superior.
- Experiência com Spring, Spring Boot, Spring MVC, Spring Data ou Spring Security.
- Conhecimento de arquitetura de microsserviços.
- Experiência com tecnologias de mensageria como Kafka, RabbitMQ, JMS ou ActiveMQ.
- Familiaridade com Docker e Kubernetes.
- Experiência com plataformas de nuvem como AWS, Azure ou Google Cloud.
- Conhecimento de ferramentas de CI/CD como Jenkins, GitHub Actions, GitLab CI ou Azure DevOps.
- Experiência com bancos de dados NoSQL como MongoDB, Redis, Cassandra ou DynamoDB.
- Familiaridade com sistemas distribuídos, cache e arquitetura orientada a eventos.
- Experiência com ferramentas de monitoramento e observabilidade de aplicações.
- Conhecimento de práticas de codificação segura e segurança de aplicações.
- Experiência com ferramentas de teste de desempenho e profiling.
- Familiaridade com ambientes Linux/Unix e shell scripting.
Opções flexíveis de trabalho remoto disponíveis.
