SlideShare uma empresa Scribd logo
1 de 22
2
27 Anos
JOHN WENDEL DO NASCIMENTO
Análise e Desenvolvimento de Sistemas
Inteligência Artificial Aplicada
10 anos de programação
PHP - Python entre outras!
+- 2 anos de MadeiraMadeira
Arquiteto de Software
3
01
O que é como vivem e
do que se alimentam
SISTEMAS LEGADOS
02
Entendendoo
conceito por trás do
tão hypado
SERVERLESS
SERVERLESS
03
Uma breve
introdução ao
conceito
MICROSERVICES
04
O que devemosse
perguntarantes de
começar!
QUANDO COMEÇAR
05
Dicas de como
começar!
COMO COMEÇAR
06
Cases utilizando a
arquitetura
serverless
CASES MADEIRA
4
5
Software Legacy
don't forget - having legacy software is often a sign of success. your
business was successful to last long enough for your software to become
legacy
Sam Newman
não se esqueça
ter um software legado geralmente é um sinal de sucesso.
sua empresa teve sucesso para durar o suficiente para que seu software se tornasse
legado
6
Frases que costumamos ouvir!
Se nao foi eu que fiz é
legado!
Vish foi feito com esse
framework? legado!
Programador acabou de
entrar na empresa
assumiu um sistema.
Estou trabalhando em
um sistema legado!
7
Como definir um sistema legado
Segue algum paradigma antigo e que
hoje não é mais adotado pelo
mercado ou pela organização
Costumam ser sistemas críticos e
essenciais para o funcionamento do
negócio
Alta Complexidade Ciclomática
Difícil manutenção devido a falta de
documentação
8
SERVERLESS = Sem servidor
9
10
INFRA
DEV
DEV
DEV
DEVOPS
INFRA
DEVOPS
Modelo tradicional
Tudo é de responsabilidade da empresa desde o
desenvolvimento até a infra estrutura para suportar
SUA EMPRESA
11
INFRA
DEV
DEV
DEV
DEVOPS
INFRA
DEVOPS
Modelo Serverless
A responsabilidade passa ser apenas de
desenvolvimento, como vai rodar, escalar ou ser
executado é de responsabilidade do provedor do serviço
SUA EMPRESA
12
SERVERLESS
CARACTERÍSTICAS PRINCIPAIS
Sem servidores para
provisionar ou gerenciar
Paga apenas
quando usar
Escala de acordo com
a necessidade
Disponibilidade e
tolerância a falhas
embutida
13
Microservices
Microservices is like teenage sex:
everyone talks about it, nobody really knows how to do it, everyone
thinks everyone else is doing it, so everyone claims they are doing it
Os microsserviços são como o sexo adolescente:
todo mundo fala sobre isso, ninguém sabe como fazê-lo, todo mundo pensa que todo
mundo está fazendo, então todo mundo afirma que está fazendo
14
Microservices
Microserviço é uma pequena aplicação que pode ser reescrito em
duas semanas.
Evens, Jhon
Uma única e pequena aplicação capaz de fazer uma unica coisa
muito bem feita!
Fowler, Martin
O senso comum é que, uma vez que já não se sinta que um pedaço
de código é grande, provavelmente ele já é/está pequeno o
suficiente.
Newman, Sam
15
Microservices
Como saber se estou fazendo microserviços?
The Twelve Factor App DDD - Bounded Context
16
17
Quando começar?
As perguntas que devemos nos fazer!
Eu preciso mudar a minha arquitetura para serverless / microservices ?
Tenho um escopo bem definido e separado?
Conheço o tamanho do problema e a limitação da ferramenta?
Tenho a necessidade de focar mais no negócio do que na
infraestrutura?
Tenho recurso suficiente para uma mudança de arquitetura?
Preciso usar só serverless pra tudo e para sempre? NÃOOO!
18
Como começar?
Devo sair refatorando tudo?
Não! Foque no QUICKWIN!
Focando no que entrega valor em menor tempo fica mais fácil justificar no
longo prazo a mudança de arquitetura
Como convencer a equipe que pode ser uma excelente alternativa?
Traga a equipe para participar das decisões e discussões técnicas
Legado é muito ruim?
Veja o legado como uma oportunidade,
hoje ele entrega muito valor, imagina depois de refatorado!
19
Qual a ideia por trás do 99% Serverless?
Olhar antes para as tecnologias serverless, e depois buscar alternativas
para comparar, da mesma forma que fazemos com software nos dias de
hoje.
Serverless não é a bala de prata!
20
21
DÚVIDAS??
22
Obrigado!
Contatos, Sugestões, reclamações!

Mais conteúdo relacionado

Mais procurados

Como escrever apps de qualidade em qualquer arquitetura
Como escrever apps de qualidade em qualquer arquiteturaComo escrever apps de qualidade em qualquer arquitetura
Como escrever apps de qualidade em qualquer arquiteturaLeandro Alonso
 
Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013Leandro Silva
 
Sistemas para o Mundo Real
Sistemas para o Mundo RealSistemas para o Mundo Real
Sistemas para o Mundo RealLeandro Silva
 
5 meses de python o que aprendi
5 meses de python  o que aprendi5 meses de python  o que aprendi
5 meses de python o que aprendiVinta Software
 
Gerencie sua carreira. Seja um desenvolvedor melhor!
Gerencie sua carreira. Seja um desenvolvedor melhor!Gerencie sua carreira. Seja um desenvolvedor melhor!
Gerencie sua carreira. Seja um desenvolvedor melhor!Sandro Giacomozzi
 
02 zabbix para iniciantes - hernandes martins
02   zabbix para iniciantes - hernandes martins02   zabbix para iniciantes - hernandes martins
02 zabbix para iniciantes - hernandes martinsHernandes Martins
 
Business: from intelligence to learning
Business: from intelligence to learningBusiness: from intelligence to learning
Business: from intelligence to learningFábio Santos
 
Engenharia de Software I - Aula 5
Engenharia de Software I - Aula 5Engenharia de Software I - Aula 5
Engenharia de Software I - Aula 5Alessandro Almeida
 
Lidar com Expectativas é a melhor forma de garantir a Experiência
Lidar com Expectativas é a melhor forma de garantir a ExperiênciaLidar com Expectativas é a melhor forma de garantir a Experiência
Lidar com Expectativas é a melhor forma de garantir a ExperiênciaMarcelo Sales
 
Não deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkNão deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkGiuseppe Lopes
 
Práticas De Um Engenheiro De Software Eficiente
Práticas De Um Engenheiro De Software EficientePráticas De Um Engenheiro De Software Eficiente
Práticas De Um Engenheiro De Software EficienteGiovanni Bassi
 

Mais procurados (16)

Como escrever apps de qualidade em qualquer arquitetura
Como escrever apps de qualidade em qualquer arquiteturaComo escrever apps de qualidade em qualquer arquitetura
Como escrever apps de qualidade em qualquer arquitetura
 
Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013
 
Sistemas para o Mundo Real
Sistemas para o Mundo RealSistemas para o Mundo Real
Sistemas para o Mundo Real
 
5 meses de python o que aprendi
5 meses de python  o que aprendi5 meses de python  o que aprendi
5 meses de python o que aprendi
 
DevOps em Enterprises: problemas
DevOps em Enterprises: problemasDevOps em Enterprises: problemas
DevOps em Enterprises: problemas
 
Scrum Class
Scrum ClassScrum Class
Scrum Class
 
Gerencie sua carreira. Seja um desenvolvedor melhor!
Gerencie sua carreira. Seja um desenvolvedor melhor!Gerencie sua carreira. Seja um desenvolvedor melhor!
Gerencie sua carreira. Seja um desenvolvedor melhor!
 
02 zabbix para iniciantes - hernandes martins
02   zabbix para iniciantes - hernandes martins02   zabbix para iniciantes - hernandes martins
02 zabbix para iniciantes - hernandes martins
 
Framework JGenesis
Framework JGenesisFramework JGenesis
Framework JGenesis
 
Enter SCRUM
Enter SCRUMEnter SCRUM
Enter SCRUM
 
Business: from intelligence to learning
Business: from intelligence to learningBusiness: from intelligence to learning
Business: from intelligence to learning
 
Engenharia de Software I - Aula 5
Engenharia de Software I - Aula 5Engenharia de Software I - Aula 5
Engenharia de Software I - Aula 5
 
II SDTA - Vantagens do Protótipo Navegável
II SDTA - Vantagens do Protótipo NavegávelII SDTA - Vantagens do Protótipo Navegável
II SDTA - Vantagens do Protótipo Navegável
 
Lidar com Expectativas é a melhor forma de garantir a Experiência
Lidar com Expectativas é a melhor forma de garantir a ExperiênciaLidar com Expectativas é a melhor forma de garantir a Experiência
Lidar com Expectativas é a melhor forma de garantir a Experiência
 
Não deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkNão deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do framework
 
Práticas De Um Engenheiro De Software Eficiente
Práticas De Um Engenheiro De Software EficientePráticas De Um Engenheiro De Software Eficiente
Práticas De Um Engenheiro De Software Eficiente
 

Semelhante a 99% serverless, mais aquele 1% legado

Uma abordagem às Metodologias Ágeis em Gerência de Projetos
Uma abordagem às Metodologias Ágeis em Gerência de ProjetosUma abordagem às Metodologias Ágeis em Gerência de Projetos
Uma abordagem às Metodologias Ágeis em Gerência de ProjetosGiovani Elísio Silva
 
Além do MVP com PHP - TDC POA 2015
Além do MVP com PHP  - TDC POA 2015Além do MVP com PHP  - TDC POA 2015
Além do MVP com PHP - TDC POA 2015Romeu Mattos
 
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...Marcio Miyamoto
 
Gestão de produtos - Como aumentar as chances de sucesso do seu software - Ca...
Gestão de produtos - Como aumentar as chances de sucesso do seu software - Ca...Gestão de produtos - Como aumentar as chances de sucesso do seu software - Ca...
Gestão de produtos - Como aumentar as chances de sucesso do seu software - Ca...Fabio Miranda
 
Além do MVP com PHP - TDC Floripa 2016
Além do MVP com PHP - TDC Floripa 2016Além do MVP com PHP - TDC Floripa 2016
Além do MVP com PHP - TDC Floripa 2016Romeu Mattos
 
Ir para cloud com arquitetura de microservices resolverá o meu problema?
Ir para cloud com arquitetura de microservices resolverá o meu problema?Ir para cloud com arquitetura de microservices resolverá o meu problema?
Ir para cloud com arquitetura de microservices resolverá o meu problema?Better Developer
 
Um desenvolvedor com princípios SOLID
Um desenvolvedor com princípios SOLIDUm desenvolvedor com princípios SOLID
Um desenvolvedor com princípios SOLIDHélio Medeiros
 
Workshop: Ouvindo usuários e stakeholders
Workshop: Ouvindo usuários e stakeholdersWorkshop: Ouvindo usuários e stakeholders
Workshop: Ouvindo usuários e stakeholdersNeue Labs
 
Como Acelerar Sua Carreira
Como Acelerar Sua CarreiraComo Acelerar Sua Carreira
Como Acelerar Sua CarreiraFelipe Barreiros
 
Workshop layout-pdf-141204083507-conversion-gate02
Workshop layout-pdf-141204083507-conversion-gate02Workshop layout-pdf-141204083507-conversion-gate02
Workshop layout-pdf-141204083507-conversion-gate02Bruno da Silva
 
Tudo o que você precisa saber sobre layouts para web
Tudo o que você precisa saber sobre layouts para webTudo o que você precisa saber sobre layouts para web
Tudo o que você precisa saber sobre layouts para webÍtalo Waxman
 
Aprenda a ser um webmaster
Aprenda a ser um webmasterAprenda a ser um webmaster
Aprenda a ser um webmasterJeferson Souza
 

Semelhante a 99% serverless, mais aquele 1% legado (20)

Uma abordagem às Metodologias Ágeis em Gerência de Projetos
Uma abordagem às Metodologias Ágeis em Gerência de ProjetosUma abordagem às Metodologias Ágeis em Gerência de Projetos
Uma abordagem às Metodologias Ágeis em Gerência de Projetos
 
Além do MVP com PHP - TDC POA 2015
Além do MVP com PHP  - TDC POA 2015Além do MVP com PHP  - TDC POA 2015
Além do MVP com PHP - TDC POA 2015
 
além do mvp com php
além do mvp com phpalém do mvp com php
além do mvp com php
 
DevOps - Operação contínua
DevOps - Operação contínuaDevOps - Operação contínua
DevOps - Operação contínua
 
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
Desenvolvimento de software de forma rápida e sem bugs - Introdução a TDD e S...
 
Gestão de produtos - Como aumentar as chances de sucesso do seu software - Ca...
Gestão de produtos - Como aumentar as chances de sucesso do seu software - Ca...Gestão de produtos - Como aumentar as chances de sucesso do seu software - Ca...
Gestão de produtos - Como aumentar as chances de sucesso do seu software - Ca...
 
Além do MVP com PHP - TDC Floripa 2016
Além do MVP com PHP - TDC Floripa 2016Além do MVP com PHP - TDC Floripa 2016
Além do MVP com PHP - TDC Floripa 2016
 
Métodos Ágeis - Aula02
Métodos Ágeis - Aula02Métodos Ágeis - Aula02
Métodos Ágeis - Aula02
 
Organizações Virtuais
Organizações VirtuaisOrganizações Virtuais
Organizações Virtuais
 
Ir para cloud com arquitetura de microservices resolverá o meu problema?
Ir para cloud com arquitetura de microservices resolverá o meu problema?Ir para cloud com arquitetura de microservices resolverá o meu problema?
Ir para cloud com arquitetura de microservices resolverá o meu problema?
 
Microservices
MicroservicesMicroservices
Microservices
 
Um desenvolvedor com princípios SOLID
Um desenvolvedor com princípios SOLIDUm desenvolvedor com princípios SOLID
Um desenvolvedor com princípios SOLID
 
O que é ser um bom programador?
O que é ser um bom programador?O que é ser um bom programador?
O que é ser um bom programador?
 
Curso Scrum
Curso ScrumCurso Scrum
Curso Scrum
 
C4 Model
C4 ModelC4 Model
C4 Model
 
Workshop: Ouvindo usuários e stakeholders
Workshop: Ouvindo usuários e stakeholdersWorkshop: Ouvindo usuários e stakeholders
Workshop: Ouvindo usuários e stakeholders
 
Como Acelerar Sua Carreira
Como Acelerar Sua CarreiraComo Acelerar Sua Carreira
Como Acelerar Sua Carreira
 
Workshop layout-pdf-141204083507-conversion-gate02
Workshop layout-pdf-141204083507-conversion-gate02Workshop layout-pdf-141204083507-conversion-gate02
Workshop layout-pdf-141204083507-conversion-gate02
 
Tudo o que você precisa saber sobre layouts para web
Tudo o que você precisa saber sobre layouts para webTudo o que você precisa saber sobre layouts para web
Tudo o que você precisa saber sobre layouts para web
 
Aprenda a ser um webmaster
Aprenda a ser um webmasterAprenda a ser um webmaster
Aprenda a ser um webmaster
 

99% serverless, mais aquele 1% legado

  • 1.
  • 2. 2 27 Anos JOHN WENDEL DO NASCIMENTO Análise e Desenvolvimento de Sistemas Inteligência Artificial Aplicada 10 anos de programação PHP - Python entre outras! +- 2 anos de MadeiraMadeira Arquiteto de Software
  • 3. 3
  • 4. 01 O que é como vivem e do que se alimentam SISTEMAS LEGADOS 02 Entendendoo conceito por trás do tão hypado SERVERLESS SERVERLESS 03 Uma breve introdução ao conceito MICROSERVICES 04 O que devemosse perguntarantes de começar! QUANDO COMEÇAR 05 Dicas de como começar! COMO COMEÇAR 06 Cases utilizando a arquitetura serverless CASES MADEIRA 4
  • 5. 5 Software Legacy don't forget - having legacy software is often a sign of success. your business was successful to last long enough for your software to become legacy Sam Newman não se esqueça ter um software legado geralmente é um sinal de sucesso. sua empresa teve sucesso para durar o suficiente para que seu software se tornasse legado
  • 6. 6 Frases que costumamos ouvir! Se nao foi eu que fiz é legado! Vish foi feito com esse framework? legado! Programador acabou de entrar na empresa assumiu um sistema. Estou trabalhando em um sistema legado!
  • 7. 7 Como definir um sistema legado Segue algum paradigma antigo e que hoje não é mais adotado pelo mercado ou pela organização Costumam ser sistemas críticos e essenciais para o funcionamento do negócio Alta Complexidade Ciclomática Difícil manutenção devido a falta de documentação
  • 9. 9
  • 10. 10 INFRA DEV DEV DEV DEVOPS INFRA DEVOPS Modelo tradicional Tudo é de responsabilidade da empresa desde o desenvolvimento até a infra estrutura para suportar SUA EMPRESA
  • 11. 11 INFRA DEV DEV DEV DEVOPS INFRA DEVOPS Modelo Serverless A responsabilidade passa ser apenas de desenvolvimento, como vai rodar, escalar ou ser executado é de responsabilidade do provedor do serviço SUA EMPRESA
  • 12. 12 SERVERLESS CARACTERÍSTICAS PRINCIPAIS Sem servidores para provisionar ou gerenciar Paga apenas quando usar Escala de acordo com a necessidade Disponibilidade e tolerância a falhas embutida
  • 13. 13 Microservices Microservices is like teenage sex: everyone talks about it, nobody really knows how to do it, everyone thinks everyone else is doing it, so everyone claims they are doing it Os microsserviços são como o sexo adolescente: todo mundo fala sobre isso, ninguém sabe como fazê-lo, todo mundo pensa que todo mundo está fazendo, então todo mundo afirma que está fazendo
  • 14. 14 Microservices Microserviço é uma pequena aplicação que pode ser reescrito em duas semanas. Evens, Jhon Uma única e pequena aplicação capaz de fazer uma unica coisa muito bem feita! Fowler, Martin O senso comum é que, uma vez que já não se sinta que um pedaço de código é grande, provavelmente ele já é/está pequeno o suficiente. Newman, Sam
  • 15. 15 Microservices Como saber se estou fazendo microserviços? The Twelve Factor App DDD - Bounded Context
  • 16. 16
  • 17. 17 Quando começar? As perguntas que devemos nos fazer! Eu preciso mudar a minha arquitetura para serverless / microservices ? Tenho um escopo bem definido e separado? Conheço o tamanho do problema e a limitação da ferramenta? Tenho a necessidade de focar mais no negócio do que na infraestrutura? Tenho recurso suficiente para uma mudança de arquitetura? Preciso usar só serverless pra tudo e para sempre? NÃOOO!
  • 18. 18 Como começar? Devo sair refatorando tudo? Não! Foque no QUICKWIN! Focando no que entrega valor em menor tempo fica mais fácil justificar no longo prazo a mudança de arquitetura Como convencer a equipe que pode ser uma excelente alternativa? Traga a equipe para participar das decisões e discussões técnicas Legado é muito ruim? Veja o legado como uma oportunidade, hoje ele entrega muito valor, imagina depois de refatorado!
  • 19. 19 Qual a ideia por trás do 99% Serverless? Olhar antes para as tecnologias serverless, e depois buscar alternativas para comparar, da mesma forma que fazemos com software nos dias de hoje. Serverless não é a bala de prata!
  • 20. 20