Principais Atividades e Desafios:
Assegurar que as aplicações sejam projetadas e construídas com base em princípios de arquitetura sólida, utilizando as melhores práticas e tecnologias disponíveis, garantindo:
• Escalabilidade: Capacidade de lidar com picos de demanda e crescimento futuro, garantindo performance e resposta rápida.
• Resiliência: Projetar para a recuperação de falhas. Isso inclui redundância, failover, monitoramento proativo e estratégias de recuperação.
• Segurança: Proteção de dados e sistemas contra ameaças, garantindo a integridade e confidencialidade da informação. Implementar autenticação, autorização, criptografia e mecanismos de proteção contra ataques.
• Manutenibilidade: Facilidade de atualização, correção de erros e implementação de novas funcionalidades.
• Padrões Arquiteturais: Escolher padrões adequados, como microsserviços, monolitos, SOA ou serverless. Considerar trade-offs entre simplicidade e flexibilidade.
REQUISITOS
Os conhecimentos técnicos considerados como critérios balizadores para a seleção dos profissionais consistem (mas não se limitam à):
• Construir projetos FrontEnd ou BackEnd utilizando uma linguagem de programação convencional há mais de 8 anos (preferencialmente AngularJS, .NET ou C#);
• Conhecer técnicas e metodologias para a definição da Arquitetura nos distintos domínios (Negócios, Dados, Sistemas e Tecnologias) através do mapeamento de requisitos funcionais e não-funcionais;
• Conhecer frameworks de mercado que fomentem a governança e reutilização dos artefatos arquiteturais mantendo essa prática viva e flexível à evoluções sempre que for necessária;
• Aplicar testes (Unitário, Integração e carga/performance) há pelo menos 3 anos e conhecer testes de mutação e E2E;
• Saber utilizar alguma ferramenta/processo de Integração e Entrega Contínua e Configuração de Código (Preferencialmente GitLab, Jenkins ou AzureDevops) há pelo menos 2 anos;