David Garcia

Programador Senior, NodeJS, PHP, Symfony & Backend   (Envíame un mensaje a través de LinkedIn)

Estoy orgulloso de verme como un Programador Senior muy motivado y con un gran interés en utilizar las últimas tecnologías. Además, tengo conocimientos de administración de sistemas operativos, gracias a mi experiencia tanto en Microsoft Windows como en distribuciones GNU/Linux (basadas en CentOS y Debian) para proporcionar servicios de Internet para cientos de clientes con millones de visitantes.

Para mí, el aprendizaje nunca se detiene, y por eso suelo ser autodidacta. Siempre intento obtener nuevos conocimientos para estar al día, independientemente de si se trata de un nuevo marco de trabajo (Framework), de un nuevo lenguaje de programación o de un nuevo sistema operativo.


¿Por qué yo?

Especialista Backend en PHP, Symfony, PHPUnit, PHPSpec, BeHat y en NodeJS, JavaScript, TypeScript, ExpressJS y Jest.

Experiencia Frontend en HTML, CSS, LESS, Bootstrap, JavaScript (ES6+) y jQuery.

Experiencia previa en NextJS, Angular, React, Python, Django, FastAPI y Go (Golang).

Gestión de infraestructura en la nube de Amazon Web Services (AWS) y Google Cloud Platform (GCP).

Conocimientos de Docker, Principios SOLID, Patrones de Diseño (Design Patterns), Arquitectura Hexagonal, Desarrollo Impulsado por el Dominio (Domain-Driven Development, DDD) y Microservicios.

Actitud positiva, ética de trabajo, motivación, liderazgo, metodologías AGILE y defensor de código de alta calidad y rendimiento.


Experiencia laboral

Programador Senior

Bismuse SL - Reus (Tarragona)

Líder de desarrollo en los principales proyectos de la empresa.

Diseño, implementación y migración de datos para operar con nuevos proyectos monolíticos, APIs y múltiples microservicios programados en PHP/Symfony, TypeScript/NodeJS y Golang.

Mejoras de usabilidad y rendimiento, aumentando en 4 veces el número de visitantes en menos de 6 meses (según Google Analytics).

Reducción de la carga de los servidores, proporcionando respuestas un 50% más rápidas y consumiendo menos recursos (según Blackfire).

Arquitecto de la nueva infraestructura de servidores distribuida en AWS (Amazon Web Services).

Implementación de medidas de mitigación de ataques DDoS (registrados) los cuales no han afectado la disponibilidad de los servicios (según Zabbix).

Mentor del resto de programadores del equipo, especialmente en relación con las Tests Automáticos (PHPUnit) y DDD.

  PHP  
  Symfony  
  PHPUnit  
  NodeJS  
  TypeScript  
  JavaScript  
  Go (Golang)  
  DDD  
  AGILE  
  Kanban  
  Blackfire  
  Zabbix  
  AWS EC2  
  AWS RDS  
  AWS ElasticSearch  
  AWS OpenSearch  
  AWS SQS  
  AWS RabbitMQ  
  AWS SNS  
  AWS ElastiCache (Redis)  
  Kerio Connect  
  GitLab  
  GitLab CI  
  Docker  
  MacOS  
  Linux  
  CentOS  
  Ubuntu  
Julio 2021 - Actualmente

Programador Senior Backend

Avanti Communications Group - Londres (Reino Unido)

Programador principal del equipo, posteriormente promocionado a Líder del equipo y Scrum Master.

Desbloquear un proyecto estancado durante más de 6 años; demostraciones iniciales en 4 meses; integraciones en 8 meses.

Integraciones de nuevos proyectos API y microservicios con las herramientas BSS principales de la empresa.

Uno de los dos únicos responsables de la calidad, seguridad y rendimiento del código fuente en múltiples proyectos.

Mentor del resto de programadores del equipo (de forma activa) y de otros equipos (de forma pasiva), especialmente en relación con los Tests Automáticos (PHPSpec y Behat) y nuevos componentes de Symfony.

  PHP  
  Symfony  
  PHPUnit  
  PHPSpec  
  Behat  
  NodeJS  
  Angular  
  DDD  
  AGILE  
  Kanban  
  Blackfire  
  SQL  
  RabbitMQ  
  ElasticSearch  
  AWS SQS  
  Auth0  
  GitLab  
  Jenkins  
  Docker  
  Linux  
  CentOS  
  Ubuntu  
Agosto 2019 - Julio 2021

Director Técnico

Crowd2Fund Limited - Londres (Reino Unido)

Contratado como Programador, ascendido a Jefe de Desarrollo y, finalmente, a Director Técnico.

Líder de programación del proyecto (implicación principal en funciones semi-inteligentes y nuevas APIs).

Reducción de la carga de los servidores web y de la base de datos en unos valores máximos del 96% (según Blackfire).

Optimización de los procesos existentes para aumentar el rendimiento hasta en un 60% (según Blackfire y Zabbix).

Arquitecto de la nueva infraestructura informática, reduciendo los costos previos en un 75% (después de pasar a una gestión DevOps interna).

Responsable de la seguridad del software y los datos, aplicando medidas de seguridad restrictivas (Zero Trust) y de monitoreo.

Mentor del resto de programadores del equipo, especialmente en relación con los Tests Automáticos (PHPUnit).

  PHP  
  Symfony  
  PHPUnit  
  PHPSpec  
  Behat  
  Blackfire  
  Zabbix  
  AWS EC2  
  AWS RDS  
  AWS ElastiCache (Memcached)  
  AWS ElastiCache (Redis)  
  GitHub  
  Scritinizer CI  
  Symfony Insights  
  Docker  
  MacOS  
  Linux  
  Ubuntu  
Junio 2015 - Julio 2019

Programador Backend

Rechannel Limited - Londres (Reino Unido)

Integraciones API con servicios ERP y CRM externos, aumentando las opciones comerciales de la empresa.

Colaboraciones en la implementación de más tests automáticos, aumentando la calidad del código.

  PHP  
  Symfony  
  PHPUnit  
  PHPSpec  
  Behat  
  GitHub  
  Scrutinizer CI  
  Vagrant  
  MacOS  
  Linux  
Abril 2015 - Junio 2015

Programador Senior PHP

Photo Interactive Services - Tarragona

Desarrollo de nuevas funcionalidades para la plataforma de gestión de contenidos.

Implementación de procesos de tratamiento de archivos de vídeo e imagen en segundo plano.

  PHP  
  Solr  
  Linux  
  Mint  
Enero 2014 - Julio 2014

Programador PHP

Inspira Project - Tarragona

Migración a nuevas versiones de PHP en múltiples proyectos de la empresa.

Desarrollo de una herramienta MVC y CMS propios para los desarrollos a medida de la empresa.

Implementación de la nueva infraestructura de servidores Web y DNS (Plesk) y Correo (Kerio MailServer).

Optimización de proyectos para hacerlos compatibles con los servicios de Marketing Digital ofrecidos por la empresa.

  PHP  
  Plesk  
  Kerio MailServer  
  Windows  
  Linux  
  CentOS  
Febrero 2012 - Noviembre 2013

Responsable de Tecnología

Neumo-Egmo Spain SL - Pol. Ind. Riu Clar (Tarragona)

Desarrollo del sitio web público, integrado con la intranet de la empresa.

Programación de la intranet de la empresa, interconectada con el ERP.

Optimización de los procesos de seguridad de la infraestructura informática.

Monitoreo de la seguridad y disponibilidad de la red local y servidores de la empresa.

  PHP  
  MySQL  
  SOAP  
  Windows  
  Linux  
Agosto 2011 - Noviembre 2011

Programador & Técnico de Sistemas

Unión Virtuality Estudios SL - Reus (Tarragona)

Desarrollo del sistema de gestión de quejas y sugerencias (QISS) para el Ayuntamiento de Reus.

Desarrollo del sistema de Notificaciones Telemáticas (eNOTUM) en el Ayuntamiento de Reus.

Implementación de sistemas de monitorización de red y servidores (Nagios y Zabbix) para la empresa y clientes.

Instalación y mantenimiento de sistemas de telefonía VoIP (Asterisk) para la empresa y clientes.

Realización de tareas de mantenimiento preventivo y correctivo en las instalaciones de los clientes.

  PHP  
  Symfony  
  MySQL  
  Nagios  
  Zabbix  
  Asterisk  
  Windows  
  Linux  
  Ubuntu  
Agosto 2011 - Noviembre 2011

Programador & Técnico de Sistemas

Monterey Derivados SL (Grup Gamagest) - La Pobla de Mafumet (Tarragona)

Desarrollo de sitios web corporativos para la promoción de productos y servicios.

Implementación de sistemas de monitorización de red y servidores (Nagios y Zabbix).

Técnico de Sistemas de soporte al usuario final y a los Administradores de sistemas de la empresa.

  PHP  
  MySQL  
  Nagios  
  Zabbix  
  Windows  
  Linux  
  Ubuntu  
Agosto 2011 - Noviembre 2011

Programador

IGS Software (IGS4 - Grup Gamagest) - La Pobla de Mafumet (Tarragona)

Desarrollo de sitios web corporativos para la promoción de productos y servicios.

  PHP  
  MySQL  
  Windows  
  Linux  
  Ubuntu  
Agosto 2011 - Noviembre 2011

Programador Becario

Avellana Digital - Reus (Tarragona)

Iniciativa en la solicitud de tareas de programación más complejas.

Desarrollo de pequeñas utilidades utilizadas por los clientes finales.

Creación de un portal informativo sobre novedades y actividades de la ciudad.

  PHP  
  CakePHP  
  MySQL  
  Windows  
Agosto 2011 - Noviembre 2011

Voluntariado

Beta Tester & Traductor

Colaborador habitual con múltiples estudios independientes de videojuegos.

Traductor colaborador con un estudio de videojuegos (2024-actualidad).

Traductor, Beta Tester y Soporte con un estudio de videojuegos de Holanda (2020-actualidad).

Traductor colaborador con un estudio de videojuegos de Dinamarca (2018-2021).

2018 - Actualmente

Contribuidor en librerías y repositorios de código abierto

GitHub

Uno de los principales programadores en la reimplementación del Mailgun SDK para PHP.

Contribuciones de código para Webmozarts Assert.

Incidencias abiertas en el repositorio de Symfony, derivando en cambios y mejoras en nuevas versiones.

Colaboraciones en repositorios de Symfony, Sonata Project, Liip, Doctrine, Mailgun, Intercom, Composer, Nelmio, ChartJS, etc.

2015 - Actualmente

Consultor Técnico

Bismuse SL @ Reus (Tarragona)

Sugerir mejoras de rendimiento (aumentando hasta un 50%) en el código fuente de los proyectos (según Blackfire).

Revisiones de código de forma periódica y contribuciones puntuales de nuevas funcionalidades.

Mentor de tests automáticos basados en PHPUnit.

Febrero 2019 - Julio 2021

Especialista de Redes

Reus Lan Party 2010 @ Reus (Tarragona)

Implementación de Nagios para monitorear la red durante el evento.

Març 2010

Formación

Curso de capacitación en TypeScript

Curso online @ CodeWithMosh.com

The Ultimate TypeScript Course

Año 2022

Curso de capacitación en NodeJS y ExpressJS

Curso online @ CodeWithMosh.com

The Complete Node.js Course

Año 2022

Conferencias Symfony Live & Symfony World

Conferencias presenciales & online

Symfony Live London (2015, 2016, 2017 & 2018)

Symfony World Online (2020)

2015 - 2020

Técnico Certificado en Panda Cloud Office Protection

Panda Security Certification Program

Técnico Certificado en Panda Cloud Office Protection

Año 2009

Técnico Superior en Administración de Sistemas Informáticos (ASI)

IES Baix Camp @ Reus (Tarragona)

Técnico Superior en Administración de Sistemas Informáticos (ASI)

Certificación Cisco CCNA-2

Certificación Cisco CCNA-1

Septiembre 2007 - Junio 2009

Técnico en Explotación de Sistemas Informáticos (ESI)

IES Baix Camp @ Reus (Tarragona)

Técnico en Explotación de Sistemas Informáticos (ESI)

Septiembre 2004 - Junio 2007

Conocimientos

Sistemas Operativos
Lenguajes de Programación & Motores de Ejecución
Proveedores de Servicios & Herramientas