Fermin Silva, Developer in Buenos Aires, Argentina
Fermin is available for hire
Hire Fermin

Fermin Silva

Verified Expert  in Engineering

Senior Software Developer

Buenos Aires, Argentina

Toptal member since December 3, 2019

Bio

Having spent the past several years developing the back ends for web-scale companies, Fermin has accumulated the skills to bridge the gap between in-depth technical knowledge and agile product development. Fermin does this by working on both sides of the spectrum—from collaborating with DevOps to build robust back-end services to working hand-in-hand with the product team to quickly iterate on MVP products.

Portfolio

Binlogic, Inc.
RESTful Microservices, Amazon S3 (AWS S3), Redis, Amazon Web Services (AWS)...
MercadoLibre, Inc.
RESTful Microservices, Web Scalability, Back-end, Microservices, Encryption, Go...
OLX
Apache Solr, RESTful Microservices, Redis, Web Crawlers, Web Scalability...

Experience

  • Java - 8 years
  • MySQL - 8 years
  • RESTful Microservices - 7 years
  • Web Scraping - 4 years
  • Go - 4 years
  • Apache Solr - 4 years

Availability

Part-time

Preferred Environment

Apache Maven, IntelliJ IDEA, Jira, GitHub, Ubuntu, MacOS

The most amazing...

...project I've coded was a multi-terabyte database migration batch process with dynamic rules for eCommerce products recategorization.

Work Experience

Senior Software Developer

2016 - PRESENT
Binlogic, Inc.
  • Optimized the Go-based back end by adding tests, cleaning up code, improving the performance, and implementing dependency management.
  • Split a PHP application into multiple REST microservices in Go: email API, web contacts API, and more.
  • Integrated major MySQL backup methods into a Go application: XtraBackup, mysqldump, mydumper, and mysqlpump.
  • Changed the release pipeline, opting for an agile method based on short sprints.
  • Developed custom batch scripts for migrating thousands of databases.
Technologies: RESTful Microservices, Amazon S3 (AWS S3), Redis, Amazon Web Services (AWS), Back-end, Database Backups, MySQL, Microservices, PHP, Percona, MariaDB, Go

API Core Back-end Developer

2016 - 2016
MercadoLibre, Inc.
  • Proposed a solution to digitally sign all internal traffic between APIs in conjunction with the security and infrastructure teams.
  • Developed a certificate authority API in Java to manage digital signatures used for inter-API authentication and authorization.
  • Updated an internal Go SDK to integrate with the certificate authority.
Technologies: RESTful Microservices, Web Scalability, Back-end, Microservices, Encryption, Go, Java

Back-end Developer

2011 - 2016
OLX
  • Migrated a monolithic PHP application to microservices, particularly the search flow.
  • Maintained and scaled the Solr stack from 150 requests/second to over 1,000 requests/second, sharding documents and fine-tuning queries and caching.
  • Developed a batch program to massively recategorize eCommerce items, supporting user-defined rules in CSV that was used by the "categories team."
  • Built the autosuggestion API with common search queries using Lucene, Solr, and web scraping.
  • Built a back-office tool to explore database information and inconsistencies for items, categories, locations, and more.
Technologies: Apache Solr, RESTful Microservices, Redis, Web Crawlers, Web Scalability, Back-end, Agile Software Development, MySQL, Microservices, Web Scraping, Cache, Varnish, Git, MariaDB, Java

Experience

Java Back-end Development

Starting in 2011, I been working with a range of RESTful APIs from small micro-services to big core APIs. I've worked successfully with several methodologies, including quarterly planning in a big core back-end team and weekly sprints in a cross-functional team.

The projects were always very minimal concerning technology to get as much performance out of the hardware as possible. For example, we didn't have an ORM, used small frameworks, fine-tuned the cache-control directives (for a Varnish cache), split the queries to different shards for different QoS, among others.

I also have experience writing batch programs to process significant amounts of data, handling database migrations, web scraping/crawling, binary log file processing, and more. For smaller scripts, I tend to use Python, but for heavy-duty multithread processing, I prefer to use Java.

Go Development

Starting with small fixes in a Go client in 2016, I then built my website using Go and instantly fell in love with the language.

While I've enjoyed working in mission-critical core teams in big companies, nowadays, I prefer working closely with the product owners in smaller groups and proposing solutions and even new features.

I'm currently working with Go for back-end microservices along with daemon agents that we install on client machines. It was a full-stack position, so while I specialize in the back end, from time to time, I also did simple front end work. This work mostly consisted of back-office admin tools, email templates for CRM and transactional emails, business reports, and whatever was necessary to supplement a robust back-end product.

Mininoticias | Personal Project

I fully developed the site, Mininoticias.com.ar, that shows a small snippet of all the news from the major online newspapers in Argentina.

It uses Java for web crawling and indexing in Solr, and Go for the web framework (back end and front end). The website is running in the cloud and getting about 5,000 visitors per day.

Education

2008 - 2015

Bachelor of Science (BSc) Degree in Informatics Engineering

UNED | Universidad Nacional de Educación a Distancia - Madrid, Spain (Remote)

Certifications

JUNE 2016 - PRESENT

TOEFL

ETS

Skills

Libraries/APIs

Jsoup

Tools

GitHub, IntelliJ IDEA, Apache Maven, Varnish, Apache Solr, Git, GitHub Pages, Jenkins, Jira, Trello, Jekyll

Languages

Java, Go, SQL, HTML, PHP, Bash Script

Frameworks

Jersey

Paradigms

Microservices, Microservices Architecture, Agile Software Development

Storage

MySQL, Database Backups, NoSQL, Cache, Redis, Amazon S3 (AWS S3), MariaDB

Platforms

MacOS, Ubuntu, Percona, Linux, Amazon Web Services (AWS), Docker

Other

Back-end, Web Scraping, Web Scalability, Scraping, RESTful Microservices, Encryption, Web Crawlers

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