Pular para o conteúdo

Tema

Além da ementa

Folha de revisão · 5 temas · Engenharia de Analytics

Feita para a véspera. Imprimir esta página tira o menu e as abas.

dbt: transformação versionada em SQL

É a ferramenta que o mercado de analytics assumiu, e a banca pergunta não o que ela é, mas o que ela resolve. A resposta boa liga a três coisas que já vieram antes: versionamento e revisão, teste de dado, e linhagem. Quem descreve dbt como 'roda SQL' não mostra por que ele mudou a rotina.

Como cai: O que o dbt resolve que rodar scripts SQL agendados não resolve?

Erros comuns

  • Descrever dbt como orquestrador. Ele transforma dentro do banco e resolve a ordem entre modelos; quem agenda e coordena o resto do pipeline é o orquestrador.
  • Achar que dbt move dados. Ele não extrai nem carrega: opera sobre o que já está no warehouse. É o T do ELT.
  • Escrever o nome da tabela em vez da referência. Sem a referência, o grafo de dependências não se monta e a ordem de execução volta a ser manual.
  • Materializar tudo como tabela. Modelo intermediário costuma ser view; tabela custa armazenamento e tempo de build. Incremental existe para o que é grande e cresce.
  • Confundir teste genérico com teste de negócio. Unicidade e não nulo são o mínimo; o teste que pega erro caro compara o total com a origem.
  • Usar snapshot achando que é backup. Snapshot captura mudanças de registro ao longo do tempo, implementando dimensão de mudança lenta, e não serve para restaurar ambiente.

Vocabulário

snapshot
— Mecanismo que captura mudanças de um registro ao longo do tempo, implementando dimensão de mudança lenta do tipo 2: preserva o valor antigo com data de validade quando o novo chega.

Camada semântica e definição de métricas

É a resposta estrutural para a pergunta que abre quase toda sabatina de Analytics: por que dois relatórios divergem. Reconciliar caso a caso resolve o incidente; camada semântica resolve a classe do problema. Quem só sabe reconciliar mostra operação; quem propõe a camada mostra arquitetura.

Como cai: Cada área calcula 'cliente ativo' de um jeito. Como você resolve isso de forma definitiva?

Erros comuns

  • Achar que o problema é técnico. Duas definições de receita convivendo é problema organizacional; a camada semântica dá o lugar para resolvê-lo, mas alguém precisa decidir qual vale.
  • Deixar cada painel calcular a métrica. É assim que definições divergentes nascem: a lógica fica duplicada em ferramentas diferentes e evolui separada.
  • Escrever definição ambígua. 'Cliente ativo é quem comprou recentemente' não é definição; sem janela, sem critério de compra e sem tratamento de cancelamento, cada pessoa implementa uma coisa.
  • Não nomear o dono da métrica. Sem alguém que responda pela definição, qualquer mudança vira discussão sem árbitro.
  • Versionar métrica sem avisar. Mudar a definição muda a série histórica; quem olha o gráfico vê uma quebra que parece do negócio e é da régua.
  • Confundir camada semântica com dicionário de dados. O dicionário descreve colunas; a camada semântica define métricas e é consultável, entregando o mesmo número a qualquer ferramenta.

Vocabulário

camada semântica
— Lugar onde métricas e dimensões são definidas de forma consultável, para que ferramentas diferentes recebam o mesmo número com a mesma regra.

Estatística para analytics, sem virar estatístico

A banca não vai pedir derivação de fórmula. Vai descrever um achado com armadilha estatística e ver se você morde: 'as vendas caíram 8% esta semana' ou 'quem usa o recurso X compra mais'. Quem responde sem perguntar pela variação normal ou pela seleção da amostra entrega uma conclusão que não se sustenta.

Como cai: A conversão de quem usa o recurso novo é o dobro. Podemos dizer que o recurso aumenta a conversão?

Erros comuns

  • Reportar média sem olhar a distribuição. Média em distribuição assimétrica ou com valores extremos descreve mal o típico; mediana e quartis costumam informar melhor.
  • Tratar correlação como causalidade. Pode haver causa reversa, terceira variável ou coincidência; afirmar causa exige desenho que isole o efeito.
  • Confundir variação normal com tendência. Todo indicador oscila; sem noção da variação habitual, qualquer movimento vira reunião.
  • Comparar grupos sem checar se são comparáveis. Quem escolhe usar um recurso costuma ser diferente de quem não escolhe, e essa diferença explica boa parte do resultado.
  • Ignorar o paradoxo de Simpson. Um padrão pode existir no agregado e se inverter em cada subgrupo, quando os subgrupos têm tamanhos e taxas diferentes.
  • Encerrar teste A/B ao ver resultado favorável. Parar quando deu bom, sem tamanho de amostra e duração definidos antes, é a forma mais comum de fabricar significância.

Vocabulário

autosseleção
— Quando as pessoas escolhem em qual grupo estar. Quem opta por usar um recurso já é diferente de quem não opta, e essa diferença contamina qualquer comparação entre os dois grupos.

Segurança e privacidade de dados em banco

Em banco, privacidade não é assunto jurídico: é requisito de arquitetura. A banca usa este tema para ver se você projeta pensando em quem pode ver o quê, ou se joga tudo cru no lake e resolve depois. Também é o tema em que responder 'a gente criptografa' sem qualificar derruba a nota.

Como cai: Um analista precisa cruzar transações por cliente sem ver o CPF. Como você resolve?

Erros comuns

  • Dizer que dado pseudonimizado está fora da LGPD. Só o dado anonimizado sai do escopo da lei; pseudonimizado continua sendo dado pessoal, porque existe uma chave que reverte a operação.
  • Chamar hash de CPF de anonimização. O hash é determinístico e o universo de CPFs é pequeno e enumerável: dá para montar a tabela inteira por força bruta e reidentificar todo mundo.
  • Tratar mascaramento como se fosse criptografia. Mascaramento age na exibição do dado; criptografia protege o dado armazenado ou em trânsito. Cada um responde a uma ameaça diferente.
  • Achar que criptografia em repouso resolve acesso indevido. Quem tem permissão de leitura recebe o dado já decifrado; contra o analista curioso o controle é RBAC, ABAC e máscara de coluna.
  • Confundir base legal com consentimento. Consentimento é uma das dez hipóteses do art. 7º; em banco a maior parte do tratamento se apoia em execução de contrato, obrigação legal, prevenção à fraude e proteção ao crédito.
  • Despejar tudo cru na zona raw e adiar a proteção para a camada de consumo. A raw costuma ser a zona com menos controle e mais retenção: é ali que o vazamento acontece.
  • Esquecer o direito de eliminação no desenho. Formato imutável, backup e log de auditoria transformam um DELETE simples em projeto se ninguém pensou nisso antes.

Vocabulário

RBAC
— Acesso concedido pelo papel do usuário.
ABAC
— Acesso decidido por atributos do usuário e do dado no momento da consulta.

Como responder na sabatina

A sabatina avalia raciocínio em voz alta, não recall. Dois candidatos com o mesmo conhecimento tiram notas diferentes por causa de estrutura de resposta. Este é o único tema que melhora sua nota em todos os outros.

Como cai: Você não sabe a resposta. O que faz?

Erros comuns

  • Responder rápido demais. Começar a falar em dois segundos sinaliza reflexo, não raciocínio, e você perde a chance de fazer a pergunta que reduziria o escopo.
  • Monólogo de dez minutos. A banca precisa cobrir vários assuntos; quem não devolve a palavra é interrompido e leva a nota de quem não sabe ouvir.
  • Jargão sem explicar. Dizer shuffle, CDC ou idempotência sem uma frase de tradução não prova domínio, prova que você decorou o termo.
  • Negar a premissa da pergunta. Se o entrevistador diz 'o pipeline está lento', responder 'mas não deveria estar' queima tempo. Aceite o cenário e trabalhe dentro dele.
  • Chutar quando não sabe. Um chute errado contamina toda a resposta anterior; dizer o que você faria para descobrir mantém a credibilidade e ainda mostra método.
  • Só teoria, sem exemplo. Resposta correta e genérica pontua menos que resposta correta com um caso que você viveu, mesmo pequeno.
  • Fechar sem recomendar. Listar três opções e não escolher nenhuma é o jeito mais comum de parecer indeciso justamente quando você tinha a resposta certa.