Em 7 de outubro de 2026, a Shifter tem o maior pool de IPs dos EUA ativos, mais do que a Oxylabs e a Bright Data, por uma fração do custo.A Shifter agora tem o maior pool de IPs ativos dos EUA

Ver benchmarks

Montando uma Equipe de Coleta de Dados: Funções, Proporções e O Que Quebra Primeiro

Quantas pessoas a coleta de dados da web realmente exige? As funções, um modelo de planejamento que você pode rodar com seus próprios números e o que costuma quebrar primeiro conforme você cresce.

Engenharia · Atualizado em 4 de novembro de 2026 · 7 min de leitura
3 pessoas50misto7 pessoas200misto22 pessoas200difícil
Mesmo modelo, três cargas de trabalho. Âmbar é o que conserta o que quebrou, e isso decide o tamanho da equipe.
Conhecimento
Nesta página
  1. O que determina o número de pessoas
  2. As funções
  3. Um modelo de planejamento
  4. O que quebra primeiro
  5. Reduzindo o número de pessoas necessárias
  6. Conclusão
  7. Fontes e referências

Na maioria dos planos de coleta de dados da web o orçamento contempla os scrapers e esquece as pessoas. A primeira versão leva algumas semanas para ser escrita, então uma equipe de uma pessoa parece suficiente. Depois os sites mudam, o volume cresce, um cliente encontra um número errado, e descobre-se que o trabalho nunca foi escrever scrapers. Era mantê-los corretos.

Não encontramos um benchmark publicado e confiável sobre quantas pessoas isso exige, e qualquer proporção única seria enganosa de qualquer forma. Então este guia apresenta as funções, um pequeno modelo que você pode rodar com seus próprios números, e o que costuma quebrar primeiro em cada tamanho.

O que determina o número de pessoas

O volume de dados importa menos do que você imaginaria. Buscar dez vezes mais páginas das mesmas fontes é principalmente uma questão de orçamento e infraestrutura. O número de pessoas depende de quatro fatores:

  • O número de fontes, já que cada uma pode quebrar por conta própria.
  • Com que frequência elas quebram, o que depende de quanto um site muda e de quão difícil é acessá-lo.
  • Quanto erro você pode se permitir. Um conjunto de dados de pesquisa semanal pode esperar. Um feed de preços sobre o qual os clientes agem não pode.
  • Quantas fontes novas você adiciona, porque a integração de novas fontes compete com a manutenção pelas mesmas pessoas.

As funções

Isso são funções, não cargos. Em uma equipe pequena, uma pessoa acumula várias, o que é aceitável desde que cada uma tenha um nome associado.

FunçãoResponsável porGeralmente ausente até
Engenheiro de coletaScrapers, extração, correção de falhasNunca ausente
Engenheiro de plataformaAgendamento, filas, proxies, navegadores, armazenamento, custoVárias pessoas estão repetindo a mesma infraestrutura
Responsável pela qualidade dos dadosVerificações, desvios, o que significa “correto”Um cliente encontra o erro primeiro
Responsável pelo produto ou pelos dadosO que coletar, prioridades, decisões sobre fontesTudo é urgente
Contato de jurídico e conformidadeEscopo, termos, dados pessoais, aprovaçõesUma nova fonte levanta uma questão que ninguém consegue responder

O último raramente é um cargo em tempo integral, mas deve ser uma pessoa nomeada. Uma política de coleta de dados curta e escrita poupa essa pessoa de responder repetidamente às mesmas perguntas.

Um modelo de planejamento

O script transforma trabalho recorrente em horas, e horas em pessoas. Ele não exige nada além de Python 3.9 ou posterior. Cada número é uma suposição a ser substituída pelos seus próprios: conte quantas correções você fez no último trimestre, e quanto tempo levaram.

"""A planning model for how many engineers a data collection operation needs.

Every default is an assumption to replace with your own numbers.
"""
from __future__ import annotations

import math

HOURS_PER_FTE = 30  # focused engineering hours per person per week


def team_size(sources, breaks_per_source_per_month, hours_per_fix, new_sources_per_month,
              hours_per_new_source, weekly_platform_hours=20, weekly_support_hours=8):
    """Recurring hours become people; reserve a quarter of the time for project work."""
    fixes = sources * breaks_per_source_per_month * hours_per_fix / 4.33
    onboarding = new_sources_per_month * hours_per_new_source / 4.33
    weekly = fixes + onboarding + weekly_platform_hours + weekly_support_hours
    fte = weekly / (HOURS_PER_FTE * 0.75)
    return {"fixes": round(fixes), "onboarding": round(onboarding),
            "platform": weekly_platform_hours, "support": weekly_support_hours,
            "weekly_hours": round(weekly), "fte": round(fte, 1), "people": math.ceil(fte)}


if __name__ == "__main__":
    scenarios = {
        "10 sources, stable": (10, 0.25, 4, 1, 16),
        "50 sources, mixed": (50, 0.5, 4, 3, 16),
        "200 sources, mixed": (200, 0.5, 4, 8, 16),
        "200 sources, hard": (200, 1.5, 6, 8, 24),
    }
    print(f"{'scenario':22}{'fixes':>6}{'new':>5}{'platform':>9}{'support':>8}{'hrs/wk':>7}{'FTE':>6}{'people':>7}")
    for name, args in scenarios.items():
        r = team_size(*args)
        print(f"{name:22}{r['fixes']:>6}{r['onboarding']:>5}{r['platform']:>9}{r['support']:>8}"
              f"{r['weekly_hours']:>7}{r['fte']:>6}{r['people']:>7}")

Saída:

scenario               fixes  new platform support hrs/wk   FTE people
10 sources, stable         2    4       20       8     34   1.5      2
50 sources, mixed         23   11       20       8     62   2.8      3
200 sources, mixed        92   30       20       8    150   6.7      7
200 sources, hard        416   44       20       8    488  21.7     22

Os cenários usam entradas ilustrativas em vez de medições reais, e os argumentos no script mostram cada um deles. Fontes estáveis quebram uma vez a cada quatro meses e levam quatro horas para serem corrigidas; as difíceis quebram uma vez e meia por mês e levam seis.

Duas coisas se destacam. Ir de 50 para 200 fontes mistas multiplica o número de fontes por 4, mas o tamanho da equipe por cerca de 2,4, porque o trabalho de plataforma é compartilhado. Em seguida, as mesmas 200 fontes passam de 7 pessoas para 22 puramente porque são mais difíceis de manter funcionando. A taxa de falhas afeta o número de pessoas mais do que o número de fontes, então esse é o número a medir primeiro.

O modelo reserva um quarto do tempo de cada pessoa para trabalho de projeto. Isso é enxuto. O livro SRE do Google estabelece uma meta de pelo menos 50% do tempo em engenharia em vez de trabalho operacional, e nessa proporção essas equipes seriam 1,5 vezes maiores. Se ninguém tem tempo para corrigir causas raiz, as mesmas falhas continuam voltando.

O que quebra primeiro

Uma a duas pessoas. O fator de ônibus. Tudo vive em uma única cabeça, e férias viram incidentes. Documente como cada fonte funciona e como corrigi-la. Compre sua infraestrutura em vez de operá-la.

Três a cinco pessoas. Qualidade. A equipe está ocupada corrigindo falhas visíveis enquanto falhas silenciosas se acumulam, como um seletor que retorna o campo errado com um 200. Nomeie um responsável pela qualidade e monitore o pipeline tanto no conteúdo quanto nos códigos de status.

Seis a dez pessoas. Duplicação e prioridades. Cada engenheiro construiu suas próprias retentativas e tratamento de proxy, e a fonte de cada parte interessada é urgente. É nesse ponto que um responsável pela plataforma compensa, junto com um responsável pelo produto que saiba dizer não.

Mais de dez pessoas. Coordenação e plantão. O livro SRE do Google calcula que uma equipe de site único com duas pessoas de plantão e turnos de uma semana precisa de pelo menos oito engenheiros. Poucas equipes de dados deveriam construir isso. Projete pipelines para se recuperar sozinhos e se atualizar depois, e mantenha cobertura ininterrupta apenas para o que os clientes realmente dependem.

Reduzindo o número de pessoas necessárias

  • Compre as camadas commodity. Nosso guia de construir versus comprar cobre o que realmente exige operar sua própria infraestrutura.
  • Corte fontes. Aposentar as dez fontes menos valiosas costuma ser a contratação mais barata que você pode fazer.
  • Prefira rotas estáveis. APIs oficiais, feeds e dados estruturados quebram menos do que seletores HTML.
  • Corrija classes de falha. Retentativas compartilhadas, verificações compartilhadas e parsers compartilhados transformam muitos pequenos incêndios em um só.

Conclusão

Não dimensione a equipe a partir de uma proporção. Dimensione a partir do número de fontes, da taxa de falhas e de quanto erro você pode se permitir, e meça esses números antes da próxima discussão de contratação. Nomeie um responsável pela qualidade desde cedo, compre o que não é seu diferencial, e espere que o gargalo mude conforme você cresce.

Fontes e referências

  • Google, Site Reliability Engineering, Being On-Call: sre.google
  • Google, Site Reliability Engineering, Eliminating Toil: sre.google

Perguntas frequentes

Quantos engenheiros uma equipe de web scraping precisa?

Depende mais de quantas fontes você mantém e com que frequência elas quebram do que do volume de dados. Não existe uma proporção da indústria publicada. No modelo deste guia, 10 fontes estáveis exigem cerca de uma pessoa e meia, e 200 fontes difíceis exigem mais de vinte. Calcule com seus próprios números.

Qual é o primeiro cargo a contratar depois do engenheiro de scraper?

Geralmente alguém responsável pela qualidade dos dados, porque erros silenciosos custam mais do que interrupções visíveis e engenheiros tendem a tratá-los como responsabilidade de outra pessoa. Em pequena escala, isso pode ser parte de um cargo já existente, desde que seja formalizado e tenha um dono.

Quando uma equipe deve manter plantão 24/7 para scrapers?

Somente quando um compromisso voltado ao cliente exigir isso. O livro SRE do Google estabelece o mínimo para uma equipe de site único com duas pessoas de plantão em oito engenheiros, então a maioria das equipes de dados deveria projetar para resposta em horário comercial e pipelines que se recuperam sozinhos.

É melhor comprar ou construir a coleta de dados?

Compre o que não é sua vantagem. Redes de proxy e infraestrutura de navegador raramente valem a pena serem mantidas internamente, enquanto a lógica de extração e as verificações de qualidade ligadas ao seu produto geralmente valem. Comprar desloca a necessidade de equipe, não a elimina.

Pronto para começar?

Experimente os proxies residenciais da Shifter, mais de 205M IPs, mais de 195 países, a partir de $ 0,75/GB.

Começar