ABOUT ME

BACKGROUND

I have been writing software for a long time, initially as a hobby or to support my previous career as a Civil Engineer, and since 2018 as a professional Software Developer.

I learnt Fortran as my first programming language, and therefore I wrote mainly imperative code at that point in time. I had the opportunity of working for one year at the University of A Coruña, participating in hydraulic assessments using Fortran and advance numerical analysis algorithms. In parallel I learnt some bits of other languages, such as AutoLisp and VBA (for Microsoft Excel).

After working several years as a Civil Engineer, although I had been continuously writing any kind of applications that could be useful for my work, I decided to start the Computer Science degree, remotely (as I continued with my duties as principal engineer). I learnt then Java, and some C, C++ and Haskell, besides all the fundamentals about data structures, algorithms, logic, etc. Additionally, I learnt Object Pascal, that I used for some of my personal projects.

In 2014 I moved to London, joining a local Civil Engineering company. It was a good opportunity to improve my English and an important challenge in my career. The drawback was that I stopped the Computer Science degree, but I continued writing software using Java and Object Pascal.

Finally, I decided to definitely switch to commercial software development. First, I decided to reinforce my skills in several technologies, languages and frameworks, such as SQL, JDBC, HTML, CSS, JavaScript, Python, Servlets and JSPs, Spring Framework, Hibernante and JavaEE related tools. I also started the micro-masters in Artificial Intelligence at edX, with Python. Then I started as Software Developer in early 2018, and since then I have gained strong experience as Back-End engineer with Java, but including several Full-Stack technologies as well.

Part of my personal projects are described at the Projects section.

PROFESSIONAL SUMMARY

A highly skilled self-motivated and passionate Software Engineer with broad experience in several programming languages and tools, API development, Distributed Systems, Continuous Integration/Delivery and Testing. Effective problem solver with strong analytical, technical and communication skills, encouraged by challenging projects and always willing to learn and improve. Experience with Agile/Scrum, and flexible to work in environments that enable both individual work and as part of a team/pairing.

CORE SKILLS

  • Data Structures, Algorithms, Design Patterns
  • OOP and Functional Programming
  • Java 8 & 11, including multithreading, streams
  • Java EE, servlets, JSP + JSTL
  • Spring Framework, Spring MVC, Spring Boot, Spring Security, Thymeleaf
  • Databases: MySQL, PostgreSQL, Java JPA, Hibernate, JDBC, JDBI, Liquibase
  • Caching: Redis
  • TDD with JUnit 5, Mockito, Spock. Both unit and integration tests
  • Build automation: Maven, Gradle
  • Version control: Git, SVN, GitHub, Bitbucket, GitLab
  • AWS: SNS, SQS, Elasticsearch
  • Design of Microservices with RESTful API
  • Development of GUIs with Java Swing and JavaFX
  • Other languages: Python, JavaScript, Groovy, Object Pascal, Fortran
  • Others: Docker, JSON, XML, Html5, CSS3, Web scrapping, IA search agents

WORK HISTORY

May 2020 – present – Backend Software Engineer – Yapily, London

As Backend engineer I have collaborated in the design of new core features to increase the API performance when dealing with huge amount of data, identifying issues in codebase and fixing bugs, and reviewing changes done y others.
Technologies used: Spring Boot, PostgreSQL, Hibernate and JdbcTemplate, Junit 4/5, Mockito, Java, Postman, Maven, Docker, Git, Bitbucket, GitLab, Jenkins, Jira.

September 2019 – May 2020 – Backend Software Engineer – The Culture Trip, London

As Backend engineer I have collaborated in the design of new micro-services with Spring Boot, fixing bugs and adding new functionality to the legacy API. The work organization consists of a fully integrated Agile methodology using Jira.
Technologies used: Spring Boot, Dropwizard, MySQL, HSQLDB, Liquibase, Redis, AWS SNS, SQS, Elasticsearch, Redshift, JUnit 4/5, Mockito, Spock, DataDog, Java, Python, Groovy, Maven, Gradle, Docker, Terraform, Git, GitHub, CircleCI, Codacy, Jira.
Furthermore, I have been fully involved in the recruitment process, having undertaken more than 30 interviews so far, and having designed the new coding test.

May 2018 – August 2019 – Core Ops Java Developer – Travelfusion, London

As Core developer and DevOps, I have fixed several bugs and contributed with improvements to the company’s API. Daily work consists of solving assigned tasks (from Jira’s pool), related to existing bugs or new features to be implemented, and reviewing updates done by other developers. Often this involves liaison with suppliers and/or customers. Technologies used: Java 8, MySQL, Hibernate, Redis, HTML, XML, JSON, web scraping, Eclipse, SVN, Jira.

June 2014 to March 2018 – Project Leader / Principal Civil Engineer – Robert West, London

I have managed successfully a team, facing big projects with important constraints, keeping the client expectations, achieving the deadlines and overcoming the obstacles with very positive results.

December 2007 to June 2014 – Project Leader / Senior Engineer – Euroconsult, Barcelona

I have improved significantly the team performance with the development of new pieces of software, which automatized common but highly specialised tasks, and mitigated the risk of mistakes.

November 2006 to November 2007 – Junior to Senior Engineer – Payma Cotas, A Coruña

I contributed to the automation of repetitive tasks and provided alternative ways for solving common problems. I demonstrated exceptional skills in learning and using civil engineering software in a short timeframe.

November 2005 to October 2006 – Programmer – University of A Coruña, A Coruña

I expanded my knowledge in the use of advance and efficient algorithms using Fortran. I contributed to the existing Fortran package with new and helpful modules for data conversion and manipulation, and updating the existing modules with new features.

EDUCATION

2012 to 2014 – UNED, Spain (remote university)

Part of degree in Computer Science.

2007 – University of A Coruña, School of Civil Engineering, A Coruña (Spain)

Master Civil Engineer.