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.
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
-
"Testea y documenta tu API Rest" (SpringRestDocs) https://es.slideshare.net/JorgeAguilera12/docu-drivenrest
-
"Groovy everywhere", a Griffon Groovy demo using your spanish electronic identity card (DNIe) https://es.slideshare.net/JorgeAguilera12/griffdnie-griffon-demo
-
"One step beyond .. la docu de tu proyecto", how to improve your project with a good documentation system https://es.slideshare.net/JorgeAguilera12/one-step-beyond-la-docu-de-tu-proyecto
-
"Asciidoctor para Dev(Ops): recupera la ilusion de documentar", how to implement Asciidoctor into your project https://es.slideshare.net/JorgeAguilera12/101-paneltechasciidoctor
-
"Groogle, cuando Google conoció a Groovy" , how to write your own DSL https://www.madridgug.com/2018/05/groogle-cuando-google-conocio-a-groovy.html
-
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