Symfony

Symfony

BACKEND

Framework PHP full-stack desarrollado por SensioLabs que ofrece una arquitectura modular basada en componentes reutilizables. Patrones de diseño sólidos (MVC, Dependency Injection), sistema de bundles extensible, ORM Doctrine potente y ecosistema rico para construir aplicaciones web escalables y mantenibles.

Lo que aprenderás

PHP moderno con tipado estricto, atributos PHP 8+ y autoloading PSR-4

Arquitectura MVC con controllers, rutas y motor de templates Twig

Dependency Injection nativa con autowiring y configuración YAML/XML/PHP

Doctrine ORM con entities, repositories, migraciones y DQL

Bundles reutilizables para modularidad y organización del código

Symfony Console para comandos CLI y scripts automatizados

Componente Security para autenticación, autorización y firewall

Componente Form con validación, protección CSRF y theming

Componente Messenger para async/queue con transports (RabbitMQ, Redis)

Testing completo (PHPUnit, tests funcionales, Panther para E2E)

Temas clave a dominar

Los conceptos más importantes para entender esta tecnología y aprobar tus entrevistas

1

PHP: namespaces, autoloading PSR-4, traits, interfaces, tipado estricto PHP 8+

2

Arquitectura Symfony: HttpKernel, ciclo Request/Response, eventos, kernel listeners

3

Controllers: routing, annotations/attributes, parámetros de request, tipos de response

4

Routing: YAML/annotations/attributes, parámetros de ruta, requirements, prefijos

5

Dependency Injection: servicios, autowiring, service container, compiler passes

6

Doctrine ORM: entities, annotations/attributes, asociaciones (@OneToMany, @ManyToOne)

7

Doctrine repositories: consultas personalizadas, QueryBuilder, DQL (Doctrine Query Language)

8

Migraciones: DoctrineMigrationsBundle, versionado, migraciones up/down

9

Twig: sintaxis de templates, filtros, funciones, herencia (extends, block), includes

10

Forms: FormType, form builders, restricciones de validación, tipos de form personalizados

11

Validación: anotaciones de restricción (@NotBlank, @Email), validators personalizados, grupos

12

Seguridad: authentication providers, voters, firewalls, jerarquía de roles, remember me

13

Eventos: EventDispatcher, event subscribers, eventos del kernel (request, response, exception)

14

Serializer: normalización, desnormalización, grupos, normalizers personalizados, formatos (JSON, XML)

15

Messenger: message handlers, transports, procesamiento async, estrategias de reintento

16

Console: comandos (clase Command), input/output, helpers, barras de progreso

17

HTTP Client: componente HttpClient, requests, autenticación, mecanismo de reintento

18

Cache: cache pools, cache tags, adapters (Redis, APCu, Filesystem)

19

Bundles: estructura de bundle, clase extension, configuración, bundles de terceros

20

Testing: PHPUnit, WebTestCase, tests funcionales, fixtures, mocking

21

Performance: profiler, estrategias de caching, lazy loading, opcache, preloading PHP 8

22

API Platform: APIs REST/GraphQL sobre Symfony, serialización, filtros, paginación

23

Despliegue: Symfony CLI, variables de entorno (.env), Docker, composer optimize