Sem resumo de edição |
|||
| Linha 61: | Linha 61: | ||
<div>[[Arquivo:Platformtooling.jpg|thumb|center|600x400px|]]</div> | <div>[[Arquivo:Platformtooling.jpg|thumb|center|600x400px|]]</div> | ||
Estudo de caso da Humanitec [[Humanitec e serviços]] | |||
<br> | <br> | ||
Edição das 13h58min de 19 de julho de 2024
Fase I - Estudo
Título da Ideia
Platform Engineering
Objetivos
- Analisar o modelo de desenvolvimento e operações proposto no Platform Engineering, suas principais diferenças com os modelos atuais, assim como suas vantagens e desvantagens para um modelo de negócios.
- Participar de comunidades e fóruns do Platform Engineering, conhecendo pessoas e empresas que façam parte desse sistema, possibilitando futuras parcerias (intelectuais ou comerciais).
- Estar a par de novas tecnologias e meio digitais inovadores.
Conceito
"Platform Engineering" é um campo emergente no desenvolvimento de software que se concentra na construção e manutenção de plataformas tecnológicas que suportam o desenvolvimento, a implementação e a operação de aplicações. A ideia central é fornecer uma infraestrutura consistente, eficiente e reutilizável, permitindo que as equipes de desenvolvimento se concentrem nos aspectos específicos de seus projetos, em vez de se preocupar com a configuração e manutenção da infraestrutura subjacente.
Platform Engineering envolve a criação de uma infraestrutura robusta e reutilizável, que facilita o desenvolvimento e a operação de software de maneira eficiente e segura. Isso permite que as equipes de desenvolvimento se concentrem na entrega de valor de negócio, evitando a duplicação de esforços e otimizando recursos. Além disso, promove a padronização de processos, a automação de tarefas repetitivas e a integração contínua de novas tecnologias, assegurando que o ambiente de desenvolvimento seja ágil e escalável.
Em resumo, Platform Engineering capacita as organizações a inovar e entregar produtos de alta qualidade mais rapidamente, ao mesmo tempo em que reduz a complexidade e aumenta a confiabilidade da infraestrutura tecnológica.
Segundo muitas das palestras e dos vídeos de interação com os especialistas, o Platform Engineering, embora seja interessante para todo tipo de empresa que tem uma relação de DevOps, ele é muito mais atraente, e resulta em impactos maiores quando aplicado em níveis de média e grande escala.
Outro conceito interessante de trabalharmos é o de CI/CD, isto é, Continuous Integration/Continuous Deployment ou Continuous Delivery. O CI/CD é uma abordagem de automação no desenvolvimento de software que visa acelerar o processo de entrega de aplicações, garantindo qualidade e confiabilidade. A ideia central do CI/CD é integrar mudanças de código de forma contínua e automática, realizar testes automatizados e, em seguida, implantar as atualizações em um ambiente de produção ou de teste. Isso permite que as equipes de desenvolvimento entreguem novos recursos e correções de bugs de forma rápida e eficiente.
Continuous Integration (CI)
- Definição: Prática de integrar mudanças de código de todos os desenvolvedores em um repositório compartilhado várias vezes ao dia.
- Objetivo: Detectar e corrigir erros rapidamente, melhorar a qualidade do software e reduzir o tempo de integração.
- Ferramentas Comuns: Jenkins, Travis CI, GitLab CI, CircleCI.
Continuous Deployment (CD)
- Definição: Processo de implantar automaticamente cada mudança que passa pelos testes automatizados em um ambiente de produção.
- Objetivo: Reduzir o tempo de entrega de novas funcionalidades para os usuários finais.
- Ferramentas Comuns: Spinnaker, Jenkins, GitLab CI, CircleCI.
Continuous Delivery (CD)
- Definição: Similar ao Continuous Deployment, mas com uma etapa manual de aprovação antes da implantação em produção.
- Objetivo: Manter a capacidade de entregar o software a qualquer momento com um processo de liberação previsível e de alta qualidade.
- Ferramentas Comuns: Ansible, Chef, Puppet, AWS CodePipeline.
Características
Para entender melhor os conceitos e características da estrutura e capacidade do Platform Engineering, é importante fazermos uma subdivisão dos processos presentes na sua estrutura e em suas ferramentas: Platform Engineering Tooling Explanation
Estudo de caso da Humanitec Humanitec e serviços
Estudo Dirigido
Conhecendo Platform Engineering (Evento PlatformCON)
- https://www.youtube.com/watch?v=wWW_lDUKnf0
- https://www.youtube.com/watch?v=ZilQIZS3684
- https://www.youtube.com/watch?v=mqEqIs22O8I
- https://www.youtube.com/watch?v=e2kqAlNgKb4
Empresas de Plataform Engineering
Fase II - Ensino
Conteúdo
Desenvolva um conteúdo que possa transmitir o conhecimento adquirido para outros Crie um material (Wiki, PDF, PPT, ...) que possa ser armazenado e facilmente atualizável
Apresentação
Apresente ao grupo (reunião, EAD, Blog, ...) Publique aqui
Metodologia
Descrevas as metodologias usadas. Alguns exemplos:
Estratégia de Job Rotation Estudos básicos para conhecimento do potencial Estudos básicos para entendimento sobre o problema Estudos para dar base aos pesquisadores Benchmarking com empresas estrangeiras Aceleradoras de empresas Adoção de novas tecnologias Utilização da proposta de soluções Open-source Priorização no desenvolvimento interno Foco na não dependência de fornecedores Prática de formação dos talentos necessários
Hipóteses
Que questões envolvem a pesquisa? O que se espera provar? O que se espera como resultado? Explicações e argumentos que subsidiem a investigação em curso
Fase III - Exemplo de Caso de Negócio
Product Backlog
Descreva os requisitos deste projeto
Benefícios para quem for oferecer esta solução
Descrever em tópicos os benefícios que uma pessoa ou uma empresa podem obter: ganhos, receitas, novos negócios, novos produtos, novas parcerias
Benefícios para o usuário
Descrever em tópicos os benefícios para os usuários desta solução.
Pode se inspirar no Canvas.
Direcionadores chave para esta iniciativa
Descrever em tópicos o que esta iniciativa pode proporcionar
Possíveis modelos de negócios
Descrever em tópicos os possíveis modelos de negócios
Business Case
Descrever um exemplo de negócio que permita avaliar a solução comercialmente
Alinhamento com Lei do Bem
- Projeto possui algum elemento tecnologicamente novo ou inovador?
Elemento tecnologicamente novo ou inovador pode ser entendimento como o avanço tecnológico pretendido pelo projeto, ou a hipótese que está sendo testada
- Projeto possui barreira ou desafio tecnológico superável?
Barreira ou desafio tecnológico superável pode ser entendido como aquilo que dificulta o atingimento do avanço tecnológico pretendido, ou dificulta a comprovação da hipótese
- Projeto utiliza metodologia/método para superação da barreira ou desafio tecnológico?
Metodologia/método para superação da barreira ou desafio tecnológico pode ser entendido como aqueles atividades que foram realizadas para superação da barreira ou do desafio tecnológico existente no projeto
- Projeto é desenvolvido em parceira com alguma instituição acadêmica, ICT ou startup?
Se sim, o desenvolvimento tecnológico é executado por associado ou por alguma empresa terceira? qual o nome da empresa? Anexar cópia do contrato
Fase IV - Protótipo orientado ao Negócio
Escopo
Explique o escopo deste protótipo
Limitações
Informe sobre as limitações técnicas, comerciais, operacionais, recursos, etc.
PoC
Desenvolva um PoC (Proof of Concept)
Privacidade (LGPD)
- Avaliar condições referentes à Lei Geral de Proteção de Dados
Detalhamento Técnico
Descreva especificamente os aspectos técnicos desta pesquisa
Cronograma Macro
Histórico
Responsável: Lucas Gomes
Semana de 17 à 21/06/2024
- Reunião de Kickoff com Lucas e Bruno da Sunny Systems, Vanius (Especialista da Algar Telecom), e Luiz Claúdio e Lucas da Brain.
- Vanius fez uma breve apresentação de como é o funcionamento atual na Algar Telecom. O principal problema encontrado é que durante a transição para o Cloud não houve uma adaptação do método On Premise, que não é o ideal para o pós transição
- Lucas Guimarães apresenta algumas soluções possíveis mais a principal "resposta" é referente a Humanitec, empresa que trabalha nessa área e que irá fazer uma 2° reunião para a apresentação na quinta-feira 20/06/2024. Como Vanius havia dito que a Algar já tem algumas ferramentas próprias desenvolvidas, Lucas disse que elas podem ser aproveitadas nesse novo projeto, para melhor adaptação as necessidades da Algar Telecom
- Também foi exposto que terá uma conferencia na próxima semana em Nova Iorque que irá trazer bastante novidades e novas tecnologias para a área, como o Data Dog.
- Reunião com a Humanetic, SunnySystem, Vanius e Convidados
- Breve apresentação das funções realizadas na Humanetic e como funciona o Platform Engineering
- Deixou em aberto para uma nova reunião na próxima semana para a apresentação de um caso de uso deles e ver a adequação a um caso de uso real da Algar Telecom
Semana de 22 à 29/06/2024
- Upload de infos na Wiki e criação de um plano de estudos
- Reunião de retorno marcada com a Humanitec no dia 09/07
Semana de 08 à 12/07/2024
- 09/07/2024 Reunião Humanitec, Sunny System, Algar Telecom e Brain - Segundo Contato - Apresentação da plataforma:
- Participantes: Clemens Jutte, Lucas Guimarães, Henrique Bastos, Lucas Gomes e Vanius.
Pesquisadores
- Henrique Cabral Bastos
- Lucas Resende Gomes
- Vanius Silva de Oliveira
