Propostas Submetidas

DEI - FCTUC
Gerado a 2024-04-26 04:57:49 (Europe/Lisbon).
Voltar

Titulo Estágio

Golang Code Quality and Performance Improvement

Áreas de especialidade

Engenharia de Software

Local do Estágio

Lisbon, Portugal

Enquadramento

A EBS (Emvenci Business Services) desenvolve uma plataforma SaaS de cibersegurança com diversos módulos, desde um simulador de phishing, a formação em cibersegurança (elearning), um gestor de politicas de segurança, plataforma de registo dos requisitos do RGPD (Regulamento Geral de Proteção de Dados), um gestor de vulnerabilidades e uma plataforma de centralização e gestão de logs.

À medida que a empresa e a plataforma vão crescendo, é cada vez mais importante garantir a qualidade do código, assim como o seu desempenho, escalabilidade, manutenção e testagem.

Objetivo

A plataforma da EBS tem todo o seu backend desenvolvido em Golang e é nestes serviços que este projeto se centra. Pretende-se que inicialmente haja uma fase de análise do código existente ao nível de qualidade e desempenho das várias funcionalidades, seguido de um plano de implementação de alterações e possíveis refatorações. O plano poderá ter várias iterações consoante a implementação e resultados obtidos do mesmo. O objetivo será no final poder comparar os resultados de cada iteração e acabar com um software mais fiável e menos complexo.

Objetivos
- Rever e analisar o código existente de acordo com as melhores práticas e conhecidas métricas;
- Definir um plano de execução ao nível do código e dos testes necessários;
- Implementar, testar e concluir.

Plano de Trabalhos - Semestre 1

Análise
- Conhecer e rever a plataforma existente;
- Analisar desempenho e arquitetura atuais;
- Integrar-se nas medidas de qualidade e boas práticas de desenvolvimento de software;
- Levantar uma lista de trabalhos e pontos a melhorar e/ou desenvolver.

Desenho
- Encontrar soluções e formas de melhorar o código atual;
- Estruturar e desenhar as soluções, tendo em atenção o desenvolvimento concorrente do resto da equipa;
- Definir tarefas e nível de esforço de modo a planear e organizar em Sprints de desenvolvimento.

Relatório
- Desenvolver o relatório de projeto (intermédio)

Plano de Trabalhos - Semestre 2

Implementação
- Executar o desenho e planeamento definido;
- Participar ativamente no código desenvolvido pela equipa de desenvolvimento, na forma de reuniões e code reviews.

Testes
- Testar e analisar as mudanças feitas;
- Desenvolver testes unitários para o codigo desenvolvido sempre que aplicável, para garantir a qualidade do código da plataforma;
- Efetuar melhorias necessárias assentes no feedback.

Relatório
- Desenvolver o relatório de projeto final

Condições

As condições serão negociadas caso a caso, tipicamente ou por intermédio de estágio ou bolsa quando possível. Os valores rondam os 750/800€.

Observações

O orientador final será atribuido numa fase posterior pelo empresa, dependo da recurso e equipa atribuida.

Existe a opção de estágio remoto, mas deverá ser analisada em fase de seleção do candidato.

Orientador

Alexandre Miguel Coelho Aniceto
aaniceto@emvenci.com 📩