“Adicionar uma barra de pesquisa” acaba significando “escolher um mecanismo de busca, criar um modelo de relevância e controlar o índice para sempre”.

A pesquisa envolve dois aspectos que o ticket nunca menciona. O primeiro é a relevância: o que torna um resultado melhor do que outro, e quem decide isso? O segundo é operacional: onde fica o índice, como ele se mantém sincronizado com a fonte de verdade e o que acontece quando fica desatualizado? “Adicionar pesquisa” implica um controle da interface do usuário. O trabalho envolve a classificação e o índice.

Uma equipe que já lançou um sistema de busca sabe que a resposta raramente é a mesma duas vezes. A busca de texto completo do Postgres funciona bem até que alguém precise de tolerância a erros de digitação. O Elasticsearch é rápido até você começar a pagar por ele nos fins de semana. O Algolia é fácil de usar até você precisar de uma classificação personalizada. A estimativa depende do compromisso que a equipe está assumindo, e essa decisão geralmente ainda não foi tomada quando o ticket chega à fase de refinamento.

O que se fala na sala

Backend: “O Postgres consegue fazer isso com tsvector.”

PM: “Os erros ortográficos ainda devem ser mantidos? E os plurais?”

Front-end: “Vamos usar o preenchimento automático ou apenas o formato ‘enviar e depois exibir os resultados’?”

SRE: “Como estamos mantendo o índice sincronizado? Por meio de gatilhos? De uma tarefa? De um fluxo?”

Líder: “Quem detém a relevância quando alguém reclama que a resposta certa está na segunda página?”

Perguntas que vale a pena fazer antes de votar

  • Que corpus — quantos documentos, com que frequência eles são atualizados?
  • FTS do Postgres, um serviço de busca dedicado ou um serviço hospedado (Algolia, Typesense)?
  • Tolerância a erros ortográficos, stemming, sinônimos, plurais — quais estão incluídos no escopo?
  • Facetação e filtros, ou apenas uma única lista ordenada?
  • Como o índice se mantém sincronizado — e qual é o limite de desatualização?
  • Quem detém a relevância a longo prazo e como a ajusta?

Se a escolha da infraestrutura ainda estiver em aberto, essa decisão é um spike, e não uma tarefa — defina o escopo do spike e reavalie a estimativa da implementação assim que a tarefa de relevância tiver um responsável.

A caixa de pesquisa representa um dia. A relevância e o índice são as características — faça uma estimativa delas.

Consulte como estimar uma integração de pagamentos para ver o mesmo padrão — uma pequena área visível que esconde uma longa cadeia operacional — e os outros exemplos práticos de estimativas. Ou inicie uma sessão gratuita de Planning Poker quando a questão de relevância já tiver um responsável.