SIGN IN
Menu
Speak to the team
SIGN IN
Audiense - oficina de Córdoba 2

VACANTE CUBIERTA
Software Engineer

El reto

En Audiense procesamos a diario datos e interacciones de más de mil millones de perfiles sociales sobre los que aplicamos diferentes algoritmos de clasificación y segmentación, y con ello ayudamos a nuestros clientes (empresas líderes a nivel mundial como Twitter, Telefónica, DHL o Puma) a definir campañas de marketing, identificar influencers o descubrir nuevos nichos de mercado.

Tenemos el reto de optimizar la ingestión, enriquecimiento y almacenamiento de esa creciente cantidad de datos y que su procesamiento para ofrecer insights sea lo más cercano posible a conseguirlo en tiempo real.

Para ello contamos con un pipeline que ingiere datos de un sistema de enriquecimiento y procesado escrito principalmente en Node.js. Este sistema consume diferentes APIs y aplica una serie de algoritmos para inferir nuevas características.

Este pipeline es capaz de mantener actualizado un data lake de más de 100TB que después son usados para la generación de informes para nuestros clientes usando Spark y Scala.

La mayor parte del código es un monolito escrito en Node.js. Estamos en vías de desacoplarlo y este es uno de los mayores retos a los que nos enfrentamos actualmente. Algunas partes del sistema, más orientadas al procesamiento de datos, se están escribiendo desde cero en Scala, pero también estamos reescribiendo parte de la lógica de negocio en Typescript. 

Para todo ello intentamos seguir los principios de Domain Driven Design, SOLID, Arquitectura Hexagonal etc, por lo que buscamos personas que conozcan estos principios y los apliquen en su día a día.

Uno de nuestros principales retos a nivel de frontend y usabilidad es representar de la manera más accionable y comprensible posible una enorme cantidad de información compleja sobre las audiencias objetivo. Para ello contamos con un stack React.js, Typescript, Redux, Webpack y Styled components.

Además del reto visual, tenemos otra serie de retos muy interesantes: mejorar nuestra base de tests end2end, desacoplar toda la base de código frontend del monolito, desarrollar un sistema de notificaciones robusto que permita mayor independencia del boot inicial y de llamadas a APIs, establecer un sistema de métricas frontend para mejorar la performance aplicando mejores y más robustas estrategias de caché, y migrar código a Typescript aplicando principios SOLID y de Arquitectura Hexagonal.

Pero nuestros usuarios no son solo nuestros clientes directos, también contamos con un potente programa de partnerships que ofrecemos vía una API privada, y aunque aún está en beta, ya tiene más de 50 clientes y mucho potencial y desarrollo por hacer.

Todo nuestro stack está alojado en AWS, usamos principalmente Docker (ECS), EC2 y Lambda para ejecutar nuestro código y gran variedad de otros servicios como SQS, SNS, RDS, etc.

¿Cómo trabajamos?

Nuestra sede principal está en Londres desde donde trabaja parte del equipo directivo, el equipo comercial y parte del equipo de atención al cliente. El equipo de ingeniería y producto trabaja en remoto desde diferentes ciudades de España pero tenemos una oficina en Córdoba.

Te unirás a un equipo muy cohesionado (más de 4 años de media juntos) en un ambiente muy colaborativo en el que te sentirás parte del grupo desde minuto cero del onboarding.

Apostamos por una cultura “remote first” trabajando de forma 100% distribuida desde hace más de 5 años. Nuestra mentalidad, flujos de trabajos y comunicación asume que todos estamos en remoto. Prácticamente todo queda documentado en Github: planes de crecimiento, learning path, arquitectura, protocolos, onboarding, playbooks, design system, UX guidelines, etc. Invertimos todo lo que esté a nuestro alcance en automatizar para que podamos ser lo más autónomos posible y suplir esas consultas de girar la silla en la oficina, muy necesarias especialmente durante el onboarding.

Aplicamos diferentes metodologías ágiles según el equipo pero todos siguen algunos principios básicos. Priorizamos las funcionalidades que más valor aportan a nuestros clientes y en vez de poner deadlines vamos haciendo pequeñas entregas intentando siempre tener una versión funcional y entregable de la feature. Intentamos mantener el número de tareas en paralelo al mínimo posible. Tenemos pocas reuniones programadas pero no faltarán los daily meetings, sprint planning y review quincenales así como 1:1s regulares con el manager y con el CTO, y no dudamos en saltar a un hangout si un hilo de Slack o de correo se está alargando.

Creemos en extreme programing como técnica de desarrollo por lo que gran parte del tiempo hacemos pair programing (sí, en remoto) y TDD es nuestra principal herramienta para escribir un código robusto y testeable. Hacemos integration continúa y estamos en vías de extinguir las ramas para hacer trunk base development, aquí hay reto también.

El código que escribimos a día de hoy intentamos que respete los principios de SOLID, clean code y aplicamos arquitectura hexagonal y domain driven design cuando la complejidad lo requiere. Pero no te vamos a engañar, en 6 años también hemos hecho muchas chapuzas y antipatrones, considéralo una oportunidad de ver ejemplos reales de lo que no hay que hacer y de practicar técnicas de refactoring.

Tenemos una cultura de aprendizaje continuo y fomentamos que ello ocurra durante el horario de trabajo. Como equipo hemos hecho un pacto de learning path, así que al unirte a Audiense estás aceptando dicho pacto. Si has seguido un camino similar estamos ansiosos por conocerte y aprender de tus experiencias; sino, estamos deseando poder apoyarte con recursos, tiempo y mentoría para que estemos alineados.

Estamos moviéndonos de una cultura de silos hacia una mentalidad más t-shaped. No buscamos fullstack developers pero si nos interesa que además de tu vocación principal, ya sea frontend, backend, sistemas, etc, seas lo suficiente versátil como para asumir las tareas que más valor aportan a nuestros clientes y no las que más se adapten a tus skills.

Puedes conocer más sobre nuestra cultura en nuestro blog de ingeniería y cuenta de instagram.

¿Qué buscamos?

Nos gustaría que tengas experiencia aplicando domain driven design, arquitectura hexagonal y que entiendas el reto de desacoplar un monolito y llevar un producto que ha encontrado su market fit al siguiente nivel. Esperamos te alinees con nuestro core learning path (extreme programming, TDD, DDD, Clean code, Clean architecture) y valoramos toda la experiencia previa en ese sentido.

Nuestro stack se resume en Node.js (ES6 y Typescript), Scala, Python, React, MongoDB, MySQL, RabbitMQ, Redis, AWS (SNS, SQS, API Gateway, Cognito, Lambda, Redshift, Aurora, DynamoDB).

No es requisito dominar estas tecnologías, nos interesan más los principios detrás de todas ellas, aunque para los proyectos inminentes ayudará a avanzar más rápido algo de experiencia con Node.js, Typescript, MongoDB, MySQL y en menor medida React, pero siempre con mentalidad t-shaped y dispuesta a evolucionar en el stack de frontend también.

Apostamos por el aprendizaje continuo, por lo que es muy importante que tengas ganas de aprender y seguir practicando las habilidades necesarias para ejecutar nuestra profesión. Practice, practice, practice!

El trabajo remoto tiene muchas ventajas pero también exige un esfuerzo extra de comunicación y responsabilidad, por lo que entendemos que estas aptitudes son esenciales: capacidad de autogestión, comunicación fluida, respeto e inclusividad.

¿Qué ofrecemos?

  • Salario 35K€-50K€
  • Subvención mensual para co-workings.
  • Learning days. Puedes formarte en horario de trabajo.
  • Presupuesto para formación que incluye acceso ilimitado a los catálogos de SafariBooks y Coursera.
  • Trabajo 100% remoto con flexibilidad horaria.
  • Días festivos de la localidad que elijas.
  • Día libre el día de tu cumpleaños.
  • Quarterly engineering meetups, 3 días de sesiones de retrospectiva, hacking, team building y ocio en Córdoba. ¡No te imaginas lo bien que se come en Córdoba!
  • Yearly global all hands. 3-4 días con sesiones de team building y ocio para toda la empresa.
  • Portátil con posibilidad de elegir entre Mac o PC.
Audiense - oficina de Córdoba

¿Cómo será el proceso y onboarding?

  • Envía un email a jobdev@audiense.com presentándote y contándonos por qué encajas con el perfil que buscamos. Tu CV también nos será útil pero no es lo más importante.
  • Si pasas el filtrado inicial de aplicaciones o te contactamos directamente, tu primera entrevista será con nuestro CTO (Alfredo Artiles).
  • Tendrás una segunda entrevista con algunos miembros del equipo. Buena oportunidad para que preguntes todo lo que quieras a tus potenciales futuros compañeros.
  • Luego buscaríamos una forma de validar que tienes las habilidades y experiencia que buscamos. La mejor forma es haciendo pair programming con el equipo en alguna tarea real. Cuanto más tiempo quieras dedicar más podrás validar que te atrae nuestra forma de trabajar, el reto y el equipo, evidentemente te pagaríamos las horas trabajadas. Si esta vía no te viene bien por tu disponibilidad o porque no te sientas cómoda intentaríamos adaptarnos.
  • Si te logramos convencer de que te unas al equipo, el primer día un miembro del equipo te ayudará a preparar tu ordenador para trabajar y será tu mentor durante los siguientes meses.
  • Durante el primer mes harás mucho pair programming con nuestro CTO puesto que asumirás algunas responsabilidades que en la actualidad asume él dentro del equipo al que te incorporarías.

Sobre Audiense

Audiense permite a las  organizaciones innovadoras entender y aplicar el poder de la segmentación de audiencias e insights reinventando el uso de los datos sociales acorde a las distintas legislaciones vigentes para hacerlos más estratégicos y conectarlos con la estrategia de negocio y marketing de forma que sean relevantes y aporten valor.

La avanzada plataforma de datos Audiense ha atraído a numerosos clientes de primera categoría como Twitter, Telefónica, Puma y DHL. También hemos desarrollado importantes colaboraciones con Twitter e IBM. Somos uno de los dos únicos partners certificados de Twitter en las categorías de análisis de datos y publicidad, lo que asegura a nuestros clientes la posibilidad de obtener detallados insights y aprovechar al máximo sus inversiones en Twitter gracias a una avanzada microsegmentación. También somos colaboradores de IBM Watson, que ayuda a enriquecer nuestra base de datos con análisis cognitivos, que incluye información sobre personalidad, imágenes y sentimiento. Esto da a nuestros clientes ventaja sobre sus competidores ya que pueden reunir una valiosa y detallada información, en tiempo real, sobre las audiencias que importan a su negocio.

Fundada en 2011 por Javier Burón y Alfredo Artiles, Audiense tiene oficinas en Londres y Córdoba (España) y actualmente cuenta con 25 empleados de los cuales más de la mitad son de los equipos de ingeniería y producto.

Audiense - oficina de Córdoba 1

 

ESTA VACANTE YA HA SIDO CUBIERTA

Comparte esta oferta