I work as a part time professor in an institute specialized in technology careers, I was responsible for the Computer and Informatics career with specialty in Software Engineering. I ellaborated manuals and guides as well as teach the courses associated to Java programming languages: fundamentals and backend development using frameworks. I was also teaching courses related to Scrum framework for project management.
My official role was Engineering Manager, but later on turned into a Subject Matter Expert. I am responsible for leading the implementation and infrastructure teams (around 18 people), mainly on the migration from a monolithic architecture to a microservices-based architecture for a medical healthcare industry company in the USA. My role involved 50% of attending meetings, leading technical discussions, and documenting the solutions. The other 50% was associated with hands-on code tasks such as the implementation of the microservices using Java 17 + SpringBoot + AWS + GraphQL. I also participated in the elaboration of automation scripts for some routines in de CI/CD process using Python, Go, and Bash. I worked closely with Amazon Web Services such as EC2, S3, Fargate, EKS, ECR, and CloudWatch. I am also participating in the migration of the RabbitMQ-based SAGA pattern to Kafka.
I was responsible for leading the migration of a monolithic-based application from the Financial industry to a microservices-based architecture, mainly for the backend that responded to different features of a mobile and web application for different banks worldwide. I was involved in the definition of the tech stack to be used (Java 8 + SpringBoot) and the migration from SVN to Git and Nexus to Artifactory. From the DevOps perspective, I worked for a year in the implementation of the CI/CD process by configuring Jenkins jobs, automating deployment scripts, configuring AWS services, and coding Terraform modules. The teams I handled were in a range of 12 to 15 people.
I started as a Senior Backend Engineer, responsible for implementing a SPA based on Sencha ExtJS for the front end and Java 7 + Spring in the back end. The application was a troubleshooting system that handles millions of transactions daily for Verizon products. I also participated in the migration of the infrastructure from on-premise servers to cloud-based servers (AWS). After the production deployment of the troubleshooting system, I was promoted to Lead Software Engineer and assigned to a project related to the sales and customer experience, the team was about 8 people including developers and QA, and I was responsible for migrating from an old EJBs + Servlets application to a more modern tech stack (React + Redux for the front end and Java 8 + Spring Boot for the back end).
I worked for a company that provided SEO solutions and I was responsible for implementing libraries to be used across different solutions of the company, mainly for the integration with ZooKeeper (Hadoop) and object mapping and conversion, I was focused on the usage of Java 7 and I also migrated core modules from Java 6 to a newer version. I also participated in the usage of GWT for the implementation of the SEO Admin application. I was involved with deployments and production support using Hudson and automating tasks with scripting languages such as Bash.
As a backend developer I was involved in the implementation of the document exchange standards for PEPPOL (START and LIME), I also participated in the implementation of the Telenor Admin App for routers provided by that company (Java 6 + Spring). I also was responsible for implementing the new App for European banks such as Danske Bank and Norway Bank. Later on, I was promoted to Senior and I was responsible for the implementation of the core modules for Efact, the first electronic invoicing system implemented in Peru, I also participated in the definition of infrastructure for the new solution as well as the integration with national taxes and accounting systems.