Programador Sênior ( Emprego )

A NCR Angola está a recrutar um(a) Programador(a) Sénior de Desenvolvimento de Software, responsável pelo desenvolvimento de aplicações e sistemas informáticos, com capacidade para liderar projectos, resolver problemas complexos e orientar outros membros da equipa. Deve possuir uma visão estratégica da tecnologia e compreender o impacto do seu trabalho nos negócios.


Conhecimentos Específicos:


  • Formação Superior em Engenharia Informática ou numa área similar;

  • Experiência prévia de 5 anos em projectos com desenvolvimento em .NET (C#, ASP.Net ou ASP.Net MVC) ou em funções similares;

  • Experiência em Team Foundation/ DevOps e Github

  • Conhecimentos de Entity Framework, Azure/ AWS e .Net Core;

  • Conhecimentos JavaScript, Json, HTML and CSS (Bootstrap);

  • Capacidade de implementar e monitorizar projectos, e identificar soluções alternativas;

  • Valoriza-se os conhecimentos em WebServices (SOAP, REST);

  • Valoriza-se os conhecimentos em Telerik;

  • Valoriza-se experiência prévia em desenvolvimento de aplicações ERP;

  • Alto nível de inglês, escrito e falado;

  • Privilegia-se candidatos com experiência de trabalho em Angola.


Principais Responsabilidades:

Desenvolvimento de Software


  • Elaborar Código de Qualidade: Criar soluções eficientes e escaláveis, implementando boas práticas de codificação e design;

  • Desenvolvimento de Aplicações e APIs: Projetar e implementar sistemas de backend (APIs RESTful, microserviços, etc.), aplicações desktop, ou até soluções móveis, dependendo do contexto;

  • Revisão e Aperfeiçoamento de Código: Melhorar e otimizar o código existente, garantindo legibilidade, desempenho e manutenibilidade.


Arquitetura de Software


  • Definir Arquitetura de Sistemas: Propor e definir arquiteturas para sistemas de grande escala, incluindo decisões sobre tecnologias, frameworks, e padrões de design (como MVC, DDD, CQRS, etc.).

  • Escolher Ferramentas e Frameworks: Selecionar as melhores tecnologias para o desenvolvimento (ex: .NET Core, Entity Framework, Xamarin, ASP.NET, etc.).

  • Escalabilidade e Performance: Planear a escalabilidade dos sistemas para lidar com grandes volumes de usuários ou dados.


Liderança Técnica


  • Gestão e Formação de Equipe: Ajudar os programadores juniores e plenos, fornecendo orientações técnicas e compartilhando boas práticas.

  • Rever e Aprovar de Código: Realizar code reviews, garantindo a qualidade do código, aderência às melhores práticas e padronização do código.

  • Coordenação de Tarefas: Ajudar no planear e distribuição das tarefas dentro da equipe.


Testes e Qualidade


  • Apoiar a Cultura de Testes: Incentivar práticas de TDD (Test-Driven Development) e testes automatizados em toda a equipe.

  • Monitoramento e Manutenção de Código: Manter e aprimorar o código existente, corrigindo erros e melhorando sua estabilidade.


Integração Contínua e Deploy


  • Configuração de Pipeline de CI/CD: Implementar e manter pipelines de integração e entrega contínua, utilizando ferramentas como Microsoft DevOps.

  • Gerenciamento de Versões e Deploy: Gerenciar versões do código, garantindo que as versões sejam entregues com qualidade e sem problemas.


Análise e Resolução de Problemas Complexos


  • Diagnóstico de Problemas de Performance: Analisar e resolver problemas de desempenho de aplicações, realizando profiling e tuning do código.

  • Resolução de Bugs: Actuar de forma rápida na identificação e resolução de bugs críticos ou problemas em produção.


Interação com Stakeholders


  • Entendimento das Requisitos do Negócio: Trabalhar com analistas de negócios, Product Owners e outros stakeholders para garantir que os requisitos técnicos estejam alinhados com as necessidades do negócio.

  • Proposta de Soluções Técnicas: Traduzir problemas de negócio em soluções técnicas adequadas, sempre buscando a melhor abordagem para o sucesso do projeto.


Documentação


  • Documentação Técnica: Manter a documentação do sistema, desde a arquitetura até a documentação do código e das APIs.

  • Documentação de Processos: Criar e manter manuais e processos internos, especialmente aqueles relacionados a build, deploy e integração.


Actuação em Metodologias Ágeis


  • Participação em Scrums e Sprints: Trabalhar em ciclos ágeis de desenvolvimento, participando de reuniões diárias, revisões de sprint e planejamento de tarefas.

  • Adaptação às Mudanças: Estar sempre disposto a adaptar soluções e práticas à medida que novos requisitos surgem ou quando melhorias são necessárias

COMO SE CANDIDATAR:

Para te candidatares a esta vaga, Clique Aqui!

Identificador da Vaga: 681305
Visão Geral

Localização: Luanda - Luanda

Publicado: 26/09/2025