Entrevistas de PHP cobrem semântica da linguagem, OOP, Laravel ou Symfony, MySQL, e fundamentos de segurança web. Abaixo estão as perguntas mais comuns com respostas modelo. Senior: arquitetura, trade-offs, mentoria e tomada de decisão.
Experimente — sem necessidade de conta
Preparando sua pergunta…
Temas para se preparar
✓OOP e SOLID em PHP
✓Laravel / Symfony
✓MySQL e otimização de queries
✓Composer e autoloading
✓Sessões, cookies, segurança
✓Padrões PSR
6 perguntas de nível Senior com respostas
1
Onde a lógica de negócio deveria viver numa aplicação Laravel?
Resposta
Nem no controller nem no model, porque o primeiro a torna inacessível a partir de um command e o segundo faz do model um lugar onde tudo se acumula. Classes de service ou de action com uma única responsabilidade, que recebem o que precisam e retornam um resultado, permanecem testáveis e chamáveis de um controller, um job ou um comando de console igualmente.
2
Como você faz deploy sem downtime com uma mudança de schema?
Resposta
Em etapas que cada uma funcione com o código em execução: adicione uma coluna nullable, faça deploy de código que escreve em ambas, faça backfill em lotes, mude as leituras, e só então remova a coluna antiga num release posterior. A armadilha específica do PHP é o opcache — um deploy que muda arquivos sob um processo em execução pode servir uma mistura de código velho e novo até que seja limpo.
3
Como você descobre por que uma aplicação PHP ficou lenta?
Resposta
Um profiler sobre um request real em vez de um palpite — Xdebug ou Blackfire vão nomear a função, e a resposta costuma ser quantidade de consultas mais do que o PHP em si. Depois revise o óbvio de infraestrutura: opcache habilitado em produção, e se o framework está inicializando mais service providers do que o request precisa.
4
O que você cacheia, onde, e como invalida?
Resposta
Cacheie o que é caro e estável: um relatório calculado, uma árvore de config, uma consulta cujo resultado muda raramente. Marque com tags para que uma escrita relacionada possa limpar um grupo em vez do store inteiro. A expiração baseada em tempo está "errada" mas se autocorrige, e para a maioria dos dados pesados em leitura supera a invalidação explícita que você eventualmente vai esquecer de chamar.
5
Como você mantém um codebase PHP de longa vida atualizável?
Resposta
Ficando perto do framework em vez de envolvê-lo em suas próprias abstrações, já que todo wrapper é algo que você mantém através dos upgrades dele. Depois: uma política de dependências, análise estática num nível que você realmente cobre, e atualizar uma versão menor de cada vez para que o salto nunca vire um projeto. Um codebase duas versões maiores atrás é um que ninguém quer tocar.
6
Quando você não usaria um framework?
Resposta
Para um serviço pequeno com um único trabalho, onde o custo de inicialização e a superfície de dependências não compram nada — alguns arquivos e um router são honestos. No momento em que você precisa de auth, migrations, filas e um modelo de permissões, escrevê-los você mesmo custa mais do que aprender os de outra pessoa. A decisão que exige cuidado é um framework escolhido para um serviço que nunca vai crescer o suficiente para justificá-lo.
🦎
Só ler as respostas não basta
Numa entrevista de verdade você fala sob pressão. O Cam faz essas mesmas perguntas, avalia cada resposta e mostra exatamente o que melhorar.