No Grupo Stefanini, acreditamos no poder da colaboración. Co-creamos soluciones innovadoras en asociación con nuestros clientes, combinando tecnología de punta, inteligencia artificial y la creatividad humana. Estamos a la vanguardia de la resolución de problemas de negocio, proporcionando un impacto real a escala global. Al unirte a Stefanini, te conviertes en parte de un viaje global de transformación. Estamos comprometidos con crear un impacto positivo no solo en los negocios, sino también en la vida de nuestros colaboradores. Si buscas una oportunidad de crecimiento profesional en una empresa que valora la innovación, el respeto, la autonomía y la colaboración, ¡la encuentras aquí! Únete a nosotros y sé parte del cambio! #LIONSITE #LI-SS1
Estamos buscando una Persona Desarrolladora Front-end React Senior para participar en el desarrollo y evolución de aplicaciones web modernas, con enfoque en React, TypeScript y arquitectura de Microfrontends (MFE). La persona profesional será responsable de construir componentes reutilizables, desarrollar aplicaciones SPA, integrar APIs y BFFs y actuar en una arquitectura distribuida, considerando también aspectos de seguridad, autenticación, autorización y rendimiento.
Buscamos a alguien con un fuerte dominio técnico de React y TypeScript, experiencia práctica con arquitecturas de Microfrontends y capacidad para actuar con autonomía en entornos de alta complejidad.
**Principales responsabilidades**
- Desarrollar y evolucionar aplicaciones SPA utilizando React y TypeScript.
- Crear componentes funcionales, reutilizables y escalables.
- Utilizar Hooks de React, Context API y React Router.
- Desarrollar custom hooks y soluciones de componentización avanzada.
- Implementar y mantener arquitecturas de Microfrontends.
- Trabajar con Module Federation 2.0, incluyendo conceptos de host, remote y shared dependencies.
- Implementar la integración entre Microfrontends utilizando Bridge Pattern.
- Garantizar el correcto compartir y versionado de dependencias entre aplicaciones.
- Integrar aplicaciones frontend con APIs y Backend for Frontend (BFF).
- Implementar el tratamiento de respuestas, errores estructurados, CORS y credenciales.
- Aplicar buenas prácticas de seguridad en el frontend, incluyendo protección contra XSS y control de acceso basado en permisos.
- Trabajar con autenticación basada en OIDC/OAuth2 y comprender conceptos de sesiones y tokens.
- Desarrollar interfaces responsivas utilizando CSS Modules, Flexbox, Grid y CSS Custom Properties.
- Realizar depuración y análisis de rendimiento utilizando las herramientas de desarrollador de los navegadores.
- Participar en code reviews y contribuir a los estándares de calidad y arquitectura.
- Mantener documentación técnica de las soluciones desarrolladas.
- Colaborar con equipos de desarrollo, arquitectura, backend y demás áreas técnicas.
**Requisitos obligatorios**
*React*
- 4 a 5 años de experiencia en desarrollo Front-end.
- 3+ años de experiencia práctica con React.
- Experiencia con React 19.
- Dominio de Hooks: useState, useEffect, useCallback, useMemo, useContext y useRef.
- Experiencia con Context API, Provider/Consumer y contextos tipados.
- Dominio de React Router v6, incluyendo: rutas dinámicas; rutas anidadas (nested routes); navegación programática; Outlet; basename.
- Fuerte experiencia en componentización, composición y reutilización de componentes.
- Experiencia en la creación de custom hooks.
- Dominio de renderizado condicional, listas y uso adecuado de keys y memoización.
*TypeScript*
- Dominio de TypeScript en modo strict.
- Tipado de props, estados, respuestas de APIs y eventos.
- Experiencia con interfaces y types.
- Modelado de dominio y DTOs.
- Conocimiento de tipos de respuesta de APIs y discriminated unions.
- Experiencia en tipado de Hooks, Contextos y custom hooks.
*Microfrontends*
- Experiencia práctica con arquitectura de Microfrontends.
- Conocimiento de aplicaciones independientes y despliegue independiente.
- Dominio de Module Federation 2.0.
- Conocimiento de los conceptos de: Host y Remote; Shared dependencies; Singletons; Versionado; Manifests.
- Experiencia con Bridge Pattern para el aislamiento e integración de React Router entre Microfrontends.
- Conocimiento de gestión de dependencias compartidas, incluyendo singleton, carga eager/lazy y resolución de conflictos de versiones.
*Seguridad*
- Conocimiento sobre el uso de cookies httpOnly y autenticación basada en sesión.
- Comprensión de los flujos OIDC/OAuth2, incluyendo IDP, tokens y sesiones.
- Experiencia/conocimiento de RBAC en el frontend, con control de acceso por permisos.
- Conocimiento de protección contra XSS.
- Conocimiento sobre sanitización de inputs y Content Security Policy.
- Comprensión de los riesgos y limitaciones del uso de dangerouslySetInnerHTML.
*APIs y BFF*
- Dominio de Fetch API y/o Axios.
- Experiencia con peticiones HTTP, headers, async/await y tratamiento de errores.
- Conocimiento del patrón BFF — Backend for Frontend.
- Experiencia en el tratamiento de respuestas envueltas (envelopadas) y errores estructurados.
- Conocimiento de CORS, preflight requests y credenciales.
- Experiencia con withCredentials en escenarios de autenticación.
*CSS y UI*
- Dominio de CSS Modules.
- Conocimiento sólido de CSS moderno: Flexbox; CSS Grid; Custom Properties; Responsividad.
*Herramientas*
- Dominio de Git, incluyendo branching, merge/rebase, resolución de conflictos y code review.
- Experiencia con npm, package.json, scripts, lockfiles y gestión de dependencias.
- Dominio de ESLint y Prettier.
- Experiencia con DevTools del navegador, especialmente Console, Network y Performance.
**Conocimientos deseables**
- Suspense y recursos de concurrencia de React.
- Lazy loading y Suspense Boundaries.
- Zustand u otras bibliotecas de gestión de estado.
- React Hook Form.
- Generics avanzados y Utility Types de TypeScript.
- Type Guards y Type Narrowing.
- Path aliases y configuración avanzada de tsconfig.
- Registro dinámico de Microfrontends en runtime.
- Exposición y consumo de módulos con Module Federation.
- MUI (Material UI) v7.
- Emotion / CSS-in-JS.
- Accesibilidad (a11y).
- Pruebas automatizadas con Jest, React Testing Library o Vitest.
- Pruebas unitarias y de integración.
- Experiencia con CI/CD.
**Diferenciales**
- Conocimiento de RSBuild como bundler.
- Experiencia con troubleshooting de Module Federation, incluyendo shared scopes, errores de carga de chunks y conflictos de versiones.
- Conocimiento de Error Boundaries y estrategias de recuperación de fallos.
- Experiencia con patrones avanzados de React, como: Render Props; Compound Components; Controlled/Uncontrolled Components.
- Conocimiento de JWT/JWKS.
- Conocimiento de prácticas de seguridad OWASP para SPAs.
- Experiencia con AuthProvider/RBACProvider.
- Conocimiento de modelos de permisos estructurados.
- Experiencia con Design Systems y bibliotecas de componentes.
- Experiencia con theming por sistema o tenant.
- Conocimiento básico de Docker y Docker Compose.
- Experiencia con distribución y versionado de paquetes compartidos vía npm.
- Conocimiento de npm pack, npm link y workspaces.
**Beneficios**
- 🍛 Vale alimentación o vale comida;
- 👨🏼🎓 Descuento en cursos, universidades e instituciones de idiomas;
- 📚 Academia Stefanini: plataforma con cursos en línea, gratuitos, actualizados y con certificado;
- 🗣 Mentoring;
- 💉 Club de ventajas para consultas y exámenes;
- 🏥 Asistencia médica;
- 🦷 Asistencia odontológica;
- 💰 Club de ventajas y descuentos en los mejores establecimientos;
- 🛫 Club de viajes;
- 🐶 Convenio para mascotas.