Propostas Submetidas

DEI - FCTUC
Gerado a 2024-07-17 11:29:27 (Europe/Lisbon).
Voltar

Titulo Estágio

Framework de Observabilidade para Sistemas Cloud

Áreas de especialidade

Engenharia de Software

Sistemas de Informação

Local do Estágio

Remote / Presencial (a empresa tem escritórios em Coimbra, Aveiro, Porto, Leiria, Lisboa, Belmonte)

Enquadramento

Nos últimos anos, temos assistido a uma tendência das organizações moverem os seus produtos para ambientes Cloud, tentando tirar o máximo partido da computação em cloud para criar sistemas de alta disponibilidade cada vez mais resilientes. No entanto, este tipo de sistemas aumentam a complexidade de lidar com falhas inesperadas e de garantir a resiliência devido ao elevado número de componentes, sendo particularmente complexo garantir observabilidade sobre o estado global do sistema. Observabilidade é a capacidade de perceber o comportamento de um sistema de produção e inclui tipicamente as componentes de monitorização, alertas, tracing (de sistemas distribuídos) e agregação de logs.  Monitorização e alertas são uma forma preventiva de detetar falhas no sistema, tracing e agregação de logs fornecem a informação necessária para identificar a causa após a falha. Para testar e melhorar a resiliência de um sistema é indispensável garantir uma observabilidade eficiente sobre o estado global do sistema. Este estágio tem como objetivo desenhar e implementar um protótipo de uma Framework de Observabilidade para sistemas distribuídos em Cloud.  Sobre a Empresa: A WIT tem 20 anos de experiência na área das telecomunicações e é uma empresa francamente exportadora. Prova disso é o facto do software que desenvolve já ter sido exportado para 46 países. Todos estes projetos foram desenvolvidos com uma metodologia muito forte de software, sempre com requisitos de alta-disponibilidade, segurança, performance, escalabilidade e especial cuidado com a user-experience. A empresa conta com os seguintes clientes: Grupo Vodafone, Deutsche Telekom, NTT DoCoMo, KDDI, Softbank, AT&T, Verizon, Safaricom, Vodacom, Unitel, entre outros. Na WIT somos Groundbreakers e procuramos, todos os dias, desafiar o status quo fazendo mais e diferente, sempre com o objetivo de sermos cada vez melhores.  Descobre aqui se também tu podes ser um groundbreaker:https://www.youtube.com/watch?v=Mt9sCqvJx9U 

Objetivo

O objetivo do estágio consiste no desenvolvimento de um protótipo de uma Framework de Observabilidade que permita uma monitorização eficiente e avançada de soluções em microserviços instaladas em ambientes cloud. O protótipo deve tirar partido de todos os serviços cloud, e recorrendo a uma filosofia de DevSecOps, ser o mais automatizado possível com todos os componentes e scripts utilizados instalados através de setup automáticos e integrados com pipelines de CI/CD. O protótipo deve ainda seguir todas as boas práticas de segurança uma vez que irá ser utilizada em sistemas de produção. A Framework deve trabalhar com conceitos e fundamentos de observabilidade e definir padrões e compliance das aplicações no que diz respeito à observabilidade. Este trabalho deverá ser possível de atingir através da implementação dos seguintes componentes:·       Desenho da Framework de Observabilidade;·       Identificação dos pré-requisitos para on-boarding de aplicações;·       Integração da framework com pipelines CI/CD;·       Implementação de mecanismos de logs centralizados;·       Implementação de mecanismo de tracing de aplicações distribuídas;·       Implementação de sistemas recolha e centralização de métricas da infraestrutura e das aplicações;·       Implementação de sistemas de alertas centralizados;·       Implementação de dashboards necessários para garantir a observabilidade do sistema;·       Configuração mecanismos para recuperação automática em caso de falha (quando possível);·       Melhorar e alterar as aplicações para integração com a Framework. Espera-se que o aluno tenha a autonomia e capacidade crítica necessárias para recolher, analisar e estruturar toda a informação acerca de soluções existentes no mercado. Esta informação deverá ser depois aplicada no desenvolvimento do protótipo. O estagiário deve familiarizar-se com as boas praticas de DevSecOps e standards aplicados de observabilidade para sistemas em cloud e investigar as frameworks e ferramentas disponíveis para aplicar todos os conceitos. O desenvolvimento do protótipo deverá ser feito de forma iterativa usando um processo ágil, baseado em SCRUM. No final do estágio, deverá existir um protótipo funcional, que seja facilmente demonstrável e que mostre bem os conceitos explorados durante o estágio. 

Plano de Trabalhos - Semestre 1

Para o 1º semestre estão planeadas as seguintes tarefas:Aquisição de conhecimentos nas tecnologias envolvidas;Familiarização com o sistema sob o qual o estágio será desenvolvido;Desenho de uma Framework de Observabilidade;Identificação e seleção das ferramentas a utilizar na Framework;Realização de experiências e testes com as ferramentas propostas;Identificação dos pré-requisitos para on-boarding de aplicações;Documentação da Framework;Documentação intermédia do estágio.

Plano de Trabalhos - Semestre 2

Para o 2º semestre estão planeadas as seguintes tarefas:Efetuar toas as adaptações necessárias a um sistema existente para integração com a framework;Implementação e configuração do sistema para centralização de logs;Instalação e configuração das ferramentas de tracing;Instalação e configuração de ferramentas para recolha de métricas da infraestrutura e da aplicação;Configuração de mecanismos de alertas para notificação e recuperação automática em caso de falha (quando possível);Desenvolvimento dos dashboards necessários para garantir a observabilidade do sistema;Implementação de testes para validar a eficiência da monitorização;Documentação final da Framework;Preparação do protótipo para demonstrações;Documentação final de estágio.

Condições

O aluno terá ao seu dispor os equipamentos necessários para desempenhar as suas tarefas. O estágio é remunerado. Se o desempenho do aluno ao longo do mês for positivo, terá direito a receber uma bolsa mensal. Além da bolsa, o aluno terá acesso às formações da WIT Academy (que incluir tópicos como: iOS Programming, Android Programming, Arquitecturas de Software, Software Quality, Metodologias de Desenvolvimento de Software, DevSecOps). O aluno será acompanhado não só pelo orientador como por um tutor técnico que lhe dará todo o apoio necessário. No final do estágio, o aluno terá conhecimento detalhado sobre a Engenharia de Resiliência e sobre a disciplina inovadora Engenharia do Caos. No final do estágio, será feita uma avaliação do estagiário e dos conhecimentos adquiridos. Se o resultado for positivo o estagiário será convidado para fazer parte da equipa de DevSecOps. 

Observações

-A documentação do projecto deverá ser preferencialmente em Inglês.-Serão usadas metodologias de desenvolvimento ágeis.-Existe um Tutor e um Orientador. O Orientador define os requisitos do estágio, define as prioridades do Backlog e acompanha os resultados parciais do projeto. O Tutor garante o cumprimento das tarefas, promove as meetings e acompanha o aluno com mais regularidade 

Orientador

Rui Cunha
rui.cunha@wit-software.com 📩