Perfil Profesional
Arquitecto de TI en Kuehne+Nagel Hamburgo, Alemania
Trabajo en los dominios de infraestructura y nube, conectando equipos e identificando patrones que impactan la entrega de software a escala. Mi enfoque está en construir plataformas internas de desarrollo que mejoren la eficiencia, la confiabilidad y la experiencia del desarrollador.
Con experiencia en ingeniería de software, cierro la brecha entre desarrollo y operaciones, promoviendo la automatización, la entrega continua y los ciclos de retroalimentación efectivos. Mi objetivo es crear soluciones escalables que eliminen la fricción y ayuden a los equipos a construir y entregar software de manera más efectiva.
Experiencia Profesional
Después de trabajar en infraestructura cloud y sentar las bases para la adopción de la nube, he hecho la transición a un rol enfocado en arquitectura cloud y Developer Experience. Mi trabajo ahora gira en torno a mejorar cómo los equipos de aplicaciones interactúan con nuestra plataforma interna de desarrollo (IDP), asegurando que tengan las herramientas, flujos de trabajo y soporte adecuados para construir y desplegar software de manera efectiva.
Una parte clave de esto implica dar forma a la IDP como una fuerza unificadora para la estandarización a través de la armonización. Al fomentar el desarrollo de golden paths, reducimos la carga cognitiva para los desarrolladores, facilitando seguir las mejores prácticas sin sacrificar la flexibilidad. En lugar de imponer mandatos estrictos, me enfoco en crear incentivos para la adopción voluntaria demostrando los beneficios tangibles de la consistencia y los flujos de trabajo optimizados.
Mi rol también se extiende más allá de los equipos de ingeniería. Colaboro con finanzas, seguridad y otros stakeholders para asegurar transparencia y alineación, ayudando a cerrar brechas entre las prioridades del negocio y la ejecución técnica. Al conectar expertos en toda la organización, identificar puntos de fricción y establecer ciclos de retroalimentación, contribuyo a una estrategia de plataforma que equilibra las necesidades de los desarrolladores con los objetivos operativos y organizacionales — haciendo la entrega de software más fluida y eficiente a escala.
Como Arquitecto de Infraestructura de TI, mi enfoque principal fue en estrategias multi-cloud y habilitación cloud. Trabajé estrechamente con equipos de infraestructura tradicional, guiándolos a través de los desafíos de la adopción cloud ayudándoles a entender las compensaciones específicas de sus dominios — ya sea en redes, almacenamiento, cómputo o seguridad. Mi rol implicó analizar procesos existentes, identificar obstáculos y proporcionar orientación clara y práctica para alinear la adopción cloud con los requisitos del negocio y técnicos.
En la fase posterior de este rol, participé activamente en el diseño, revisión y pruebas de la cloud foundation — una plataforma estandarizada construida sobre AWS para soportar cientos de aplicaciones en la organización. Este trabajo aseguró que los equipos que adoptaban la nube tuvieran una base confiable, escalable y bien gobernada sobre la cual construir. Un enfoque clave fue facilitar la transición del operaciones de TI tradicionales a operations as code, introduciendo automatización e infrastructure as code (IaC) para mejorar la eficiencia y mantenibilidad. Al fomentar la colaboración entre equipos de infraestructura, seguridad y desarrollo, ayudé a crear una base que equilibraba la agilidad con la estabilidad operativa.
Tecnologías
- OpenShift (Docker, Kubernetes, Helm)
- ELK, Grafana, InfluxDB
- Jenkins CI (Bash, Jenkinsfile, BlueOcean)
- Micro-servicios, Spring Boot (Java), REST, SOAP
- Oracle (Liquibase)
- Angular (TypeScript, RxJs, AgGrid), Cypress
- Atlassian Suite (JIRA, Confluence, BitBucket)
- Git, IntelliJ
Como parte del departamento de ingeniería, he contribuido en varias áreas, a saber:
- mantenimiento y extensión de nuestra plataforma de despliegue de contenedores, herramientas de desarrollo y servicios backend principales
- soporte directo a otros desarrolladores en el uso de nuestra plataforma, resolución de problemas y educación general sobre cómo entregar servicios
- optimización de pipelines CI/CD para servicios containerizados políglotas
- participación en la rotación de guardia, siendo responsable de responder a incidentes relacionados con sistemas críticos
- análisis de causa raíz y generación de reportes (PMAs) para incidentes
- promotor de Pair Programming, testing automatizado y otras prácticas XP
- participación activa en la revisión de código
- diseño y propuesta de mejoras a procesos y sistemas relevantes
- diseño y conducción de entrevistas técnicas para Engineering Managers, Technical Leads, Infrastructure Engineers y Backend Engineers
- incorporación de ingenieros de software a nuestro proceso de reclutamiento
- extensión de diversa documentación técnica, así como documentación de reclutamiento
- participación en planificación de capacidad para proveedores externos (IaaS, SaaS)
Stack Tecnológico
- Backend: Python, Django, Celery, Node.js, TypeScript, Java, PostgreSQL
- Infraestructura: Terraform, AWS CloudFormation, Python, Golang, Docker, Ansible
- CI/CD: TravisCI, Jenkins, Github
- Atlassian Suite (JIRA, Confluence, Trello, etc)
- Telemetría: AWS, Logz.io, Prometheus
Actividades
- Mejora de la calidad del código - refactorización, testing (TDD, BDD), corrección de errores.
- Resolución de problemas en sistemas con varios componentes interactuando de manera compleja.
- Transformar ideas en código desplegable.
- Mejorar pipelines CI/CD existentes.
Tecnologías
- Docker
- Python (AWS SDK, automatización de builds)
- Java 8 (Maven, SpringBoot, AWS SDK, SWF)
- JavaScript, HTML, CSS (Browser, Node, Backbone, Angular, Mocha)
- Ruby (AWS SDK, Cucumber, RSpec)
- AWS (SWF, CloudFormation, ECS, IAM, S3, CloudWatch, ELK)
- Git (Gitlab, Github)
- Jenkins, Gitlab CI
- Datadog
- JIRA, Confluence
Como parte del equipo de ingeniería, aseguro que nuestros productos y servicios se mantengan en línea y respondan durante alto volumen de tráfico. También contribuyo desarrollando nuevas funcionalidades para servicios existentes y manteniendo los actuales.
Responsabilidades
- Mantener y desarrollar nuevas funcionalidades para las APIs de SMS y Gestión de Números de Flowroute
- Escalar el servicio de SMS, instrumentar monitoreo y configurar alertas para todos los componentes del sistema.
- Actualizar servicios web existentes a frameworks modernos de Python
- Mantener y actualizar infraestructura para integración continua, orquestación de servicios, monitoreo, gestión de configuración y gestión de logs.
Tecnologías
- Python (Twisted, Django, Flask, SQLAlchemy)
- Web (HTML, CSS, JS)
- Despliegue de servicios: Docker, Rancher
- Gestión de configuración y logs: Ansible, Logentries
- SCM con Git, Gitlab
- SMS (Jasmin)
- AWS (S3, EC2, KMS, Boto, CLI, CloudFormation)
- Pruebas de carga con Locust.io
- Monitoreo: Datadog
Fui parte del equipo de Air Shopping.
Responsabilidades principales
- Promotor de Scrum
- Implementar nuevas funcionalidades.
- Mantener código de producción.
- Unit Testing parcialmente usando TDD y Pair Programming.
- Escribir automatización de pruebas
- Soporte Tier 4
- Revisiones de código
Tecnologías utilizadas
- Javascript para el navegador (Vanilla, jQuery, Backbone, Underscore.js)
- Unit Testing con QUnit, Sinon.JS
- HTML, CSS(LESS), Freemarker, Handlebars.js
- Java para cambios del lado del servidor
- Ruby (Cucumber) para automatización de pruebas
- SCM con Perforce
- SCM con Git + git-p4
- Bash para automatizar mi flujo de trabajo diario Git-Perforce
AT&T Enhanced WebRTC SDK para JavaScript
El SDK comprende los siguientes componentes:
- Una biblioteca JavaScript que proporciona una API de teléfono, permite a los desarrolladores integrar fácilmente la API AT&T Enhanced WebRTC en cualquier aplicación web que se ejecute en un navegador compatible con WebRTC.
- Una aplicación web de ejemplo que demuestra las funcionalidades de la API Phone JS, proporcionando a los desarrolladores código funcional que pueden aprovechar en sus propias aplicaciones.
- Una biblioteca NodeJS para proporcionar autenticación fácil y fomentar buenas prácticas de seguridad para información sensible como las credenciales de autenticación de la API REST.
- Documentación en línea:
- Un tutorial de programación literaria explicando la aplicación web de ejemplo.
- Referencia de la API Phone
- Fragmentos de código extensos
- Referencia de la API de la biblioteca NodeJS
Responsabilidades principales
- Entusiasta de Scrum
- Comprender, prototipar y crear código de calidad de producción para cada funcionalidad en estrecha colaboración con otros miembros del equipo y stakeholders.
- Resolución de problemas, diagnóstico de defectos tanto en el lado del cliente como del servidor de la solución en colaboración con otros equipos.
- Git spiritual guide & Github Admin
- Jenkins CI Admin
- AWS Admin
- Soporte Tier 4.
Tecnologías utilizadas
- Vanilla Javascript para el navegador (Chrome, Firefox) y NodeJS para la biblioteca del servidor
- Integración continua usando Jenkins
- Automatización de build y despliegue usando Grunt y Bash
- Unit Testing (Karma, mocha y chai, sinon) parcialmente usando TDD.
- Automatización UAT usando Selenium JS wrapper.
- CI ejecutándose en AWS, Heroku y Github.
- JSDoc, Docco
- SCM con Git
- Revisiones de código
- Semantic Versioning
Barnyard Math para iOS usando U-verse Enabled SDK para iOS.
Barnyard Math es una app iOS que lleva diversión matemática a tu TV U-verse. Conecta tu dispositivo iOS a tu receptor U-verse y tus hijos pueden poner a prueba sus habilidades matemáticas en la pantalla grande. Barnyard Math incluye suma, resta, multiplicación y división con diferentes niveles de dificultad.
La aplicación es un port de la aplicación Android con el mismo nombre.
El SDK U-verse Enabled proporciona dos bibliotecas principales de iOS:
- La API U-verse Enabled permite al desarrollador conectar la app móvil al receptor de TV
- La API U-verse Enabled TV permite al desarrollador dibujar contenido en la pantalla del TV mediante comandos enviados al receptor de TV y permitiendo que la app móvil actúe como servidor del cual el receptor de TV puede solicitar recursos multimedia como imágenes y videos.
Responsabilidades
- Entusiasta de Scrum
- Contribuidor de la versión inicial de la aplicación para iPhone.
- Traducir la versión Android a una app nativa para iPhone.
- Desacoplar la app móvil del receptor de TV mediante mocking de la API de las bibliotecas U-verse Enabled, permitiendo el desarrollo de la app móvil casi en completa independencia del receptor U-verse.
- Escribir Unit Tests para las clases del modelo principal.
- Escribir pruebas de automatización para simular la interacción del usuario con el iPhone mientras envía comandos al receptor U-verse. El propósito principal fue reducir el esfuerzo de probar manualmente la interacción entre la app móvil y el receptor de TV.
Tecnologías utilizadas
- Objective-C: UIKit, Autolayout (IB y programáticamente)
- U-verse Enabled SDK para iOS
- MS JScript para contenido dinámico
- Framework XCTest de Xcode para Unit Testing y automatización UAT
- SCM con Git y Github
- Trello para seguimiento de progreso
Como parte del equipo de API Realization, ayudo a construir bibliotecas y aplicaciones de ejemplo (principalmente para iOS) para demostrar el uso de las APIs RESTful de AT&T.
SDK para iOS
Biblioteca iOS para las APIs RESTful de AT&T: In-App Messaging, Ads
- Desarrollo del cliente para OAuth 2.0 de AT&T
- Construcción de bibliotecas estáticas nativas de iOS para consumir recursos RESTful y ocultar los detalles de red al desarrollador.
- Construcción de aplicaciones de ejemplo nativas de iOS demostrando el uso del SDK.
SDK para Javascript
Biblioteca Vanilla Javascript y aplicaciones de ejemplo para la API WebRTC de AT&T.
- Vanilla Javascript para el navegador (Chrome, Firefox) y NodeJS
- Integración continua usando Jenkins
- Automatización de build y despliegue usando Grunt y Bash
- Unit Testing (Karma, mocha y chai, sinon)
- SysAdmin para AWS, Heroku y Github.
- Revisiones de código.
- Semantic Versioning
Otras responsabilidades
- Actividades de soporte Tier 3 para otros SDKs existentes (Android, Javascript)
- Mantenimiento y corrección de errores para SDKs y APIs existentes (principalmente iOS)
- Git Spiritual Guide
- Github SysAdmin
Desarrollo Front-end iPad, Web & Web Móvil
Implementación de una aplicación multi-plataforma (iPad, iPhone, Android, Web Cross-browser) para emisiones de fianzas.
He ayudado a desarrollar la capa front-end de nuestra aplicación de tres capas:
- Back-end: Sybase, Oracle
- Middleware: Java+Spring
- Front-end: XCode+Cocoa Touch+JSON
El alcance inicial era desarrollar la aplicación solo para iPad como híbrida, una aplicación wrapper nativa para una app Web Móvil.
El alcance creció para incluir la versión Web con soporte cross-browser, iPhone, dispositivos Android y portar la aplicación a los SDKs nativos de cada plataforma.
Mis principales contribuciones están en el front-end implementando varios módulos para la versión Web cross-browser y para las versiones híbrida y nativa de iPad de la aplicación.
Versión Web cross-browser
- Soporte para navegadores basados en Webkit (Chrome & Safari), Firefox & IE8+
- Javascript, jQuery (con varios plugins), HTML, CSS3, JSON, JSP, JSLT
Versión híbrida iPad (app wrapper para cargar contenido web)
- Objective-C, Cocoa Touch
- SBJson Framework: soporte JSON para Objective-C
- JSBridge: comunicación Cocoa <–> Javascript
Versión nativa iPad
- Objective-C, Cocoa Touch
- AFNetworking: solicitudes JSON asíncronas
- Framework de Unit Testing de XCode (implementé soporte asíncrono para probar nuestros servicios JSON)
Otras tecnologías utilizadas
- Mercurial DVCS (usando HgFlow para gestionar nuestras ramas)
- Redmine
Integración de sistemas mediante Electronic Data Interchange usando XSLT y Korn Shell en entornos Unix.
- Colaboración directa con nuestros clientes para definir el tipo y contenido de los mensajes a transmitir, método de entrega, etc.
- Desarrollo de plantillas XSLT para habilitar la comunicación entre sistemas legacy incompatibles.
- Configuración de tareas Unix programadas para obtener, procesar y entregar mensajes desde los sistemas de nuestros clientes a nuestra central.
- Personalización de scripts KSH para automatizar el proceso de traducción XSLT.
Desarrollo Web usando JSF, Hibernate, CSS y JavaScript.
Sistema de Gestión de Almacén
- Contacto directo con el cliente para definir el diseño y los requisitos funcionales de su Sistema de Gestión de Almacén.
- Diseño y desarrollo de una aplicación web simple para rastrear entradas y salidas de materiales del almacén.
- Diseño de base de datos e implementación de persistencia con PostgreSQL y Hibernate.
Implementación de Direct Market Access mediante un plugin de Excel escrito en C#.NET
Testing de software automatizado y manual (funcional y de rendimiento). Gestión de requisitos y pruebas usando herramientas de Microfocus (Testpartner, Optimal Trace, QADirector, QALoad).
Capacitación de nuevos recursos en el uso de la suite de aplicaciones de testing.