Como escalar uma equipe de tecnologia em 30% em 3 meses: estudo de caso passo a passo
Publicados: 2022-05-04Hoje em dia, é difícil imaginar que alguém possa contratar facilmente uma equipe de cinco a dez desenvolvedores internos com o conjunto de habilidades necessário. A luta acirrada por talentos no mercado e as ofertas lucrativas dos concorrentes não tornam isso mais simples.
Por quê? A questão principal está na escassez de talentos de TI, que se tornou um dos gargalos de rápido crescimento que as empresas modernas enfrentam. Contratar especialistas em tecnologia agora é um verdadeiro desafio. E nenhuma surpresa aí. Nos últimos dez anos, o número de empresas B2B SaaS aumentou 50 vezes e ainda está em alta. Existem mais de 15.000 empresas desse tipo só nos EUA. Além disso, gigantes como Google e Amazon continuam escolhendo o mercado de trabalho de tecnologia.
Além disso, a pandemia do COVID-19 resultou em uma digitalização desenfreada dos negócios. Assim, o crescente mercado de startups se transformou em uma verdadeira luta para contratar e reter os melhores talentos de tecnologia para ingressar em empresas e startups que não são de TI. Como resultado, oferecer aos candidatos salários muito altos causa caos no mercado.
A verdade é que, mesmo que sua startup tenha conseguido arrecadar fundos impressionantes, seus desafios de pessoal estão longe de serem resolvidos.
No entanto, não é uma boa razão para desistir. O mundo ficou remoto. Suas oportunidades de pessoal interno não o limitam mais. Além disso, sua localização também não é um obstáculo.
Aqui, vou compartilhar um caso real em que nossa empresa, Aspirity, ajudou a escalar a equipe de tecnologia no menor tempo e revelar a experiência que ambos os lados ganharam.
VS interno. VS remoto. Equipes Distribuídas
Atualmente, surgiram muitas novas abordagens e modelos de pessoal, tornando o acesso ao pool de talentos global uma perspectiva real para quem procura soluções mais flexíveis e eficientes.
Vejamos os tipos de equipe de desenvolvimento mais comuns em termos de localização.
Equipes internas: como as coisas mudaram
Muitas empresas consideram as equipes internas a solução mais estável, gerenciável e confiável para optar. Aqui estão os argumentos mais difundidos a favor do modelo interno:
- Controle direto sobre o fluxo de trabalho.
- Uma oportunidade de construir um ambiente de escritório confiável e transparente.
- Comunicação cara a cara.
- Sem diferenças de fuso horário e barreiras linguísticas.
No entanto, durante a pandemia, a mentalidade das pessoas mudou. Hoje, a concentração de todo o trabalho em equipe em um escritório pode ser considerada obsoleta. De acordo com a pesquisa do Gartner, após o surto de COVID-19, 82% dos empregadores deixaram seus funcionários trabalharem remotamente, enquanto 47% dos líderes da empresa apoiam o trabalho totalmente remoto.
Devido a essas mudanças, os contras do desenvolvimento interno superam significativamente seus benefícios. Com um pool de talentos muito mais pobre, você achará difícil competir com os gigantes que contratam os melhores especialistas locais. Assim, dimensionar sua equipe de desenvolvimento interna e adicionar o conhecimento necessário pode ser muito desafiador.
Equipes remotas: a nova realidade
As soluções remotas são uma ótima alternativa ao desenvolvimento interno. Você pode encontrar o talento necessário com acesso ao mercado global de TI. Além disso, você pode escolher o fuso horário que melhor lhe convier e contratar os profissionais de que precisa.
O risco potencial de contratar funcionários remotos é que você pode achar difícil integrá-los rapidamente à equipe que já está trabalhando no projeto. Além disso, alguns funcionários remotos podem exigir mais tempo para integração, pois não se sentirão instantaneamente como parte integrante de sua equipe interna.
Equipes Distribuídas: uma Solução Alternativa
Então, o que uma empresa pode fazer para contratar especialistas remotos habilidosos e abordar os possíveis desafios em relação à integração e ao engajamento? Com base em nossa experiência, construir uma equipe distribuída é uma ótima solução.
Em primeiro lugar, uma equipe distribuída é composta por profissionais que já possuem entendimento mútuo e podem interagir efetivamente entre si. Eles conhecem os pontos fortes e fracos uns dos outros e podem construir o processo de colaboração rapidamente, sem exigir nenhum esforço de você.
Além disso, essas equipes provavelmente têm métodos bem estabelecidos e testados para manter bancos de dados e não terão problemas para integrar novos funcionários se você precisar escalar rapidamente.
Além disso, ao contratar uma equipe distribuída, deve-se realizar uma integração eficiente. É essencial comunicar a ideia central do seu projeto e fazer com que os novos membros se sintam apaixonados pelo seu produto.
É claro que o processo de adaptação levará algum tempo. Uma empresa que se volta para o modelo distribuído deve considerar a diferença de fuso horário e as especificidades culturais. No entanto, se você precisar de dimensionamento eficaz, é improvável que todos esses fatores se tornem obstáculos. Para tal, dificilmente encontrará uma opção mais orientada para os resultados.
Comparação de preços
O custo de desenvolvimento depende de vários fatores. E o nível de qualificação dos desenvolvedores envolvidos no projeto não é a única coisa que importa. Outro aspecto importante é a localização da sua equipe de desenvolvimento. Principalmente, isso depende das condições econômicas da região, salários médios, impostos e muito mais.
Aqui, vamos comparar o custo de serviços de desenvolvimento específicos em diferentes partes do mundo. Ele lhe dará uma idéia aproximada das taxas médias dos engenheiros de software médios se você decidir terceirizar o desenvolvimento de seu produto para outro país ou contratar especialistas por conta própria.
Observe que, se você contratar trabalhadores remotos, terá que lidar com muitas armadilhas, como o sistema tributário de um determinado país. Enquanto isso, se você recorrer ao modelo de equipe distribuída, os fornecedores provavelmente lidarão com esses problemas sem seu esforço. Tais fatores afetam significativamente o dimensionamento e o orçamento do projeto.
América do Norte | Europa Oriental | América do Sul | |
Reagir | $ 59,8 | $ 50,9 | $ 49,6 |
Reagir nativo | $ 73,9 | $ 54,6 | $ 53,1 |
JavaScript | $ 78,6 | $ 49,3 | $ 51,0 |
Node.js | $ 63,5 | $ 47,5 | $ 50,3 |
No escritório x remoto: nossa experiência
Nossa empresa, Aspirity, ganhou uma sólida experiência trabalhando remotamente e aplicando o modelo de equipe distribuída. Durante a pandemia, os nossos colaboradores adaptaram-se à nova realidade de trabalhar a partir de casa. Então, agora, não mais de 10% deles voltam a trabalhar no escritório. Em nossa experiência, o trabalho remoto é ainda mais produtivo, pois elimina o ruído do escritório e outras distrações, permitindo que os funcionários mergulhem no processo de trabalho.
Curiosamente, alguns de nossos colaboradores decidiram começar a trabalhar remotamente e ingressar em equipes distribuídas antes mesmo do surto de pandemia. No outono de 2019, uma startup do Vale do Silício nos procurou para participar do projeto. Naquela época, eles queriam construir um produto inovador, mas entendiam que levaria muito tempo e recursos que eles não tinham. Assim, o cliente estava procurando de três a cinco funcionários de cada vez que tivessem o conjunto de habilidades para cobrir a parte de front-end, incluindo design. E decidimos começar a trabalhar juntos.
Para nós, também foi uma experiência nova ser responsável apenas por uma parte específica do projeto. Como resultado, estabelecemos o formato de trabalho que hoje chamamos de equipe distribuída.
Normalmente, a integração em um projeto desse tipo leva vários meses. No entanto, nossa equipe conseguiu fazê-lo muito mais rápido. Agora, vou revelar o que aprendemos enquanto trabalhamos juntos em uma equipe distribuída.
A busca por uma equipe
A primeira questão que uma empresa ou startup provavelmente enfrentará é como encontrar uma equipe distribuída que atenda às suas metas e expectativas. Aqui estão alguns fatores-chave a serem considerados.
- Piscina de talentos. Para construir um produto excepcionalmente inovador, você provavelmente precisará acessar pelo menos 1-2% dos melhores talentos do mundo. No entanto, encontrar e reter profissionais habilidosos nos EUA é bastante desafiador devido à escassez de talentos em TI. O modelo de equipe distribuída permitirá que você acesse os principais especialistas em outras regiões, como Sudeste Asiático, Europa Oriental e América do Sul.
- Conexões pessoais. Não negligencie o feedback de pessoas que você conhece e confia. Uma boa reputação geralmente está à frente das melhores equipes, independentemente de sua localização.
- Semelhanças culturais. É crucial considerar a mentalidade e os valores da equipe que você contrata. É necessário encontrar parceiros que possam mergulhar nas suas ideias de negócio e tornar-se parte integrante do seu projeto. Isso ajudará você a estabelecer uma melhor comunicação com a equipe, sem nem perceber a diferença entre os especialistas remotos e seus funcionários internos.
- Impacto do fuso horário. Para muitas empresas, as diferenças de fuso horário podem parecer uma desvantagem significativa de contratar uma equipe distribuída. No entanto, você pode transformá-lo em um benefício. Por exemplo, ao contratar um fornecedor do Leste Europeu, você pode executar processos específicos quase 24 horas por dia, 7 dias por semana. Mais importante ainda, encontre tempo para ligações e reuniões que sejam convenientes para todos.
Como validar uma equipe
Depois de encontrar uma equipe que pareça adequada, é hora de validar sua confiabilidade. Existem inúmeras maneiras de verificar se o candidato é relevante para suas necessidades. Os seguintes são os mais comuns:
- Confira o portfólio da empresa e os estudos de caso.
- Leia as opiniões de seus clientes.
- Preste atenção à classificação de reputação dos fornecedores em sites especializados como Clutch e GoodFirms.
Além disso, é melhor não confiar nas promessas dos candidatos de corresponder aos mais altos padrões. Existem centenas de fornecedores por aí, e cada um afirma oferecer os melhores serviços.
É por isso que uma entrevista técnica é crucial. Ele o ajudará a estimar as capacidades técnicas da equipe de candidatos, o conhecimento em um campo específico e a relevância da especialização.
Além disso, é melhor não superestimar a escolha de uma pilha de tecnologia. Em vez disso, priorize a equipe com excelentes habilidades em uma determinada tecnologia, mesmo que não seja a que você considerou. É muito melhor do que contratar os chamados sim-homens que sempre seguirão suas exigências, por mais justificadas que sejam, em vez de oferecer soluções mais eficientes.
Mais importante ainda, certifique-se de que a pilha de tecnologia escolhida seja à prova de futuro e tenha uma comunidade de desenvolvedores razoavelmente grande.
Outro fator crítico é a interação entre as equipes de back-end e front-end. No nosso caso, o cliente já tinha sua equipe de backend. Portanto, eles precisavam garantir que os especialistas de front-end entendessem certas especificidades de back-end. Eles estavam procurando especialistas cientes do básico, como trabalhar com dados falsos, APIs, etc. Aprender esses fundamentos em movimento pode reduzir significativamente a produtividade e o ritmo de desenvolvimento.
Tornando-se uma equipe conjunta
Quando uma equipe distribuída começa a trabalhar em conjunto, seus membros precisam de algum tempo para estabelecer um fluxo de trabalho colaborativo. No nosso caso, os membros da equipe interna do cliente queriam que mergulhássemos na essência e nas ideias centrais do projeto antes de iniciar o processo de desenvolvimento. Então, inicialmente, exploramos como gerenciar o projeto de olho nas necessidades dos usuários, como ele deve ser projetado e quais gráficos são necessários.
Para isso, passamos um mês analisando os produtos dos concorrentes. Estudamos vários painéis para entender o que um usuário espera de produtos semelhantes, pesquisamos e testamos e tiramos muitas capturas de tela. Por fim, coletamos e organizamos todas essas informações para consultá-las durante o processo de design.
No início, os membros da nossa equipe não tinham muita experiência no campo do projeto do cliente. A pesquisa preliminar permitiu-nos obter as referências necessárias em que poderíamos confiar ao projetar o produto. Além disso, o processo de investigação nos ajudou a mergulhar mais fundo no projeto em si. E foi o primeiro passo essencial.
Outro aspecto vital foi o gerenciamento de projetos que nos ajudou a estabelecer uma comunicação eficiente entre as equipes, agendar as reuniões, organizar o fluxo de trabalho colaborativo e evitar causar desafios no trabalho uns dos outros.
Aqui estão alguns insights cruciais que nossa equipe distribuída obteve e os métodos que criamos.
- Comunicação. Embora tenhamos começado com alguns problemas e mal-entendidos, rapidamente alcançamos os compromissos necessários e aumentamos nossa eficiência. Agora, nossa equipe usa vários canais do Slack e bate-papos em grupo para discussões instantâneas e entrega pontual de informações importantes. Nossos gerentes de projeto estão constantemente em contato e nosso líder técnico sempre sabe como substituir os trabalhadores durante as férias ou quaisquer circunstâncias imprevistas. Isso nos permite manter o ritmo ininterrupto do fluxo de trabalho.
- Reuniões e chamadas. O trabalho da equipe distribuída requer sessões online regulares para discutir os resultados, verificar entregas, definir planos e sprints, compartilhar os problemas, etc. Portanto, temos inúmeras reuniões regulares para diferentes finalidades:
- Reuniões diárias do time front-end com o product owner.
- Reuniões semanais com o líder da equipe de outro país.
- Reuniões diárias dos membros da nossa equipe.
- Reuniões retrospectivas e técnicas retrospectivas a cada duas semanas.
- Reunião técnica semanal para discutir o novo plano técnico.
- Reuniões regulares de gestão.
- Sprint revisões a cada 2-3 dias.
Cada chamada e reunião atende a um objetivo específico que ajuda a equipe a permanecer na mesma página e a entender o progresso e os problemas de cada um. No entanto, muitas coisas são discutidas em bate-papos em grupo e mensageiros para economizar tempo.
- Espaço de trabalho comum. No início, nossa equipe usava dois espaços de trabalho diferentes do Jira:
- Nosso espaço de trabalho da equipe de interface do usuário e front-end.
- O espaço de trabalho do nosso cliente para gerenciar tarefas de interface do usuário, back-end, API e front-end.
Com essa abordagem, o controle de qualidade do lado do cliente relatou bugs de interface do usuário e nosso controle de qualidade relatou bugs de front-end. Mais tarde, mudamos para um único espaço de trabalho do Jira, o que facilitou significativamente o processo de gerenciamento de projetos.
Aprendizado
Suponha que você precise dimensionar seu projeto de forma rápida e eficiente sem perder tempo procurando, contratando e treinando todos os especialistas internos necessários. Nesse caso, o modelo de equipe distribuída é uma das melhores opções. Ele fornecerá acesso ao pool global de talentos e permitirá que você contrate desenvolvedores habilidosos com experiência colaborativa bem estabelecida.
Com tecnologias e abordagens modernas para gerenciamento de projetos, construir e organizar um fluxo de trabalho eficiente é uma meta totalmente alcançável. O uso de ferramentas poderosas para comunicação, colaboração e documentação minimiza os riscos e se torna uma base confiável para um trabalho conjunto transparente e orientado a resultados.
Assim, tudo o que você precisa fazer é encontrar uma equipe confiável com experiência relevante e fazer o possível para transmitir a eles sua paixão pelo produto que você vai construir.
por: Alexander Efremov (LinkedIn)