PDF version at JorgeAguileraCV.pdf

With more than 25 years of experience in IT, I’ve worked in many different sectors where always I focused to bring quality and innovation ideas in every project I’ve been participate. During several years I’ve run a one person company offering services as technical leader and providing my experience to improve the skills of the team, teaching good practices and applying productive tools and languages.
If you want to know more about me, please read my blog at https://jorge.aguilera.soy
In every project I have worked I participated in budget and recruitment although my main role is technical leader. I design the architecture, decide and configure collaborative tools, assign tasks, and work close to developers team in an agile process
I believe in the Open Source Spirit and, as such, I have created and participated in several international projects. I am the main contributor of asciidoctor-extensions, asciidoctor-themes and groogle open source projects. I am also the main responsible for the 101-scripts blog about Groovy and author of the book "Tutorial Básico de Asciidoctor" (sold in Amazon). Also I’m an asidual tech talker in differents meetups as MadridGuG, Codemotion and esLibre

Brief

As system administrator I have proven experience installing and maintaining, in house or cloud, Windows and Linux machines

As developper I have 25 years of experience programming in C, C++, Java, Javascript, Groovy languages. Also I have proven experience with SpringFramework stack (SpringBatch, SpringBoot, SpringIntegration,…​) Grails 1.x, 2.x and 3.x and Micronaut, also starting with Quarkus. I work usually with Gradle, Maven and Git and organize my tasks with Jira. I have developed solutions in disparate environments as web applications, desktop, cash machine, point of sales, web servers and android devices.

As software architect I designed solutions for middle and large distribute environments applying SOA, REST, JMS (with Rabbitmq). I’ve some experience with Google Cloud and Amazon AWS implementing solutions using Google Cloud Run or Lambdas.

As solution provider I develop rapid prototypes to gain visibility arround the problem to solve, helping the customer to discover what is looking for.

As team lead I have experience working with small groups (5-6) using agile methodologies, helping them to discover how to use the tools, frameworks and how to focus in testing approaches.

Buzzwords

10+ years C, C++ (OS/2, Windows, TCP/IP)

17+ years Java Programmer

10+ years Groovy & Grails (from v1.3.1)

10+ Spring framework (jdbc, batch, integration, cloud)

1+ years with Micronaut (I created my first application after the presentation in the Greach Conf)

10+ years Database (Informix, MySQL, SqlServer) 1+ year MondoDB

10+ years Tomcat, Jboss, Glassfish

AWS, Google Cloud, Digital Ocean

SVN, Git, Mercurial

NetBeans, Eclipse, IntelliJ

SOAP, Rest

Rabbitmq, Kafka

XML, CSV, JSON, JWT

Docker, Kubernetes

Some achievements

Tymit migration of a monolithic application in Grails 3.x to a microservices architecture with Grails 3.x, Micronaut and Quarkus. I redesigned and splitted the code into differents projects, delimiting business boundaries and applying a step by step methodology moving different parts in each iteration. Design the integration of new microservices during this migration using Rest and Event Driven approachs

Plaxo a Groovy framework oriented to QA to test backends and front navigation for an international airline company that replace SoapUI. It allows to different teams share Specs test, Geb navigations automations and generate evidences for each test.

SII Design and implement a microservices event drive architecture in order to allow consume huge files of invoices (over 10K per request) and send all of them via SOAP to the Agencia Tributaria Española.

Gredos Design and development of a Java application oriented to optimize the stock of stores (90+) using historical data series and applying statistics functions for the forecast of sales in a non-assisted fashion. After two years, all stores have been able to optimize their stok, reducing costs and improving their estimation of workload.

Frappe Full redesign of ERP proprietary from Informix 4GL to a web application using Grails and Ajax Javascript (Dojo). Requirement analysis, architecture design and main developper. No install procedures, increased number of users, different business views and drastically improved management of characteristics and prices of articles are some of the new improvements

Merlin Development of a touch application (JavaFX & SOAP) for the control of an airline crew. Reduce the time spent signing in an old 3270 terminal using a modern interface from several minutes to few seconds

SONAR Grails REST backend & AngularJS application to collect children’s comment. WordPress plugin to show them into the corporate portal

2020-21

Principal Software at Tymit

As Principal Software and due my experience with Grails I assume the responsability of propose improvements to the application as migration to a microservice architecture, new functionalities, etc.

We have transformed a monolithic application with releases every month to multiple independent services with releases every week improving the general performance.

Tymit migration of a monolithic application in Grails 3.x to a microservices architecture with Grails 3.x, Micronaut and Quarkus. I redesigned and splitted the code into differents projects, delimiting business boundaries and applying a step by step methodology moving different parts in each iteration. Design the integration of new microservices during this migration using Rest and Event Driven approachs

Startign from a closed Docker swarm where main communication between services was RabbitMQ we moved to a more decouple architecture with:

  • Authorization service using signed JWT in Micronaut

  • Proxy View (Backend For Frontend) in Micronaut

  • Communicating different services (some in Grails and others in Quarkus) using SQS, Rest

Playing a Principal Software Developer role I assume the responsability of redising the monolithic application plus doing support task to the QA team helping in the automatization of the release process.

2019

Grails expert at eDreams

Software senior Grails developer in a backend application for travel agents, I participate in a small team (8 dev) using Agile methodologies and solving issues at the same time we analyze how to evolve the application to a cloud solution

Consultant at Panel Sistemas

Software consultant for a multidisciplinar QA Team. Design and develop a new QA framework for web automation test in an international airplane company. Using Groovy, Spock Framework and Geb, we increasing the number of automation test in every release

2017-2018

Software Architect in B2Boost, an electronic invoices european company

As software architect I tried to improve methodologies and designs in a multidisciplinary team working with microservices most of them in Grails and Angular. I coordinated and supervisored tasks from the team at the same time I developed new features

Due to the lack of documentation I implemented a static site as internal documentation repository using Asciidoctor and Git only accesible via intranet

Design and implementation the migration of the system from an in-house Docker solution to a cloud RancherOS platform,

2016-2017

Software Architect at Enxendra

Company focused about digital signature as e-invoice, sign documents with local and cloud certificates, etc

As software architect I’m working transforming a monolithic application into a microservices architecture. We are introducing new languages and frameworks, mainly Spring Boot and Groovy/Grails, meanwhile we adapt functionality to this new architecture without disrupt the service.

In this way, I have introduced Docker and Docker Compose as the new way to deploy applications to avoid typical problems about configuration, versions, and so on. Also I have created different Jenkins’s jobs to implement a CD/CI process.

2009-2016

Software Architect at Puravida Software

Working as contractor for Feu Vert Iberica, a oriented to fast maintenance of vehicles market company with >90 stores in Spain and 10 in Portugal.

I was hired to perform a migration from Informix to Mysql and I ended doing a migration plan to transform their ERP (PowerBuilder) into a J2EE Web application. I have been offering solutions aimed at generating value in the company:

  • Frappe: Design and develop a custom ERP with Grails 1.3.7

  • Gredos: Design and develop an optimization of stock based in forecast sales ( Java+Grails )

  • Tarot: Kiosk application for mechanics employee (Groovy/Griffon touch application)

  • SOA Plan: migrate current programs to a service architecture, choose and install best tools and organize developer team

1997-2009

Co-founder EDN

For 12 years I led various teams of developers in different projects of varied characteristics.

  • Design and build multimedia author tool for Kiosk and ATM cash machine.

  • Develop multitude of application for self-service environment with graphics, video, audio, etc using TCP/IP sockets, WebServices, Ajax and so on.

  • Design and build first ATM cash machine application in Windows+Java+TCP/IP+WebServer (before where OS/2+Pascal+X.25) in Spain and probably in Europe.

  • Integrate propietary distribution software application in backend system of Visa Spain doing a J2EE Web interface.

  • Design and build a SNMP solution for ATM of Visa Spain

1992-1997

C.P. Software

I was hired as junior programmer and during this years I worked as Cobol/Natural/C/C++ programmer for different projects mainly in NCR Self-Service environment.

Before starting up my enterprisse I was the technical leader and pre-sales support for projects as Comunidad de Madrid, CajaMadrid, Viaplus, etc. in different environments, mainly self-service kiosk and ATM cash machines, with different technologies and team capacity

Open Source

Tutorial basico Asciidoctor eBook published at Amazon as a basic guide to integrate Asciidoctor in your project. Also available on-line at http://jorge-aguilera.gitlab.io/tutoasciidoc/

TelotraigodemiPueblo a social network to share local products (final degree project) with Grails, Neo4j and Asciidoctor at https://telotraigodemipueblo.gitlab.io/tfg/

asciidoctor-extensions some useful Asciidoctor’s extensions open sourced at https://puravida-asciidoctor.gitlab.io/

mnRaffle an Open Source service to create raffle using Micronaut and Google Sheet

EasyFeedback an Open Source service to create quick poll using Micronaut and VueJS deployed in a Kubernetes cluster

MathML2Png a png generator of mathematical expressions (asciimath or TeX language). Online at https://mathml2png.herokuapp.com or as a Docker image at _jagedn/mathml2png

UOChrome a chrome extension to watch your forums and teacher’s notifications at Universidad Oberta de Catalunya (UOC)

Creta a Javascript converter between Excel and Seguridad Social’s XML files http://pvidasoftware.github.io/creta/

Groogle a collection of DSL arround Google API (Drive, Calendar, Sheet, Maps, Vision) https://groogle.gitlab.io

101-GroovyScripts coauthor of https://groovy-lang.gitlab.io/101-scripts/ a blog about Groovy language scripts oriented to solved tipical problems at work

Tech Talks

  • speaker at Madrid Codemotion with "Tu API ha muerto, larga vida a tu Domain Specific Language"

  • speaker at Madrid Codemotion with "OpenSource para un mundo OpenData"

Education

2019-

Grado Data Science (UOC)

2009-2018

Grado Ingeniería Informática (UOC)

2015

Amazon Web Services Essential (Capside)

2014

Scrum Master (Tecnofor)

2008

ITIL v2, PRINCE

1992-1996

Económicas Universidad Alcalá de Henares

Trabajo Fin Grado