Bonhams
Head image
Bonhams
Oferta cerrada el 23/11/2022

Senior Backend Python Engineer

Remoto100%
🌱 Empresa en Crecimiento🚀 Prodcuto💻 Startup🙏 Gran cultura👩‍💻 Reto Tecnológico

Bonhams es una casa de subastas con casi ¡230 años de historia! Cuenta con presencia en todos los lugares del mundo y que, como cualquier negocio, necesita adaptarse a los tiempos. Por eso están creciendo (sin parar) en el área de tecnología. 🤖

Ya cuentan con varios manfreditas entre sus filas y el feedback es inmejorable. ¿Te apuntas? 👇

¿Qué harás?

Bonhams está en ese momento de transformación digital. Hace un tiempo decidieron que la plataforma web, que les había acompañado durante la última década, ya no era lo suficientemente flexible como para acomodar sus planes y decidieron crear una nueva en la que cada componente pueda ser creado, evolucionado y mantenido de manera independiente, dándoles la flexibilidad que su negocio les está demandando.

Esto les ha llevado a moverse de una arquitectura monolítica con un sistema poco flexible, difícil de mantener y debugear a una arquitectura basada en servicios más pequeños con responsabilidades bien definidas.

Aunque están abiertos a cualquier tecnología, siempre y cuando tenga sentido para el problema que se intenta resolver, han preferido construir nuestros servicios utilizando Python y las herramientas de su ecosistema como Django, Celery y FastAPI

Como parte del equipo de aplicaciones, tu principal tarea será construir el nuevo Bonhams, manteniendo estos nuevos servicios y creando nuevos que van a estar haciendo para hacerle la vida más fácil a otras partes y equipos de la organización.

Ahora mismo ya han generado algunos de los nuevos servicios que son consumidos por el Frontend. En el equipo intentan testear bien aunque les encantaría la idea de seguir TDD son conscientes de que no siempre es posible, aunque el código siempre tiene que estar bien testeado, también intentan automatizar todas las tareas repetitivas y en los nuevos servicios implementan CI/CD, también están implementando integraciones con Slack para automatizar reportes sobre datos y otras tareas tediosas.

Trabajan en un ambiente muy colaborativo en el que comparten el conocimiento con todo el equipo para seguir mejorando como desarrolladores y colaboran de la siguiente manera: 

  • Haciendo Pair Programming con el resto del equipo usando Slack / VS Code Live / up to you.
  • Participando en los refinement sessions via MS Teams.

Creando y revisando (Pull|Merge) Requests.

Tu evolución

Bonhams
Tu primer día

En 1 mes

Habrás completado tu onboarding, que incluirá conocer a todo el equipo y realizar “pair programming” con gente del equipo de aplicaciones y con gente de otros equipos que estarán encantados de contarte más sobre el flujo de la información.

Tendrás una idea un poco más clara de como funciona el mundo de las subastas de arte y, probablemente, ya tendrás un montón de código en producción.

Tus responsabilidades

  • Escribir código Python usando buenas prácticas, simple y mantenible.

  • Escribir tests utilizando Pytest, unittest y Django test framework.

  • Crear servicios Event consistent y transmitir eventos entre servicios mediante mensajes y colas (arquitectura Publisher/Subscriber).

  • Crear ETL entre sistemas para alimentar diferentes partes del ecosistema de Bonhams

  • Trabajar mano a mano con Product Management y Design para crear y pulir el backlog y priorizar su roadmap

  • Trabajo en equipo: pedir ayuda y saber prestarla cuando sea necesario.

¿Cómo lo harás?

Escribiendo muchos tests, haciendo mucho pair programming, revisando código del resto en las pull request y teniendo muchas conversaciones con el resto del equipo sobre por donde podéis hincarle el diente a cada problema que pueda surgir.

Lo harás colaborando con otros equipos para definir contratos entre aplicaciones y APIs,  haciendo muchos spikes para ver si esa idea que se os ha ocurrido, esa librería que habéis visto o ese SaaS que promete tanto, os ayudará a resolver ese problema que se pretende resolver en el medio y largo plazo.

¿Cuándo trabajarás?

La jornada es flexible, solo piden que la gente esté disponible en la franja central del día, nadie está 100% conectado todo el tiempo, ni se espera que sea así, desde las 8:30 hasta las 17:30 suele haber gente online, unos dejan / recogen a los peques, otros van al gimnasio, etc.

Realmente mientras no impacte al resultado final y podáis tener una comunicación mínima, realmente “it’s up to you”. :)

Día laborable

Jornada completa

Vacaciones

25 días

Jornada laboral

Flexible

¿Dónde trabajarás?

Remoto

100%

Pues desde donde tú quieras realmente, los headquarters de la empresa están en Londres y de vez en cuando el equipo queda para tomar una cerveza o un agua (los que viven en UK sobre todo :-D).

De vez en cuando hacen eventos de team building y, muy raramente, van a la oficina por planificaciones u otros eventos.

Si vives en España lo normal será que el trabajo sea 99.99% remoto.

¿Con quién trabajarás?

Bonhams es una empresa con casi 800 empleados/as por todo el mundo, por suerte, en el equipo de tecnología son 21 (ish) developers. Se dividen en datos, servicios y sincronizaciones (AKA backend) y aplicaciones (hay quien lo llama frontend).

En el equipo de aplicaciones ahora mismo son 5 devs lo que les da bastante agilidad y una comunicación muy fluida.

El hecho, de que todos los miembros del equipo sean seniors les ayuda a moverse rápido y con confianza y, además, les permite aprender los unos de los otros. En el futuro tienen pensado introducir perfiles con menos experiencia, pero ahora mismo quieren crear una base sólida que les permita hacerse con el ownership de este tipo de cosas.

El equipo trabaja usando Scrum (sprints de 2 semanas) en las cuales tienen unas 2h totales de meetings (retro, estimaciones), quieren ser tan ágiles como puedan, se juntan y discuten las estrategias y los enfoques cuando hace falta, por chat o por video y una vez tienen un plan se lanzan al código.

Humphrey Brandes: Product manager, es la persona que les permite comunicarse con el business, tiene muchísima experiencia en el mundo de las subastas y siempre está a mano para ayudar, hizo sus pinitos con el código, lo que ayuda mucho a tener un lenguaje común.

Alejandro Tabares: Head of Software Engineering, un developer que pasa la mayor parte de su vida en meetings para evitar que el equipo lo esté :-D

Javier Bordalás: Lead Backend Developer.

El equipo es un grupo de gente apasionada por el código y la tecnología, les gusta el deporte (ciclismo) a otros salir al campo / montaña, otros son más de futbol (sobre todo en la tele) y sobre todo, lo que les gusta a todos es jugar a juegos absurdos de cartas los viernes para echarse un buen rato.

¿Qué piden?

Imprescindible:

  • Experiencia con Python y herramientas de su ecosistema como Django, FastAPI
  • Experiencia escribiendo tests y mocks, todo tiene que estar testeado.
  • Familiarizado con sistemas Event Consistent (Publisher/Subscriber) utilizando Celery, RabbitMQ.
  • Estar familiarizado con Postgres y ElasticSearch.
  • Experiencia con Docker y docker-compose.
  • Estar familiarizado con la creación de RESTful APIs y mejores prácticas.
  • Estar familiarizado con prácticas de CI/CD, utilizamos Gitlab, Ansible, Fabric.
  • Hablar y entender Inglés, no es para un examen, solo para que te entiendan y entiendas (no dejes que esto te frene).
  • Atención al detalle.

Les dejarás perplejos si además…

  • Tienes conocimientos de DevOps y Cloud computing con Azure
  • Familiarizado con Azure
  • Kubernetes

Tecnologías

Innegociable

  • Python
    Avanzado
  • Django
    Avanzado
  • RabbitMQ
    Intermedio
  • Docker
    Intermedio

Estaría bien

  • Fastapi
    Intermedio

Suma puntos

  • Kubernetes
    Intermedio
  • Azure
    Intermedio

Otras habilidades

Innegociable

  • Adaptabilidad al cambio
  • Atención al detalle
  • Capacidad de dar feedback
  • Trabajo en equipo

¿Qué ofrecen?

Salario

Hasta 65K

Horario

Flexible

Remoto

100%

🏖️ 25 días de vacaciones 

📡 Trabajo remoto 100%, pero siempre con la posibilidad de acudir a la oficina de Londres cuando quieras.

🕓 Horario flexible.

🗺️ Plan de carrera.

💻 Equipo necesario para que puedas trabajar cómodamente (portátil, monitor).

🧸 Posibilidad de elegir tu entorno de trabajo: Linux, MacOS o Güindous.

Beneficios

Presupuesto para formación
Presupuesto para Conferencias
Descuento en productos de la empresa
Dinámicas y eventos de teambuilding
Posibilidad de elegir equipo

What the FAQ?

Sí, aunque siempre y cuando tengas pasaporte de la Unión Europea… Por temas administrativos.

La verdad es que necesitan cubrir la posición YA de YA, por lo que tratarán de ser lo más ágiles posibles.

Normalmente, su proceso de selección consta de 2 fases: entrevista cultural y prueba técnica.

Alguna vez organizan algún encuentro presencial (ej. alguna de los teambuildings, o raramente alguna reunión de equipo).