En una empresa como Sesame, los developers tienen un papel protagonista. Ellos son los que ponen el músculo para que la máquina funcione perfectamente.
Uno de los programadores más carismáticos y diferentes es Rafa Capilla, nuestro Lead Backend Engineer. Nos ha hecho un hueco entre variables y códigos para hablar con él, y esto es todo lo que nos ha contado.
Soy una persona a la que siempre le han apasionado los ordenadores y cualquier cosa que tenga cables. De pequeño programaba reproductores de vídeo o juguetes electrónicos destinados a un público más adulto que yo porque estimulaban la mente por encima de otras opciones. El día que tuve consciencia de lo que era un ordenador y empecé a usarlo se me abrió todo un mundo de posibilidades.
En la época teen me interesé más por negocio y marketing, y es algo que me acompaña hasta el día de hoy. Por aquel entonces no tenía muy claro a qué dedicarme, lo que sí sabía es que tenía que ser un trabajo que involucrara un ordenador. Me apunté a un ciclo formativo para aprender programación lo más rápido posible y desde entonces no he parado de programar con un alto nivel de involucramiento en negocio, de aprender para intentar ser mejor y ayudar a que los demás puedan serlo más todavía.
Las funciones que desempeño en Sesame como Tech Lead son la de formar, ayudar, comunicar y mejorar los procesos del equipo para ser más rápidos, más fiables y más rentables cuidando al máximo el producto
Esto depende de a qué empresa le preguntes, es un poco el rol comodín (como el de CTO). Las funciones que desempeño en Sesame como Tech Lead son la de formar, ayudar, comunicar y mejorar los procesos del equipo para ser más rápidos, más fiables y más rentables cuidando al máximo el producto.
Como pilares básicos podría SOLID, event sourcing, CQRS, DDD y arquitectura hexagonal. Incluso en proyectos donde no los vayas a aplicar creo que sus principios te hacen crecer mucho como programador. También recomendaría formarse en soft skills. Luego, todo lo relacionado con agile y lean es un plus.
Sin duda los estudios online y la forma autodidacta. En mi caso, cuando empecé a estudiar no había tantas plataformas de educación online como ahora, así que tener acceso a la educación pública y a los ciclos formativos me sirvió para romper el hielo en un mundo en el que no sabías ni por dónde empezar. No quería tener un primer contacto de 4 años en la universidad, solo necesitaba un pequeño empujón en la dirección correcta.
Ahora aprendo mucho más rápido investigando por mi cuenta o yendo directo al grano con cursos de lo que quiero y eligiendo plataformas o profesorado que sepa que va a bajar al barro y explicar las cosas con ejemplos muy prácticos.
Creo que la más importante es la empatía, para poder ayudar a los demás cuando lo necesitan aunque no tengan la habilidad comunicativa necesaria para hacerlo saber, y tener tú mismo dicha habilidad para poder guiar o expresar lo que piensas de forma que todos te entiendan lo mejor posible.
La empatía es muy importante para poder ayudar y guiar a tu equipo
Una combinación entre aportar valor al producto, haber enseñado a los compañeros y haber aprendido algo de ellos.
Todo lo que involucra al sistema de billing generalmente es complicado, pero especialmente cuando hay que cambiar el modelo de negocio o incorporar nuevas funcionalidades como referidos, afiliados, etc.
La mejor parte de mi trabajo es ver cómo crece el equipo en cuanto a soft y hard skills y que cada día somos mejores haciendo nuestro trabajo
La más divertida es ver cómo crece el equipo (me incluyo) en cuanto a soft y hard skills y que cada día somos mejores haciendo nuestro trabajo. La más difícil seguramente involucre colas, sincronías y configuraciones automatizadas complejas o… poner el nombre correcto a las variables y métodos del código más difíciles de explicar.
A nivel organizativo uso Slack, bots, Google (Calendar, Docs, etc) y Notion. En el apartado técnico utilizo PHPStorm, Postman, Docker y todo el pack de tecnologías que acompañan al proyecto (MariaDB, Redis, SQS, S3, PHP…)
Los resultados técnicos los medimos con Sentry, Kibana, New Relic y SQS. Los de negocio con Kibana y consultas directas a nuestra base de datos, contamos con un panel donde podemos ver estadísticas de uso de secciones concretas.
Somos un equipo de 5 personas. Nos gusta comunicarnos en persona y usamos Slack si estamos en remoto. En cuanto a nuestra forma de trabajar, solemos hacer pair programming y gestionamos las tareas por prioridad en Scrumban. También tenemos dailys para reorganizar o repriorizar tareas y para pedir ayuda a los compañeros, aunque esto en realidad lo hacemos en cualquier momento que haga falta. Los puntos más importantes los reflejamos en Notion, donde todos podemos compartir experiencia.
El compañero ideal debe ser amable, resolutivo y comunicativo
Que sea amable, resolutivo y comunicativo.
Que lea sobre DDD, hexagonal y agile cuanto antes… ¡y que compre Bitcoins!
¿Quieres formar parte de nuestro equipo de Backend?