Entrevista de Design de Sistemas: Conceba a Netflix

"Conceba a Netflix" é um problema dominado pela leitura, regido por um único facto: servir vídeo à escala global é muito mais um problema de distribuição de conteúdo e de armazenamento do que de computação. O entrevistador quer ver-te a separar o plano de controlo (navegação, pesquisa, recomendações) do plano de dados (transmitir efetivamente os bytes) e a raciocinar sobre a entrega de petabytes perto dos utilizadores.

Siga uma ordem: esclareça os requisitos, estime a escala, conceba o pipeline de upload/transcodificação, depois o percurso de reprodução através de uma CDN, e termine com o bitrate adaptativo e os trade-offs. O guia abaixo segue esta estrutura para que pratique o raciocínio, não memorize uma arquitetura.

1. Esclarecer os requisitos

Separe o funcional do não funcional e delimite o âmbito com precisão. O núcleo é: os utilizadores navegam num catálogo e veem vídeo de forma fluida em diferentes dispositivos e condições de rede.

  • Funcional: navegar/pesquisar o catálogo, iniciar a reprodução, qualidade adaptativa, continuar de onde ficou, múltiplos dispositivos.
  • Não funcional: disponibilidade muito elevada, baixa latência de arranque, reprodução fluida (sem interrupções por buffering), alcance global.
  • Fora do âmbito (diga-o explicitamente): os detalhes internos do ML de recomendações, a faturação, os detalhes de DRM — mencione-os e adie-os.

2. Estimar a escala

Os números justificam um design centrado em CDN. Suponha centenas de milhões de subscritores e muitos milhões de streams simultâneos no pico. Um único stream consome vários Mbps, pelo que o débito agregado atinge dezenas de terabits por segundo — impossível de servir a partir de poucos centros de dados centrais, o que motiva imediatamente a cache na periferia.

3. Pipeline de ingestão e transcodificação

Os masters carregados são processados offline, não no percurso de reprodução. Cada título é transcodificado em muitas renditions — várias resoluções e bitrates — e segmentado em pequenos fragmentos (de poucos segundos cada) para streaming adaptativo.

  • Fazenda de transcodificação: converte o master em renditions H.264/H.265/AV1 a vários bitrates; é um trabalho em lote extremamente paralelizável.
  • Segmentação e empacotamento: divide cada rendition em segmentos curtos com um manifesto (HLS/DASH) que os descreve.
  • Guarda as saídas em armazenamento de objetos (tipo S3) como fonte de verdade, e depois distribui o conteúdo popular para a periferia.

4. CDN e o percurso de reprodução

A reprodução é servida a partir da periferia, não da origem. Os segmentos de vídeo são colocados em cache em nós de CDN fisicamente próximos dos utilizadores (a Netflix opera os seus próprios equipamentos Open Connect dentro dos ISP). O cliente obtém o manifesto e depois extrai os segmentos do nó de periferia saudável mais próximo.

O plano de controlo (catálogo, pesquisa, perfis de utilizador, 'continuar a ver') é um conjunto separado de serviços de API sem estado, apoiados pelas suas próprias bases de dados e caches — devolve apenas metadados e um URL de manifesto, e está completamente desacoplado da pesada entrega de bytes.

  • Cache de periferia (CDN/Open Connect): serve a grande maioria dos bytes; pré-posiciona os títulos populares por região antes de surgir a procura.
  • Armazenamento de origem: armazenamento de objetos que suporta os cache miss.
  • APIs do plano de controlo: catálogo, autorização de reprodução, marcadores — payloads pequenos, escalados horizontalmente, com cache à frente.

5. Streaming de bitrate adaptativo

A reprodução fluida sob redes variáveis vem do cliente, não do servidor. O leitor monitoriza o débito e o nível do buffer, e alterna a qualidade do segmento para cima ou para baixo entre segmentos usando a lista de renditions do manifesto — bitrate mais elevado em ligações rápidas, mais baixo para evitar interrupções em ligações lentas.

6. Trade-offs a verbalizar

Termine com as tensões que um entrevistador ouve com atenção: o custo de armazenamento de pré-calcular todas as renditions versus a latência da transcodificação em tempo real (a Netflix pré-calcula — o armazenamento é mais barato do que o atraso no arranque); colocar tudo em cache versus colocar apenas o popular em cache na periferia (um catálogo de longa cauda não pode viver inteiramente em cada periferia); e consistência forte versus eventual para dados do plano de controlo como 'continuar a ver' (eventual está bem). Nomear isto é o que torna a resposta de nível sénior.

Pratique o design de sistemas da Netflix com ajuda em tempo real

O assistente de entrevistas de design de sistemas da Natively pode ajudá-lo a manter-se estruturado durante uma ronda em direto — sugerindo a próxima dimensão a abordar e mostrando os trade-offs em tempo real, tudo no seu próprio dispositivo.

Put it on your own machine.

A live-conversation assistant that runs locally. Nothing leaves your machine.

macOS 12+ · Windows 10/11

© 2026 Natively AI Private Limited

Source-available under the Natively Personal Use Source License v1.0 · IP geolocation by DB-IP