Personal summary

A detailed-oriented, committed and responsible senior engineer with a get-it-done, high-quality product spirit and experience in defining requirements, designing, implementing, testing while delivering complicated back-end/web-based applications using a variety of programming languages and technologies.

Professional experience

Senior software backend engineer

Jan 2022 - Now
Miro - Amsterdam, The Netherlands.

Member of the User management team, focusing on account administration & management features for enterprise deployments, making it easy for admins to set up and manage enterprise accounts at scale.

Main projects involved:
  • OpenSearch Migration: Designed and built a new storage system to improve read performance. Migrated from a denormalized table in PostgreSQL to OpenSearch, handling scalability for over 40 million users.
  • Billing Groups: Architected, designed, and built a new backend service to simplify the true-up process for user licenses.
  • Invitation Flows: Redesigned the invitation processes for multiple assets within the Miro environment, including companies, teams, and boards.

Additional responsibilites:
  • Mentoring and guiding backend engineers and new hires to adapt to the fast-paced development environment at Miro and adhere to best software engineering practices.
  • Participating in the recruiting process for backend engineers, including live-coding and system design interviews.

Technologies
  • Programming languages: Java17, Kotlin 1.7.
  • Frameworks and others: Spring, Maven, Ktor, Gradle, Postgresql, Redis, OpenSearch, Docker, k8s, Grafana, Prometheus.

Software backend engineer

November 2019 - December 2021
Picnic Technologies - Amsterdam, The Netherlands.

Member of the Platform team - core services and support modules.

  • Supported other developers with custom libraries, providing wrappers for various technologies (e.g., cache-support, monitoring-support, WebMVC/WebFlux-support, reactive-support).
  • Maintained core services such as reservation-service, order-service, user-service, and email-service.
  • Refactored several core services to eliminate legacy and duplicated code, redesigning them end-to-end.
  • Actively participated in the recruiting process for backend engineers, conducting whiteboard interviews and reviewing candidates’ assignments.

Technologies
  • Programming languages: Java11, Java17, Python 3.x.
  • Frameworks and others: Spring, Maven, Reactor, Jooq, Micrometer, Pact, Vault, Renovate, Spinnaker, Argo, RabbitMQ, Postgresql, MongoDB, Docker, k8s, New Relic, Grafana, Prometheus, Google Error prone

Software backend engineer

June 2018 - October 2019
MercadoLibre S.R.L. - Buenos Aires, Argentina.

Member of the API core team. Implemented new features and maintenance for the company’s core APIs (Items/ Users/ Prices / etc) supporting 10M RPM, and being responsible for the complete life cycle of any change from gathering requirements to deploying to production.

  • Designed and implemented a new platform for credit levels. The old logic of credit policy was unnecessarily complex, hard to understand and the users didn't have the correct level that they should.
  • Released version 2.0 of prices-api. Such API has the responsibility to store the prices for all the possible transactions in the company (e.g. listing a new item, items fee).
  • Continuous refactoring of legacy code: Migrated 2 APIs from Grails to Java11.
  • Addressing support requests/queries for new onboarding clients by understanding their business and providing the recommendations. Reviewing the design of the custom implementations.

Main projects involved
  • Credit Policy API
    Description
    • This project consisted in creating a new system of credit levels. Mercadolibre wanted to penalize and benefit users about their behaviour. The old logic of credit policy was unnecesary complex, hard to understand and the users didn't have the correct level that they should. Because of this, it was so hard to apply the correct credit policy rules.
    Challenges
    • Migration from the old credit levels to the new ones, for all the registered users (15 sites, more than 80M users)
    • Coordination between the teams involved ( Billing, Credit Policy, Frontends, testing).
    • Handle changes in some core apis in our team (users-api, items-api)

  • Prices API
    Description
    • Prices-api has the responsibility to store the prices for all the possible transactions in Mercadolibre (e.g. listing a new item, items fee). We have different listing types (free, bronze, silver, gold) and different rules to apply depending the site. Each site has its own rules.
    Challenges
    • It is a high demand API that affects site metrics. So we had to keep in mind several topics.
    • Had to improve at least 20% response time in main endpoints. We achieved this by refactoring a lot of classes, and avoiding unnecesary api calls (We changed the way we cache prices).
    • Had to re-desing jobs and consumers.
Technologies
  • Programming languages: Java8, Grails, Golang, Bash scripting
  • Frameworks and others: Spring, Hibernate, Memcached, ElasticSearch, Apache pulsar, RabbitMQ, Cassandra, Oracle DB, DynamoDB, MySQL, Mongo, ElasticSearch, Nginx, Docker, New Relic, Datadog, Kibana.


Software developer

February 2016 - June 2018
Freelance - Myway

I have been working as a freelance developer for Aerolineas Argentinas. I was involved in several projects.

Main projects involved
  • Frequent flyer program - Buying and transferring miles.
  • Booking flight tickets.
Technologies
  • Programming languages: Java, PHP, Bash scripting
  • Frameworks and others: MySQL, nginx


Software developer

November 2013 - June 2018
La Delicia Felipe Fort S.A. - Buenos Aires, Argentina.

  • Implemented new REST APIs for the company’s internal sectors such as Purchasing, Sales or Finance.
  • Redesigned and refactored some legacy applications.
  • Implemented new features for an Android App used by the company’s sellers..
  • Code review and best practices elaboration.
  • Help the team in understanding business functionality and get the blockers resolved in daily standups so that all the sprint deliverables are done on time.
  • Coordinate with architects to create system design and architecture approaches for new features.
Main projects involved
  • Shipping API
    Description
    • A REST API that gathered information from Andreani's endpoints (a shipping company) to track orders that were sent to clients. It was a middleware between Andreani and felfort clients
  • Felfort App for sellers
    Description
    • Implemented new features for an Android App used by the company’s sellers. They use the app for selling products, sending customer's feedbacks, consulting products' prices, adding potential customers.
Technologies
  • Programming languages: .NET, Java7, Java8
  • Frameworks and others: Spring, Hibernate, SqlServer, MySQL, Mongo, Trello.


Quality Assurance (QA)

August 2013 - October 2013
Southworks - Buenos Aires, Argentina.

  • Tested software to identify and resolve problems from an end user perspective.
  • Prepared detailed test plans, acceptance criteria and test scenarios for each project.
  • Monitored the testing process and identifying and logging test failures.
  • Performed peer reviews and estimates.
  • Involved in performance testing, Stress and load testing.


Administrative employee

March 2010 - July 2013
OFICINA COMERCIAL DE SEGUROS

  • Administrative tasks.


Projects

Supernovapsi - Developed in 2019
The approach is all about breaking down the walls of an office and supporting your health wherever you are. You can book an online meeting with a psychologist or psychiatrist with a few clicks. Supernovapsi is integrated with Google Calendar and Hangouts APIs.
Technologies: ReactJS and Grails 3.

CPIN - Consejo Profesional de Ingeniería Naval - Developed in 2018-2019
WebApp that allows the enrollments to create and manage their commitments. It also provides an admin management site.
Technologies: Wordpress for the landing. Grails 3 for backend and frontend.

Pasteleros - Developed in 2017
Landing site with an administrator to manage news dynamically.
Technologies: Mysql - JavaScript - PHP

Certifications

UNIVERSIDAD TECNOLÓGICA NACIONAL - FRA

March 2010 - July 2010
Computer Network Technician

  • Knowledge in installing, configuring, operating and repairing PCs, servers, network hardware, network software and other peripheral equipment.
  • Knowledge in installing, maintaining, repairing and inspecting network cabling and other hardware.
  • Knowledge in network control programs, network management and network architecture.


ASOCIACIÓN ARGENTINA DE CULTURAL INGLESA – AACI

November 2011
First Certificate in English (FCE).

Skills

Java

Kotlin

Golang

Python

Node JS

ReactJS

AngularJS

.NET (C# & VB)

SQL

MongoDB

Redis

DynamoDB

ElasticSearch

Maven & Gradle

Bash scripting