Buscamos profesionales en desarrollo de frontend para afianzar el desarrollo de nuestra herramienta estrella, Neotype. Trabajarás sobre una plataforma que ya está en producción pero que sigue en constante crecimiento. Necesitamos ampliar nuestro equipo para poder continuar añadiéndole funcionalidades y afianzar las que ya tenemos en el mercado.
Requisitos técnicos
Imprescindibles
ReactJS: tres años de experiencia demostrable en desarrollo de frontends y/o microfrontends basados en React, con especial atención a:
* Desarrollo escalable y organizado de componentes fácilmente reutilizables que ayuden a abstraer el trabajo y faciliten modificaciones futuras.
* Consumo optimizado de los hooks internos de React (useState, useEffect…) y experiencia desarrollando y manteniendo hooks personalizados.
* Herramientas de debuguing de frontend a fin de detectar renderizaciones redundantes, llamadas duplicadas o componentes mal factorizados.
* Consumo de APIs REST autenticadas de manera eficaz, unificada y coherente para comunicar el frontend con el backend. Ello incluye consumir y comprender documentación generada con Swagger.
* Gestión eficaz y escalable de estados mediante el uso de react-redux o de useContext.
Herramientas básicas y buenas prácticas que consideramos fundamentales para trabajar con nuestro código:
* Typescript.
* ESLint.
* Herramientas de armonización de código como Prettier
Git y gitflow: experiencia demostrable en gestión de versiones limpia y madura con Git. Deben comprenderse y manejarse con soltura conceptos como:
* Versionado semántico.
* Pull Requests, revisiones de código y resolución de conflictos en merge.
* Especificación conventional commits.
* Scrum y metodología Agile: se debe demostrar experiencia en entornos de trabajo Scrum, así como sobrada familiaridad con la distribución del trabajo en épicas y tareas y la distribución de las mismas en sprints, así como con la estimación de las tareas técnicas.
Valorable
En React:
* Experiencia y/o conocimientos de la librería react-query para optimizar las interacciones entre el frontend y APIs REST.
* Uso de styled-components, idealmente Material-UI, haciendo uso de sus funcionalidades y estilos de manera eficaz y limpia.
* Uso y mantenimiento de formularios de Formik.
* Experiencia con herramientas para la gestión de estilos CSS tales como Sass o tailwind-css.
* Gestión de aplicaciones multi-idioma mediante la librería i18n y herramientas para el mantenimiento de traducciones como Crowdin.
* Herramientas para la documentación de componentes como Storybook o similares.
* Uso de librerías de tests E2E para frontend, como cypress.
Next.js: comprensión y/o nociones del popular framework basado en React, incluyendo uso de:
* Layouts para encapsular disposiciones de páginas.
* Next-auth para administrar autenticaciones.
* Middleware.
* Github actions: se apreciará cierta familiaridad con ellas.
* Consumo de websockets.
* Experiencia en el desarrollo y/o consumo de pasarelas de pago generadas con Stripe.
* Familiaridad con herramientas de diseño de UI (idealmente Figma) y de la traslación de dichos diseños a componentes.
* No desarrollarás backend, pero tener los conocimientos (o el interés por adquirirlos) para ejecutarlo localmente y comprender cómo funciona siempre será bienvenido.
Cómo trabajamos
* Distribuimos nuestras tareas y responsabilidades entre el backend (para la interacción con los modelos de inteligencia artificial, gestión de usuarios, contenidos y pagos) y frontend (para el consumo de todos los recursos internos).
* Estimamos las tareas necesarias para el desarrollo de una funcionalidad y nos las distribuimos en sprints de dos semanas.
* Nos mantenemos en contacto con reuniones cada uno o dos días para ponernos al día de cómo van nuestros avances.
* Nos gusta documentar bien el estado de nuestros desarrollos, así que cualquier aportación para facilitar el proceso de documentación y comprensión para nuestros repos siempre es alentado y bienvenido.
* Somos un equipo pequeño y 100% remoto, pero también nos gusta vernos para comer y echar unas risas de cuando en cuando.
Qué ofrecemos
* Flexibilidad horaria y trabajo 100% remoto.
* Ambiente de trabajo cercano y colaborativo en un equipo pequeño y cohesionado.
* Salario entre 35.000 y 40.000€ con posibilidad de variables en función de la valía.
* Oportunidades de proyeccción y evolución dentro del equipo.