Desenvolvedor Sênior de Software
Descrição do Cargo
O candidato ideal deve ter experiência em desenvolver soluções escaláveis e seguras para sistemas distribuídos.
Responsabilidades Principais
* Arquitetura de Software: Definir e implementar arquiteturas de software baseadas em padrões consolidados como Microservices, Domain-Driven Design (DDD), SOA, MVC e diversos Design Patterns.
* Desenvolvimento: Desenvolver e otimizar aplicações em Java, com uso avançado dos frameworks Spring, Spring Boot e Hibernate.
* APIs e Integração: Projetar e construir APIs RESTful, gRPC e SOAP, assegurando integração eficiente, segura e de alta performance entre sistemas distribuídos.
* Monitoramento e Desempenho: Realizar monitoramento de desempenho e tuning de aplicações Java, com foco em profiling e otimização de JVM.
* Bancos de Dados: Projetar e otimizar bancos de dados relacionais (Microsoft SQL Server, MySQL, PostgreSQL) e NoSQL (MongoDB), com atenção à modelagem, performance e escalabilidade.
* Segurança Aplicacional: Aplicar práticas avançadas de segurança em aplicações Java, incluindo Secure Coding, uso de Spring Security e mitigação de vulnerabilidades conforme OWASP Top Ten.
* CI/CD: Construir pipelines de CI/CD utilizando ferramentas como Azure DevOps e Jenkins, promovendo entregas contínuas e automatizadas.
Requisitos Técnicos Obrigatórios
* Certificação: Certificação Microsoft Certified: Azure Solutions Architect Expert ou Certified Professional in Software Architecture (CPSA).
Conhecimentos Técnicos Desejáveis
* Arquitetura de Software: Arquitetura orientada a eventos, sistemas distribuídos, mensageria com RabbitMQ.
* Java: Proficiência avançada com versões recentes da linguagem, incluindo monitoramento e performance tuning.
* Bancos de Dados: Modelagem, otimização, tuning e integração de soluções SQL e NoSQL.
* CI/CD: Automação de pipelines com Azure DevOps e Jenkins.
* Contêineres: Docker, Kubernetes, práticas de segurança e observabilidade.
* Cloud Computing: Azure, GCP e AWS, com domínio de IaC (Terraform, Ansible).
* Front-end: Angular, React, JavaScript, TypeScript, HTML5, CSS3.
* Testes Automatizados: Selenium, Robot, Cypress, integrados a pipelines.
Ambiente de Trabalho
O ambiente de trabalho é remoto, com horário flexível.
A empresa valoriza a diversidade e inclusão em sua força de trabalho.