"Seu sistema está fazendo isso de propósito?"

Era 2019, e eu estava implantando um WES num centro de fulfillment de e-commerce em Fontana — 120,000 pés quadrados, 8,000 pedidos por dia, mais de quarenta pessoas na área de separação. Às 10h30 da manhã caiu a primeira onda do dia, e Chen, o supervisor de separação, apareceu na minha mesa balançando a lista de tarefas recém-impressa, cutucando o papel com o dedo.

"A UPS coleta às duas", ele disse. "E você colocou esses pedidos lá na tarefa número 180. Enquanto isso, quer que meus rapazes separem primeiro o da FedEx — e aquele caminhão não sai até as cinco? Se a gente perder a coleta da UPS, o problema é de quem?"

Li, o administrador do sistema, tentou explicar da mesa ao lado: "O sistema ordena pelo horário de corte do pedido. Esses pedidos da FedEx entraram ontem à noite..."

"Os pedidos de ontem à noite não são urgentes", Chen o interrompeu, batendo a lista na mesa. "Então é o quê — horário de corte ou horário de coleta?"

Desde então, vi alguma versão dessa discussão se repetir em meia dúzia de armazéns. Uma onda apenas desenha um círculo em torno do trabalho do dia. O que acontece dentro desse círculo — qual dessas centenas de tarefas vai primeiro — é onde um WES realmente ganha o seu salário. Erre essa sequência, e o prédio sangra dinheiro em silêncio todos os dias: caminhões parados no dock, hora extra na estação de auditoria, clientes ligando por causa de embarques atrasados.

Quatro mãos no volante

Primeira mão: o horário de coleta da transportadora. Esta é a restrição mais dura do prédio. Se um pedido não estiver separado, auditado e lacrado antes de o caminhão chegar, ele espera até amanhã. O cliente vê uma atualização de rastreio com um dia de atraso, e sua linha de suporte pega fogo. Em muitos armazéns que visitei, esse campo no WES ou não é mantido, ou é mantido mas nunca é de fato usado pelas regras de prioridade. De um jeito ou de outro, é peso morto.

Segunda mão: o horário de corte do pedido. Esta é a mão mais maltratada das quatro. Um corte cedo significa que o cliente pediu cedo. Não significa que o pedido é urgente. Um lote que entrou às 11 de ontem à noite contra um lote das 9 desta manhã que precisa pegar a coleta da UPS das 2 PM — qual é urgente? Obviamente o segundo. No entanto, muitos sistemas vêm de fábrica com a ordenação por horário de corte como regra padrão. Foi exatamente nisso que o Chen esbarrou naquela manhã.

Terceira mão: a rota de separação. Agrupar tarefas que ficam ao longo da mesma rota significa que os separadores andam menos e separam mais por hora. Não há nada de errado com esta mão — mas é a mão que economiza dinheiro, não a mão que salva o dia. Misture a hierarquia e as coisas descarrilham. Mais sobre isso daqui a pouco.

Quarta mão: o risco de falta e o nível do cliente. Alguns pedidos são problema desde o início: endereços onde o sistema diz que há estoque mas a prateleira está vazia, pedidos com exigências rígidas de lote e validade, clientes VIP cujas reclamações caem na mesa do dono. Separe esses primeiro para que os problemas apareçam cedo, ou tire-os do fluxo normal por completo. Nunca os deixe na cauda da onda.

Quatro mãos querem segurar o volante. O WES precisa de um jeito de resolver a briga.

Um separador escaneia um endereço de prateleira com um terminal portátil para confirmar a tarefa

Quando as regras brigam entre si

Aqui vai uma pergunta de verdade. Pedido A: feito ontem à noite, horário de corte mais cedo, num endereço no fundo do prédio, coleta da transportadora às 5 PM. Pedido B: feito hoje de manhã, corte mais tarde, bem ao lado da entrada da área de separação, coleta da transportadora às 2 PM. Qual vai primeiro?

A resposta é óbvia: o B. O horário de coleta é uma restrição dura. A rota de separação é uma otimização suave. Restrições duras sempre passam na frente das suaves.

Minha abordagem é por níveis, não por médias ponderadas. Ponderação soa científica, mas na prática é mingau — "horário de corte 40%, horário de coleta 30%, rota 30%" — e a sequência resultante não faz sentido para ninguém. Para o supervisor de chão, menos ainda. Níveis são mais simples: agrupe as tarefas por janela de coleta primeiro, ordene por rota dentro da janela, e suba os pedidos com risco de falta e os VIP um degrau dentro do seu nível.

Os níveis têm mais uma vantagem: o chão consegue lê-los. O supervisor abre a lista de tarefas e vê de relance que "tudo que sai nas próximas duas horas está na frente", então ele de fato segue o sistema. Caso contrário, ele volta a reordenar numa lista de papel, e o WES bem que poderia não existir. Já vi mais de um prédio onde a sequência do sistema e a sequência real de separação eram duas coisas completamente diferentes.

Duas formas de eu ver isso dar errado

A primeira forma de morrer: ordenar só pelo horário de corte. Em 2021 visitei um 3PL em Mira Loma que processava 15,000 pedidos por dia na alta temporada. A regra de prioridade do WES deles tinha exatamente uma linha: ordenar por horário de corte. Em dias de promoção, milhares de pedidos entravam de madrugada — todos em serviços lentos e baratos — e o sistema, obediente, separava primeiro esses pedidos "cedo". Toda tarde, os pedidos que realmente precisavam pegar as coletas do dia se acumulavam no fundo, e a estação de auditoria fazia hora extra até depois das nove. O dono me contou que uma alta temporada queimou perto de cem mil dólares em hora extra. Depois que trocaram a regra para níveis por horário de coleta, a hora extra praticamente sumiu. Aquilo não era um problema de sistema. Era um problema de regra.

A segunda forma de morrer: deixar o risco de falta fora da prioridade. Alguns pedidos já vêm sinalizados desde o início como prováveis faltas — quantidade em mãos que não bate com a prateleira, restrições de validade apertadas. Enterre esses no fundo da onda, e o separador só descobre o problema quando chega lá: o pedido inteiro trava, tratamento de exceção, caça ao estoque, divisão do pedido. Um processo atrás do outro, e a cauda da onda se estica. Pior: a estação de auditoria está esperando esse pedido para fechar um embarque, então a carga que já foi separada fica ali esperando também. A solução é puxar os pedidos de alto risco para frente e deixar os problemas aparecerem cedo. Descubra uma falta às 10 da manhã e você ainda tem tempo de caçar estoque ou transferi-lo. Descubra às 4 da tarde e tudo que você pode fazer é pedir desculpas ao cliente.

As duas formas de morrer têm a mesma causa raiz: a regra de prioridade foi desenhada em torno da justiça — primeiro a entrar, primeiro a sair — em vez das consequências. O que acontece se este aqui atrasar.


Aqui está uma coisa que você pode fazer amanhã. Abra seu WES, puxe três ondas liberadas hoje, exporte as listas de tarefas, ordene-as pelo horário de coleta da transportadora e compare com a sequência que o sistema realmente atribuiu. Se não baterem, não mexa ainda nos pesos nem reescreva as fórmulas. Vá verificar se os dados mestres de horários de coleta estão sequer sendo mantidos. Na minha experiência, a maioria das falhas de prioridade remonta a uma causa raiz chata: ninguém atualiza os horários de coleta. A transportadora mudou o cronograma, ninguém digitou. Um feriado adicionou uma carreta extra, ninguém registrou. Acerte os dados primeiro, e as regras começam a fazer sentido. Erre os dados, e nenhuma configuração de regra vai salvá-lo.

Traduzido do inglês. Em caso de divergência, prevalece a versão em inglês.