Fonestar es un destacado fabricante de equipos y sistemas de audio profesional, especializado en sistemas de megafonía. En el equipo de I+D desarrollamos nuestros sistemas de manera integral, abarcando desde el diseño mecánico hasta las aplicaciones de usuario, incluyendo la electrónica y el software embebido. Nos esforzamos constantemente por alcanzar nuestro objetivo principal: ofrecer valor a los clientes y usuarios finales.
\n
¿Interesado en saber más sobre este trabajo? Desplácese hacia abajo y descubra qué habilidades, experiencia y cualificaciones académicas se necesitan.Actualmente desarrollamos un ecosistema de aplicaciones para interactuar con dispositivos en red local y en la nube. Nuestro front combina una aplicación de escritorio multiplataforma (React + Electron) y una aplicación móvil (React Native), ambas sustentadas por un monorepo TypeScript y un SDK propio.
\n
Es un contexto con diagramas interactivos, dashboards, múltiples paneles, datos en tiempo real y un fuerte enfoque offline‐first.
\n
Buscamos a una persona senior, autónoma y resolutiva, que disfrute de los retos técnicos y nos ayude a llevar funcionalidades a producción con calidad y velocidad.
\n
Lo que harás
\n
- Desarrollar y evolucionar funcionalidades end‐to‐end en React (desktop) y React Native (móvil).
- Trabajar en la app Electron (procesos main/renderer, IPC, empaquetado y distribución multi‐OS).
- Crear y mantener UIs complejas: múltiples vistas/pestañas, flujos densos, state interdependiente, diagramas (React Flow) y drag & drop avanzado.
- Diseñar e implementar estrategias offline‐first: persistencia local, caching, colas y sincronización diferida.
- Colaborar en la arquitectura del monorepo y en la integración de nuestro SDK propietario.
- Realizar code reviews, cuidar buenas prácticas y mejorar la calidad (tests, profiling, refactors).
- Participar en decisiones de UX y en la mejora continua del producto.
Requisitos imprescindibles\n
- Experiencia sólida en React construyendo interfaces complejas y con gran volumen de estado.
- Experiencia demostrable en React Native, incluyendo ciclo con Android Studio y Xcode.
- Electron en producción: IPC, procesos main/renderer, empaquetado y distribución.
- TypeScript avanzado (generics, tipos discriminados, utilidades, tipado estricto).
- Experiencia en aplicaciones complejas (múltiples vistas, flujos densos, alto nivel de interacción).
- Experiencia manejando datos en tiempo real: WebSockets, MQTT u otros sistemas event‐driven.
- Offline‐first: persistencia local, caching, colas y sincronización.
- Monorepos (Nx, Turborepo o workspaces) y paquetes compartidos.
- Capacidad para trabajar de forma autónoma y entregar features end‐to‐end.
- Concurrencia/asincronía: mutex, debounce, prevención de race conditions, control de ciclos async.
- Integración de SDKs propietarios: comprensión de patrones (singletons, callbacks, async lifecycle).
- Dominio de GitHub: ramas, PRs, code reviews, commits limpios, Actions (CI).
- Node.js: filesystem, procesos del SO, módulos nativos, ejecución fuera del navegador.
- Buenas prácticas y patrones de diseño; capacidad para entrar con rapidez en un codebase existente.
Muy valorable\n
- Experiencia con React Flow o librerías similares de diagramación/canvas (Konva, DnD Kit, etc.).
- Experiencia con dispositivos, IoT, comunicaciones locales o hardware (protocolos, puertos, servicios locales...).
- Conocimientos o experiencia con PostgreSQL, SQLite o persistencia local en general (IndexedDB, filesystem).
- Conocimientos de UX aplicados a interfaces avanzadas y flujos densos.
- Experiencia en testing: Jest, React Testing Library, Playwright.
- Docker y nociones de contenedores.
- Experiencia en CI/CD.
- Experiencia o interés en Material UI (MUI): componentes, theming, styled-components, design tokens.
- Experiencia en i18next u otras soluciones de internacionalización en React/React Native.
- Conocimientos de sistemas operativos desde el punto de vista del desarrollo: Windows, Linux y macOS.
- Capacidad para producir código seguro y confiable, evitando bugs, vulnerabilidades y problemas de estabilidad.
¿Qué ofrecemos?\n
- Salario: 35. € brutos/año.
- Trabaja 100% remoto, híbrido o presencial, según prefieras.
- Horario: lunes a jueves de 8a.m. a 16:30p.m. y viernes de 8:00a.m. a 14:00p.m. Jornada intensiva en verano (julio y agosto)
- Portátil y herramientas de trabajo, tanto software como hardware.
- Desarrollo personal y profesional. xohynlm Aquí no se limita a nadie, nos encantan las personas que suben el nivel del equipo y la empresa.