As dores das startups: como desenvolver adequadamente a infraestrutura de TI

Se você acredita estatísticas, apenas 1% das startups sobrevivem. Não discutiremos as razões deste nível de mortalidade; isto não é da nossa conta. Preferimos dizer-lhe como aumentar a probabilidade de sobrevivência através de uma gestão competente da infra-estrutura de TI.

As dores das startups: como desenvolver adequadamente a infraestrutura de TI

No artigo:

O que há de errado com TI para startups?

Vale esclarecer que por startups não entendemos uma cafeteria ou um insetário em um shopping center. Somos sobre startups de tecnologia - sobre aqueles que são assombrados pelo sucesso do GitHub, Uber, Slack, Miro, etc.

As startups sempre enfrentam muitos problemas que as impedem de decolar: desde investimentos insuficientes até um modelo de negócios pouco desenvolvido. Na mesma linha, curiosamente, está o problema com os primeiros sucessos.

Os primeiros sucessos são ruins para startups que superestimam suas capacidades, especialmente financeiras e de pessoal. Após fechar os primeiros cases de sucesso, esses otimistas desejam expandir imediatamente: alugar outro escritório, recrutar novos vendedores e desenvolvedores para a equipe e, ao mesmo tempo, dimensionar o backend (e com margem). É aqui que o problema nº 1 aparece imediatamente.

As pessoas em uma startup fazem coisas que não sabem fazer.

E eles não fazem o que é necessário para desenvolver uma startup. Deixe-me explicar.

Toda startup deve ter pelo menos três funções:

  • Especialista em TI (ou tecnólogo);
  • vendedor (ou profissional de marketing);
  • um visionário (ou um empreendedor que muitas vezes também é um investidor).

Freqüentemente, essas funções são misturadas. Por exemplo, uma startup é um especialista em TI que, além disso, é obrigado a vender. Ele nunca vendeu e faz isso da melhor maneira que pode. Essa startup é uma espécie de equipe multifuncional maligna.

Mas digamos que a startup tenha sorte: há alguém para quem vender e o especialista em TI está cuidando da própria vida. No entanto, é raro que um especialista em TI combine diferentes qualificações: desenvolvedor, testador, administrador, engenheiro arquitetônico. E mesmo que combine, é improvável que seja igualmente bom. Ele pode entender de middleware, mas não tanto de serviços em nuvem e software de virtualização.

As dores das startups: como desenvolver adequadamente a infraestrutura de TI

Quando o back-end se expande, a carga do especialista em TI aumenta. Algo começa a “ceder”. O pior é se esta for uma área crítica para a startup, como o desenvolvimento de produtos. E agora uma pessoa tem que fazer horas extras e, às vezes, XNUMX horas por dia.

A sobrecarga por falta de pessoas e de qualificação é uma característica da maioria das startups, consequência do fato de as pessoas estarem fazendo a coisa errada.

Todos os serviços são implantados em uma máquina virtual

Freqüentemente, as startups, com base em suas próprias ideias sobre economia, colocam ambientes de desenvolvimento, bancos de dados, um servidor web, monitoramento e assim por diante em uma VM. No início, todo esse negócio funciona de forma mais ou menos tolerável. Os problemas começam quando você precisa escalar.

As startups geralmente escalam verticalmente. Ou seja, eles simplesmente aumentam o número de CPUs, a quantidade de RAM, discos, etc. - esta é uma abordagem monolítica clássica, cujo efeito negativo em algum momento se torna irreversível. Se uma empresa jovem cresce, a certa altura o preço do aumento de recursos salta para um nível inacessível. Neste caso, só há uma forma de otimizar a infraestrutura: remontá-la.

Como a TI gerenciada ajuda

Para este tipo de projeto temos uma classe de serviço gerenciado - DevOps gerenciado.

O cliente recebe fora da caixa:

  • preparar os ambientes necessários para o trabalho: dev, test, prod;
  • processos CI/CD configurados;
  • ferramentas preparadas para trabalho em equipe: rastreadores de tarefas, sistemas de controle de versão, implantação, testes, etc.

No nível de infraestrutura e ferramentas, todas as startups precisam aproximadamente das mesmas coisas. Se você comparar o mercado de risco com a mineração de ouro, o Provedor de Serviços Gerenciados (MSP) fornece ferramentas novas e de alta qualidade: picaretas e carrinhos que não quebram, mapas que não mentem. O garimpeiro só precisa escolher um local para cavar.

Prós de TI gerenciada

A TI gerenciada é um serviço abrangente que cobre uma série de necessidades obrigatórias.

  • À partida disponibilizamos os recursos necessários e personalizados para trabalho, crescimento e teste de hipóteses.
  • Podemos dizer exatamente como o custo aumentará durante o dimensionamento, porque sabemos que a métrica principal é a convergência da economia da startup.
  • Fornecemos consultas para economizar às startups uma quantidade significativa de horas de trabalho. Também podemos ajudar com cálculos da economia unitária do projeto.
  • Compartilhamos as melhores práticas do mercado. O pessoal da ITGLOBAL.COM trabalhou com algumas startups. Muitas dessas startups acontecem mensalmente. Isto permite-nos reunir os melhores (e piores) exemplos e partilhar as nossas experiências com os clientes.

Dois casos de prática

Segundo a NDA, não podemos citar empresas específicas, mas o escopo e o produto, sim.

Escopo: fintech/varejo

Produto: Mercado

Problemas:

  • Não houve testes na cadeia CI/CD. Adicionar testadores remotos apenas tornou o processo de construção mais complexo.
  • Os desenvolvedores trabalharam simultaneamente em um servidor de desenvolvimento sem ambientes dedicados em contêineres.
  • 70% do tempo dos desenvolvedores foi gasto nas mesmas ações de lançamento em lançamento. A velocidade de desenvolvimento foi muito lenta.
  • A infraestrutura foi implantada em uma empresa de hospedagem de baixo custo na Alemanha (ou seja, sem velocidade, sem confiabilidade).

Aliás, isso é observado em todos os primeiros projetos.

A solução é DevOps gerenciada: implementamos processos de CI/CD, configuramos testes e monitoramento corretos, intervimos no desenvolvimento no nível dos processos de negócios e transferimos a infraestrutura para servidores produtivos em um data center Tier III.

Resultado:

  • a eficiência do desenvolvimento aumentou: novos recursos e atualizações começaram a sair mais rápido e com menos mão de obra;
  • como resultado, o custo do processo de desenvolvimento como um todo diminuiu;
  • a infraestrutura tornou-se flexível: o cliente pode aumentar e diminuir rapidamente;
  • os custos do DevOps gerenciado, segundo o cliente, foram pagos em seis meses.

Escopo: publicidade na web

Produto: Plataforma de IA para automatizar campanhas publicitárias

Problemas:

  • back-end em hardware antigo, em um data center com baixo nível de tolerância a falhas;
  • falta de backups regulares;
  • infraestrutura monolítica.

A solução foi TI gerenciada: transferimos a infraestrutura para hardware de ponta, configuramos o cluster Galera para escalabilidade horizontal, mostramos como seria distribuída a carga na VM, configuramos backups e monitoramento. Agora, além da manutenção, prestamos consultoria ativamente, inclusive sobre DevOps.

Resultado:

  • a infraestrutura tornou-se microsserviço: o custo da expansão diminuiu significativamente e a capacidade de escalar, com o mesmo custo, aumentou;
  • a fiabilidade e a segurança da infra-estrutura aumentaram;
  • os desenvolvedores mudaram de um modelo de construção em cascata para CI/CD, o que ajudou a reduzir custos;
  • Os benefícios financeiros da TI gerenciada, segundo o cliente, tornaram-se imediatamente óbvios.

Conclusão

A sobrevivência das startups depende muito da sorte. Uma startup pode gastar dinheiro em equipamentos caros e não ganhar nada com isso. Outro terá sucesso mesmo com uma infra-estrutura de TI péssima – assim como um minerador de ouro encontra uma mina de ouro com uma picareta velha.

No entanto, as ferramentas modernas, as práticas e a equipe profissional que um provedor de TI gerenciada fornece reduzem significativamente a probabilidade de falha.

Fonte: habr.com

Adicionar um comentário