Currículum Vitae

Ulises Santana
Ulises Santana

👋 Hola! Soy Ulises Santana

Me gano la vida como Desarrollador Full Stack. JavaScript es mi lengua materna y la web mi patria. Trasteo con tecnologías desde las Islas Canarias 🏝️

Soy un Desarrollador Full Stack de las Islas Canarias con un fuerte enfoque en construir software mantenible y bien testeado. Llevo trabajando en productos digitales desde 2013 y desarrollando software profesionalmente desde 2016. JavaScript es mi lenguaje nativo —tanto literal como figuradamente— y me especializo en Node.js, TypeScript y tecnologías frontend como React.

A lo largo de los años he liderado equipos, contribuido a arquitecturas de gran escala e implementado prácticas como Clean Architecture, TDD y microservicios en entornos de producción. He construido motores de facturación usados por cientos de miles de usuarios, desplegado microfrontends para millones de personas y optimizado procesos complejos en Node.js de horas a minutos —uno de los cuales se convirtió en el tema de una charla y una entrada de blog. Me gusta compartir conocimiento y he formado tanto a compañeros como a clientes en JavaScript moderno, TypeScript y rendimiento asíncrono en Node.js.

Más allá del código, me importa profundamente cómo trabajamos como desarrolladores. Creo en las prácticas sostenibles, el aprendizaje continuo y devolver a la comunidad a través de charlas, talleres y herramientas de código abierto. También me apasiona la creatividad, ya sea diseñando herramientas para desarrolladores, paseando por la naturaleza con mi perro Mocha o aprendiendo a producir música.

A finales de 2022 reconocí que estaba sufriendo un burnout y decidí dar un paso atrás conscientemente para recuperarme. Esa pausa me ayudó a reconectar con lo que realmente importa: las personas. Desde entonces, he sido más intencional a la hora de crear formas de trabajar más saludables y sostenibles —no solo a través de prácticas como TDD o clean architecture, sino también fomentando entornos donde el bienestar es parte del proceso.

Como parte de la mentoría a desarrolladores junior, ahora comparto no solo conocimiento técnico sino también herramientas para gestionar el estrés y reconocer las primeras señales de burnout. Ayudar a otros a crecer sin quemarse se ha convertido en uno de los aspectos más significativos de mi trabajo.

Experiencia

Desarrollador Frontend · Kentech

01/2024 – Actualidad

Las Palmas de Gran Canaria, Las Palmas, España (Híbrido)

En Kentech he contribuido al desarrollo y mantenimiento de varios proyectos frontend en un entorno de alto tráfico. Entre mis responsabilidades se incluyen mejoras de arquitectura, refactorización de código legado con foco en la mantenibilidad, y redacción de documentación técnica para facilitar el intercambio de conocimiento en el equipo y reducir los silos de información. También realizo spikes técnicos y colaboro regularmente con otros desarrolladores para mejorar los flujos de trabajo.

He impulsado activamente la adopción del Desarrollo Guiado por Pruebas (TDD) en el equipo. A través de la programación en pareja y el apoyo individualizado, he contribuido a que las pruebas sean una parte más natural y consistente de nuestro flujo de trabajo. Como resultado, la cobertura de tests en uno de nuestros proyectos clave ha aumentado significativamente, lo que ha mejorado la estabilidad del código y la confianza al refactorizar. Además, he participado en el proceso de selección entrevistando candidatos y proponiendo una nueva prueba técnica orientada a evaluar la resolución de problemas y las habilidades de diseño de forma más efectiva.

  • TDD
  • Clean Architecture
  • TypeScript with ESNext
  • React
  • NestJS
  • Node.js
  • Jest
  • JavaScript with ES5
  • AngularJS
  • Husky
  • Socket.io
  • PHP7
  • MySQL
  • Backend For Frontend
  • Microfrontends
  • Docker
  • Gitlab
  • Express
  • Technical Documentation

Programador Senior · Triditive

04/2023 – 06/2023

Meres, Asturias, España (Remoto)

En Triditive contribuí de forma remota al desarrollo de una plataforma para gestionar flujos de trabajo de fabricación aditiva. Durante mi tiempo allí, apoyé diversas tareas técnicas y busqué oportunidades para aportar valor en un entorno dinámico y en rápida evolución. A pesar de la corta duración, mantuve mi compromiso con el código limpio, la colaboración asíncrona y la documentación de mi trabajo para apoyar al equipo.

  • Python
  • JavaScript
  • Docker
  • Additive Manufacturing
  • Github
  • Vue
  • jQuery
  • Flask
  • Async communication

Desarrollador Full Stack · Lean Mind

03/2020 – 10/2022

San Cristóbal de La Laguna, Santa Cruz de Tenerife, España (Remoto)

En Lean Mind trabajé de forma remota como parte de equipos multidisciplinares para distintos clientes, contribuyendo a productos que iban desde plataformas de e-learning hasta sistemas de facturación y herramientas de inteligencia de audiencia. La empresa opera con un fuerte compromiso con el Software Craftsmanship y la Programación Extrema (XP), algo que encajó perfectamente con mis propios valores como desarrollador. Nuestro trabajo no se centraba solo en entregar funcionalidades, sino en construir software mantenible, bien testeado y con significado.

Participé en el desarrollo full stack con tecnologías como Node.js, TypeScript, React y ocasionalmente PHP para el mantenimiento de sistemas legacy. Practiqué habitualmente la programación en pareja y el TDD, y contribuí a las decisiones arquitectónicas con la sostenibilidad a largo plazo en mente. En uno de los proyectos, nuestro equipo logró entregar funcionalidades a producción sin ningún informe de bugs gracias a una sólida estrategia de testing y al foco en la simplicidad. También logramos mejoras de rendimiento significativas optimizando procesos de datos que antes tardaban semanas en ejecutarse, reduciéndolos a un solo día. Más allá del trabajo con clientes, mentoricé a aprendices —uno de los cuales se incorporó posteriormente a la empresa— y lideré sesiones de formación interna para fomentar el aprendizaje continuo en el equipo.

  • Node.js
  • JavaScript
  • TypeScript
  • Hexagonal Architecture
  • eXtreme Programming (XP)
  • Test-driven Development (TDD)
  • React
  • PHP5
  • MySQL
  • MongoDB
  • Docker
  • Gitlab
  • Github
  • Bitbucket
  • Technical documentation
  • Async communication

Desarrollador Full Stack · Kentech

08/2018 – 03/2020

Las Palmas de Gran Canaria, Las Palmas, España

Tras ser ascendido en Kentech, asumí responsabilidades más amplias tanto en backend como en frontend. Alternaba entre el desarrollo de servicios backend en Node.js o PHP y la implementación de funcionalidades frontend con frameworks como AngularJS y React según las necesidades del equipo. Colaboré estrechamente con arquitectos de soluciones y líderes de equipo para diseñar soluciones escalables y prácticas alineadas con los objetivos del proyecto.

Durante este periodo, jugué un papel activo en la modernización de nuestras prácticas de desarrollo. Introduje varias herramientas y metodologías en el equipo, como TypeScript, NestJS, Storybook, Microfrontends, Cypress, Husky y la creación de paquetes npm internos. Estos esfuerzos contribuyeron a una base de código más cohesionada y mantenible, así como a mejores estándares de testing y documentación. Más allá del desarrollo, también apoyé los despliegues a producción, mantuve los entornos de desarrollo y ayudé en la entrevista e incorporación de nuevos desarrolladores tanto de frontend como de backend.

  • Node.js
  • AngularJS
  • React
  • TypeScript
  • Storybook
  • Jest
  • Husky
  • Socket.io
  • PHP7
  • MySQL
  • MongoDB
  • Microservices
  • Microfrontends
  • Redis
  • Docker
  • Gitlab
  • Express
  • NestJS
  • Technical Documentation

Desarrollador Backend · Kentech

06/2017 – 07/2018

Las Palmas de Gran Canaria, Las Palmas, España

Fui contratado como Desarrollador Backend gracias a mi interés y rendimiento en las tareas de Node.js durante mis prácticas. En los primeros seis meses, mis tareas principales fueron desarrollar nuevas funcionalidades en microservicios Node.js, apoyar al área de infraestructura y gestionar despliegues en nuestros entornos antes de que CI/CD llegara a nuestras vidas. Eso implicaba gestionar servidores web con Nginx y procesos pm2 para Node.js, además de gestionar los ficheros en los servidores para otros servicios. Afortunadamente, algunos compañeros muy capaces desplegaron Rancher con Docker conectado a nuestro Gitlab, lo que nos dio la oportunidad de incorporar CI/CD a nuestro flujo de trabajo.

Durante los siguientes seis meses, fui dejando de lado la infraestructura y empecé a crear nuevas funcionalidades en toda la pila. También evangelicé las buenas prácticas sobre Promises de ES2017 con async/await.

  • Node.js
  • AngularJS
  • Socket.io
  • PHP7
  • MySQL
  • MongoDB
  • Microservices
  • Redis
  • Docker
  • Gitlab
  • WordPress Development
  • Technical Documentation

Becario de Desarrollo Web · Kentech

03/2017 – 05/2017

Las Palmas de Gran Canaria, Las Palmas, España

Como parte de mi último año en el Ciclo Superior de Desarrollo de Aplicaciones Web, elegí hacer mis prácticas en Kentech —una de las pocas empresas en Gran Canaria que trabajaba con Node.js en aquella época. También fue una gran oportunidad para practicar el inglés profesional, ya que la empresa operaba íntegramente en ese idioma.

Comencé como tester de QA para la aplicación web principal de la empresa, pero pronto tuve la oportunidad de asumir tareas de desarrollo. Trabajé en optimizaciones de rendimiento de UI para Opera Mini y desarrollé un tema personalizado de WordPress para un sitio corporativo. Al final de las prácticas, mi mentor me introdujo en su arquitectura de microservicios y me planteó el reto de construir una prueba de concepto para un mecanismo de bloqueo de caché distribuida usando MySQL y Redis. Esa exposición práctica despertó mi interés en la arquitectura backend y sentó las bases para mi transición a un puesto a tiempo completo como backend.

  • Opera Mini Optimization
  • Node.js
  • AngularJS
  • Quality Assurance
  • PHP7
  • MongoDB
  • Gitlab
  • Docker
  • WordPress Development
  • Technical Documentation

Desarrollador Web · Cmas Digital

04/2016 – 09/2016

Maspalomas, Las Palmas, España (Parcialmente remoto)

Mientras cursaba el Ciclo Superior de Desarrollo de Aplicaciones Web me incorporé a Cmas Digital, un estudio de dos personas donde apliqué mucho de lo que había aprendido en Mokaps sobre contenido, flujo de proyectos e interacción con clientes. Como único desarrollador, diseñé y construí sitios web con WordPress, HTML5 y CSS3, creé wireframes y ayudé a organizar la información de los proyectos.

El puesto requería una gran autonomía e iniciativa. Mi experiencia en Mokaps me ayudó a adaptarme con fluidez a un rol más técnico, asumiendo la responsabilidad completa de los proyectos web.

  • HTML5
  • CSS3
  • JavaScript
  • PHP5
  • WordPress Development
  • Scrum
  • Kanban
  • UI/UX
  • Customer Management
  • Project Management

Social Media Manager / Cofundador · Mokaps Studio

02/2013 – 06/2015

Las Palmas de Gran Canaria, Las Palmas, España (Parcialmente remoto)

En Mokaps Studio, una pequeña agencia creativa que cofundé, lideré los esfuerzos de marketing digital mientras adquiría mi primera experiencia práctica con tecnologías web. Planifiqué y ejecuté estrategias de contenido en múltiples canales, gestioné comunidades online y me encargué de la comunicación de crisis cuando fue necesario. Como copywriter, fui responsable de todo el contenido del blog y también trabajé directamente en sitios web, insertando y maquetando contenido con HTML y CSS.

Gestionar una empresa también implicaba asumir múltiples roles. Me encargué de las relaciones con clientes, la planificación de productos, los presupuestos, los impuestos y la resolución de problemas del día a día. Esta experiencia me dio una perspectiva más amplia sobre los productos digitales y despertó mi interés por la programación, que más tarde se convirtió en mi camino profesional.

  • Digital Marketing
  • Social Media Strategy
  • Content Generation
  • Community Management
  • Customer Management
  • Project Management
  • Business Management
  • HTML5
  • CSS3
  • WordPress
  • Scrum
  • Kanban
  • Async communication

Formación

Técnico Superior en Desarrollo de Aplicaciones Web

10/2015 – 05/2017

CIFP Villa de Agüimes · Cruce de Arinaga, Las Palmas, España

Este programa de formación profesional de dos años me proporcionó una base sólida en tecnologías web, incluyendo HTML5, CSS3, JavaScript, Java, PHP, SQL y frameworks como Angular y Express. Aprendí tanto desarrollo frontend como backend, así como metodologías como MVC y Agile.

El programa también incluyó unas prácticas profesionales que realicé en Kentech. Esa oportunidad me permitió aplicar todo lo aprendido en un entorno real y confirmó mi decisión de dedicarme al desarrollo de software a largo plazo.

  • HTML5
  • CSS3
  • SQL
  • Java
  • PHP5
  • OOP
  • JavaScript
  • jQuery
  • MVC
  • Bootstrap 3
  • Progressive Web Apps
  • Angular 2
  • MongoDB
  • Node.js
  • Express

Técnico Superior en Gestión de Ventas y Espacios Comerciales

09/2011 – 11/2012

IES José Zerpa · Vecindario, Las Palmas, España

Antes de entrar en el mundo tecnológico, completé un ciclo formativo de 1.400 horas en gestión empresarial y marketing. Estudié áreas como la gestión de clientes, logística, ventas y elaboración de informes con Excel.

Aunque no directamente técnico, esta formación me dio una sólida comprensión de cómo funcionan las empresas, lo que ha resultado muy valioso a la hora de colaborar con stakeholders, entender los objetivos del producto y desenvolverme en entornos multidisciplinares.

  • Marketing
  • Customer management
  • Logistics
  • Sales
  • Business management
  • Office automation
  • Excel reporting

Hitos

  • Superé el burnout profesional

    10/2022 – 03/2023

    Tras sufrir un burnout profesional debido al exceso de trabajo sostenido y a la falta de límites claros, decidí dar un paso atrás para recuperarme y reflexionar. Este período me permitió reconstruir hábitos de trabajo más saludables, priorizar la sostenibilidad y reconectar con el tipo de desarrollo de software que aporta valor a largo plazo, tanto a los usuarios como a los desarrolladores. Fue un punto de inflexión clave en mi forma de entender el trabajo, la colaboración y el crecimiento.

  • Charla en JSDay Canarias 2022

    05/2022

    En esta charla compartí cómo optimizamos drásticamente un proceso pesado en Node.js, reduciendo su tiempo de ejecución de varias horas a tan solo minutos. Expliqué estrategias para gestionar flujos asíncronos y simplificar el código para lograr mejoras de rendimiento medibles.

    Ver en YouTube ↗
  • Organizador y anfitrión – Global Day of Coderetreat

    11/2019

    Co-organicé y fui anfitrión de la edición de Gran Canaria del Global Day of Coderetreat, un evento de jornada completa centrado en los fundamentos del diseño de software. Ofreció un espacio seguro y colaborativo para que los desarrolladores practicaran y reflexionaran sobre su oficio.

  • Taller para la comunidad React Canarias

    10/2019

    Impartí un taller práctico para introducir a los desarrolladores frontend en estrategias modernas de testing usando Cypress y React Testing Library. La sesión se centró en ejemplos prácticos y en fomentar una mentalidad de test-first.

    Ver en YouTube ↗
  • Charla en JSDay Canarias 2018

    11/2018

    Una charla introductoria sobre npm y cómo publicar paquetes en él.

    Ver en YouTube ↗
  • Compilé Node.js en un Chromebook en NodeConf EU

    11/2018

    Durante un taller en NodeConf EU compilé Node.js desde cero en un Acer Chromebook R11 con Debian virtual. Tardé casi 2 horas solo en compilar.

  • Segundo premio en el hackathon Hack for Good

    03/2017

    En un hackathon de 36 horas centrado en el bien social, mi equipo y yo desarrollamos Aprende con Amidi, una Progressive Web App para ayudar a enseñar y preservar la cultura canaria a través de cuestionarios interactivos.

  • Primer premio en el hackathon Startup Weekend

    03/2016

    Me uní a un equipo de habla inglesa en este hackathon de 54 horas, donde construimos BasketUp, una plataforma de análisis de baloncesto usando tres smartphones para el seguimiento del balón y la visualización de datos.

Eventos Asistidos

  • Socracan Las Palmas de Gran Canaria, España · 05/2025
  • Tenerife GG Santa Cruz de Tenerife, España · 07/2022
  • Pamplona Software Crafters Pamplona, España · 06/2022
  • JSDay Canarias San Cristóbal de la La Laguna, España · 05/2022
  • Socracan Santa Cruz de Tenerife, España · 02/2020
  • NodeCONF EU Kilkenny, Irlanda · 11/2019
  • JSDay Canarias San Cristóbal de la La Laguna, España · 11/2019
  • AdaLoversConf San Cristóbal de la La Laguna, España · 09/2019
  • JSConf EU Berlín, Alemania · 06/2019
  • CSSconf EU Berlín, Alemania · 06/2019
  • React Europe París, Francia · 05/2019
  • JSDay Canarias San Cristóbal de la La Laguna, España · 11/2018
  • NodeCONF EU Kilkenny, Irlanda · 11/2018
  • JSConf EU Berlín, Alemania · 06/2018
  • Socracan Las Palmas de Gran Canaria, España · 04/2018
  • JSDay Canarias Santa Cruz de Tenerife, España · 11/2017