Las entrevistas de PHP cubren semántica del lenguaje, OOP, Laravel o Symfony, MySQL, y fundamentos de seguridad web. Aquí están las preguntas más comunes con respuestas modelo. Senior: arquitectura, trade-offs, mentoría y toma de decisiones.
Pruébalo — sin cuenta necesaria
Preparando tu pregunta…
Temas para prepararte
✓OOP y SOLID en PHP
✓Laravel / Symfony
✓MySQL y optimización de consultas
✓Composer y autoloading
✓Sesiones, cookies, seguridad
✓Estándares PSR
6 preguntas de nivel Senior con respuestas
1
¿Dónde debería vivir la lógica de negocio en una aplicación Laravel?
Respuesta
Ni en el controller ni en el modelo, porque lo primero la hace inalcanzable desde un command y lo segundo hace del modelo un lugar donde todo se acumula. Clases de servicio o de acción con una sola responsabilidad, que toman lo que necesitan y devuelven un resultado, se mantienen testeables y llamables desde un controller, un job o un comando de consola por igual.
2
¿Cómo haces un deploy sin downtime con un cambio de schema?
Respuesta
En etapas que cada una funcione con el código en ejecución: agrega una columna nullable, despliega código que escribe en ambas, haz backfill en chunks, cambia las lecturas, y luego elimina la columna vieja en un release posterior. La trampa específica de PHP es el opcache — un deploy que cambia archivos bajo un proceso en ejecución puede servir una mezcla de viejo y nuevo hasta que se limpia.
3
¿Cómo encuentras por qué una aplicación PHP se puso lenta?
Respuesta
Un profiler sobre un request real en vez de una suposición — Xdebug o Blackfire nombrarán la función, y la respuesta suele ser cantidad de consultas más que PHP en sí. Luego revisa lo obvio de infraestructura: opcache habilitado en producción, y si el framework está arrancando más service providers de los que el request necesita.
4
¿Qué cacheas, dónde, y cómo lo invalidas?
Respuesta
Cachea lo costoso y estable: un reporte calculado, un árbol de config, una consulta cuyo resultado cambia raramente. Etiquétalo para que una escritura relacionada pueda limpiar un grupo en vez de todo el store. La expiración basada en tiempo está mal pero se autorepara, y para la mayoría de los datos pesados en lectura supera a la invalidación explícita que eventualmente olvidarás llamar.
5
¿Cómo mantienes actualizable un codebase PHP de larga vida?
Respuesta
Manteniéndote cerca del framework en vez de envolverlo en tus propias abstracciones, ya que cada wrapper es algo que mantienes a través de sus upgrades. Luego: una política de dependencias, análisis estático a un nivel que realmente exijas, y actualizar una versión menor a la vez para que el salto nunca sea un proyecto. Un codebase dos mayores atrás es uno que nadie quiere tocar.
6
¿Cuándo no usarías un framework?
Respuesta
Para un servicio pequeño con un solo trabajo, donde el costo de arranque y la superficie de dependencias no compran nada — unos pocos archivos y un router son honestos. En el momento en que necesitas auth, migrations, colas y un modelo de permisos, escribirlos tú mismo cuesta más que aprender los de alguien más. La decisión de la que hay que cuidarse es un framework elegido para un servicio que nunca va a crecer hacia él.
🦎
Leer respuestas no es suficiente
En una entrevista real hablas bajo presión. Cam hace estas mismas preguntas, evalúa cada respuesta y muestra exactamente qué mejorar.