Enrique Rodriguez, Developer in Montevideo, Montevideo Department, Uruguay
Enrique is available for hire
Hire Enrique

Enrique Rodriguez

Verified Expert  in Engineering

Software Developer

Location
Montevideo, Montevideo Department, Uruguay
Toptal Member Since
August 25, 2020

Enrique is a passionate software engineer who has experience delivering quality back-end software for a variety of companies, from small startups to big corporations. He is an enthusiastic learner; he enjoys researching different technologies and architectures, finding the right tool for the job, and putting it into practice. Most recently, Enrique has been focusing on Scala with Akka technologies and ES and CQRS architectures.

Portfolio

Abra
Redis, Git, Unix, Scrum, SQL, ScalaTest, Python, Ruby on Rails (RoR)...
MLB Advanced Media (Moove-It Client)
Spring, Git, SQL, Spring Boot, Java
Bancard (Moove-It client)
Redis, Spring, Git, Unix, Scrum, SQL, MySQL, Java

Experience

Availability

Part-time

Preferred Environment

Git, Unix, Scala, IntelliJ IDEA

The most amazing...

...software I've developed is the back end for an enhanced blockchain-based wallet that allows users from all over the world to freely transact multiple assets.

Work Experience

Senior Scala Developer

2016 - 2020
Abra
  • Incorporated smoothly into a team from a startup located in Silicon Valley and learned blockchain concepts quickly.
  • Helped improve the development process by bringing functional programming experience and applying its best practices and design patterns.
  • Improved the scalability of the system by adding a key-value caching layer for critical app use cases.
  • Helped transition the app packaging to Docker, resulting in simpler deploys and making development environments easier to set up.
Technologies: Redis, Git, Unix, Scrum, SQL, ScalaTest, Python, Ruby on Rails (RoR), Blockchain, Docker, PostgreSQL, Slick, Play Framework, Akka, Scala

Java Developer

2015 - 2016
MLB Advanced Media (Moove-It Client)
  • Started and developed a full project from scratch for a big company in the entertainment industry.
  • Decided which technologies to use and designed the architecture of a key component of a big system that provides information to heterogeneous multimedia devices.
  • Researched tools for allowing parallelism and scalability. Decided on RxJava which leveraged functional programming principles, allowing great flexibility to meet the demanding requirements.
Technologies: Spring, Git, SQL, Spring Boot, Java

Java Developer

2014 - 2015
Bancard (Moove-It client)
  • Developed an application integration system for a financial entity where no transaction whatsoever is lost.
  • Automated the deployment process using Ansible, making deploys simpler and less error-prone.
  • Provided a highly available and reliable system by using replication and stateless-transactions techniques.
Technologies: Redis, Spring, Git, Unix, Scrum, SQL, MySQL, Java

Java Developer

2013 - 2015
Numerex (Moove-It Client)
  • Ensured a smooth communication channel between millions of devices and tens of web applications.
  • Migrated a legacy system from an old ESB technology to modern Java with Spring microservices.
  • Improved the code quality by applying design patterns, notably reducing the codebase size by 10%.
Technologies: Spring, Git, Unix, Scrum, SQL, MySQL, JPA, Java

Full-stack Developer

2010 - 2013
BQN Custom Technology
  • Developed an app to track the company's hardware units as well as the available stock of products for manufacturing and selling.
  • Led the deployment and usage of an issue-tracking system along with the Scrum methodology.
  • Implemented software libraries to achieve code reutilization across the organization.
Technologies: Unix, SQL, ScalaTest, MySQL, Vaadin, Scala

Custom Server Monitoring Tool

https://blog.moove-it.com/custom-server-monitoring-tool-using-scala-akka/
An app to monitor servers, written with pure Scala and Akka actors. I did all the process from gathering the requirements by finding the best tool for the task of developing and deploying it. The app is easy to install and configure, the configuration can be changed dynamically, information is displayed with easy to read charts and alarms can be set for custom thresholds.

Akka-typed Research

https://medium.com/@quiquerodrguez/there-is-more-to-akka-typed-than-meets-the-eye-4b8f66ba45b1
After taking an online course on reactive programming with Scala and Akka, I decided to investigate deeper into Akka-typed, so I created a pet project to try and see how far I could go in defining a compiler-checked protocol. The result was very interesting and the process quite fun.

Languages

Scala, Java, SQL, Python

Frameworks

Akka, Spring, Play Framework, Spring Boot, Vaadin, JPA, Ruby on Rails (RoR)

Libraries/APIs

REST APIs, Slick

Tools

Git, ScalaTest, IntelliJ IDEA

Paradigms

Functional Programming, Scrum

Platforms

Blockchain, Unix, Docker

Storage

PostgreSQL, MySQL, Redis

2008 - 2014

Bachelor's Degree in Computer Science

Universidad de la República - Montevideo, Uruguay

APRIL 2020 - PRESENT

Programming Reactive Systems

edX

SEPTEMBER 2018 - PRESENT

Reactive Architecture: Domain Driven Design

Cognitive Class

AUGUST 2018 - PRESENT

Principles of Reactive Architecture

IBM

JUNE 2015 - PRESENT

Principles of Reactive Programming

Coursera

DECEMBER 2013 - PRESENT

Functional Programming Principles in Scala

Coursera

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring