Soy David Pérez
Senior Software Developer
Profesional de la Ingeniería de Software, durante 20 años he desempeñado roles técnicos y de gestión, lo que me ha permitido adquirir una visión transversal de la evolución del producto.
He cursado estudios de postgrado en Big Data, para completar mi formación académica de Licenciado en Psicología e Ingeniero Técnico Informático..
De trato fácil, responsable, y orientado al trabajo en equipo, busco nuevos retos en proyectos innovadores.
Habilidades técnicas
Java
Es el lenguaje de programación en el que más cómodo me encuentro. He trabajado en java y su ecosistema durante los últimos 18 años.
Diseño de software
Patrones Gof, principios SOLID, código limpio y en general buenas prácticas de diseño de software son conceptos con los que me siento cómodo y trato de aplicar en mi día a día. Durante 8 años desempeñé el rol de analista orgánico, asumiendo y documentando todo tipo de decisiones de diseño.
Spring
A pesar de que trata de un framework realmente grande, he trabajado con sus principales proyectos spring boot, core, security, batch, spring data (mysql, mongo, elk).
Bases de datos
No me considero un experto en este ámbito, pero si he tendio un bagaje bastante amplio. Oracle y MySql han sido las principales bases de datos relacionales con las que he trabajado. También he tenido la oportunidad de utilizar algunas de las bases de datos NoSQL más importantes como mongo, redis, elasticsearch, neo4j o HBase.
Metodología
Las principales metodologías con las que he trabajado, tanto desde el ámbito de gestión como del de desarrollo han sido RUP y Scrum, sin perder de vista aspectos de calidad y trazabilidad mediante herramientas de apoyo como Jira, Confluence, Redmine, Rational Team Concert, Git, Bitbucket, Gitlab, etc. En general puedo enfrentarme con solvenccia a la gestión de equipos, toma de reguisitos, análisis funcional y diseño técnico detallado.
Big Data
Aunque carzco de experiencia profesional esspecífica en este ámbido, he cursado dos másters Big Data, que junto al conocimiento de bases de datos NoSQL, los entornos cloud y escalables en los que se trabaja actulamente y algo de experiencia en Spark y Kafka, creo que me adaptaría a este ecosistema rápidamente
Arquitectura de software
Sin ser uno de mis fuertes, puedo desenvolverme con solvencia en la descomposición de responsabilidades, identificación y diseño de componentes, o elección de soluciones de terceros.
Servicios
Desarrollo Backend
Programación Java y Spring, en combinación con seguridad, colas de mensajería, bases de datos relacionales y NoSQL. Entornos distribuidos, web y Big Data.
Arquitectura software y diseño de componentes
Diseño integral de soluciones de software, diseño de soluciones ad-hoc, integración con sistemas de terceros.
Consultoría
Toma de requisitos, análisis funcional, diagramas de contexto, BPMN y UML, medición de software (IFPUG, NESMA Y SNAP), EDT (Work Breakdown structure).
Experiencia
Formación académica
Postgrado (15 ECTS)
Big Data Managements and Analytics (15 créditos ECTS)Máster (60 ECTS)
Data management e innovación tecnológica en Big Data (60 crédito ETCS)Ingeniero Técnico
Ingeniería Técnica en informática de sistemasLicenciado
Licenciado en psicologíaExperiencia Laboral
Desarrollador Sénior
En estrecha colaboración con el CTO, mi responsabilidad se centra en labores de arquitectura, diseño y desarrollo.
Sector
- Bancario
Área funcional
- Ventas (EIDAS, PSD2)
Responsabilidades
- Arquitectura
- Diseño técnico detallado
- Soporte al equipo de desarrollo
- Programación
Metodología
- Scrum
Arquitectura
- MSA
Stack Tecnológico Desarrollo
- Java 11
- Spring Boot 2
- Spring 4 (security, data, batch, core)
- JWT
- Mysql
- Mongo
- Redis
- Resilience4j
- Elastic Stack
- Archunit
- Junit
- Mockito
- Tomcat
- GPub/sub
- Zipkin
- Docker
- Locust
Stack Tecnológico Complementario
- Mac/os, linux
- Jira
- Confluence
- CI/CD Google Cloud
- Git/Bitbucket
- Sonar
- Maven
- Nexus
Desarrollador Sénior
Breve colaboración en el desarrollo de Maggie, solución tecnológica para integrar las diferentes plataformas nacionales en una única arquitectura.
Cliente
- ING
Sector
- Bancario
Área funcional
- Innovación
Responsabilidades
- Programación
Metodología
- Scrum
Arquitectura
- SOA
Stack Tecnológico Desarrollo
- Java 8
- Spring (core)
- Kafka
- Avro
- Confluent Schema Registry
- Junit
- Mockito
Stack Tecnológico Complementario
- Windows, Linux
- Jira
- Confluence
- Service now
- CI/CD Jenkkins
- Git/GitLab
- Sonar
- Maven
- Artifactory
Desarrollador Sénior
De vuelta a labores más técnicas, colaboré en el desarrollo en la adopción del estándar NDC de IATA al legacy de Iberia
Cliente
- Iberia
Sector
- Transporte
Área funcional
- Ventas
Responsabilidades
- Diseño Técnico Detallado
- Programación
Metodología
- Scrum
- Nexus Scaling Scrum
Arquitectura
- SOA
Stack Tecnológico Desarrollo
- Java 7
- Spring 4 (data, core)
- Oracle 11
- Redis
- EHCache
- Junit
- Mockito
- Tomcat
- Docker
- Elastic Stack
Stack Tecnológico Complementario
- Windows, UNIX
- Jira
- Confluence
- Git, GitLab
- CI/CD Jenkkins
- Sonar
- Maven
- Nexus
Coordinador Técnico de proyectos
Segunda etapa en la IGAE, Oficina de Informática Presupuestaria, al frente de un equipo de 6 desarrolladores, dimos servicio al área de Gestión Patrimonial y Portafirmas Electrónico.
Cliente
- Intervención General de la administración del Estado
Sector
- Administración pública
Área funcional
- Contabilidad
Responsabilidades
- Gestión de la demanda
- Gestión de equipo
- Gestión de proyectos
- Análisis funcional
- Diseño técnico
- Programación
Metodología
- Asistencia técnica.
Arquitectura
- MVC
Stack Tecnológico Desarrollo
- Java 7
- Spring (core)
- Oracle 11
- Javascript
- Ajax
- JQuery
- HTML
- css
- jsp
- jstl
- Weblogic
Stack Tecnológico Complementario
- Windows
- Redmine
- SVN - Tortoise
- Sonar
- Maven
- Artifactory
- Jenkins
Jefe de Proyecto
Segunda etapa en la IGAE, Oficina de Informática Presupuestaria, al frente de un equipo de 6 desarrolladores, dimos servicio al área de Gestión Patrimonial y Portafirmas Electrónico.
Cliente
- DTIC Ministerio de justicia
Sector
- Administración pública
Área funcional
- Innovación
Responsabilidades
- Plan de Mejora del Servicio de Arquitectura
- Estudio y previsión de proyectos
- Toma de requisitos
- Estimación de proyectos (IFPUG, NESMA, SNAP)
- Gestión ciclo de vida proyectos
- Gestión equipo de arquitectura
- Elaboración de estudios de impacto
- Elaboración de plan de pruebas
Metodología
- Scrum
Arquitectura
- SOA
Stack Tecnológico Desarrollo
- Java 7
- Spring (core)
- Oracle
- Javascript
- Ajax
- JQuery
- HTML
- css
Stack Tecnológico Complementario
- Windows, UNIX
- SVN - Tortoise
- Confluence
- OAUTH
- Oracle Sevice Bus (OSB)
- Jira
- CI/CD Jenkkins
- Sonar
- Maven
- Artifactory
- TestLink
Analista Orgánico
Evolución personal y madurez profesional, resumen este periodo de colaboración en departamento POS/TPV del Grupo El Corte Inglés.
Cliente
- El Corte Inglés
Sector
- Comercio al por mayor y al por menor
Área funcional
- Tecnologías de la información (TPV)
Responsabilidades
- Análisis funcional
- Diseño técnico detallado
- Gestión equipos
- Calidad de software
- Programación
- Gestión de incidencias
Metodología
- RUP
Arquitectura
- MVC
Stack Tecnológico Desarrollo
- Java 5
- J2SE
- Berkeley DB
- XML, XSL, DTD
Stack Tecnológico Complementario
- Windows
- Rational Rose (UML)
- Doors
- IBM Jazz
- Microsoft Project
- ClearCase
- Rational Team Concert
- Maven
- Nexus
- Ant
Analista Programador
Primer cambio de aires, paso de desarrollos internos a servicios en cliente. Puesto dedicado a la programación, supuso la primera toma de contacto directa con el cliente.
Cliente
- Intervención General de la administración del Estado
Sector
- Administración pública
Área funcional
- Contabilidad
Responsabilidades
- Programación
Metodología
- Asistencia técnica.
Arquitectura
- MVC
Stack Tecnológico Desarrollo
- J2EE
- JSTL
- Oracle 8
- HTML
- Javascript
- css
Stack Tecnológico Complementario
- Windows
Analista Programador
Primera incursión en el mundo de las tecnologías de la información de la mano de Thales. Tras licenciarme en psicología, decido cambiar de aires y ser más práctico.
Sector
- Tecnologías de la información
Área funcional
- Servicio al cliente
Responsabilidades
- Programación
Metodología
- Asistencia técnica.
Arquitectura
Stack Tecnológico Desarrollo
- J2EE
- JSTL
- Oracle 8
- HTML
- Javascript
- css
- C++
- CORBA
- XML, XSL, DTD
Stack Tecnológico Complementario
- Windows / UNIX
- Rational Rose (UML)