Juan Camilo Bages, Developer in Bogotá - Bogota, Colombia
Juan is available for hire
Hire Juan

Juan Camilo Bages

Verified Expert  in Engineering

Software Developer

Bogotá - Bogota, Colombia

Toptal member since January 18, 2022

Bio

Juan is a software engineer with experience in large-scale distributed search systems with low latency, high availability, and excellent data quality. He uses the tech stack, which mainly consists of Ruby, Go, Elasticsearch, and Puppet, for his daily work. He has delivered previous projects using Python and JavaScript with frameworks like Vue, MongoDB, and SQL.

Portfolio

Looka Inc
Go, GraphQL, Node.js, PostgreSQL, MySQL, Amazon S3 (AWS S3), Stripe, Stripe API...
Stripe
Ruby, Puppet, Go, Elasticsearch, Python, Python 3, Python 2, JavaScript...
Freelance
JavaScript, Vue 2, Python, Python 2, Python 3, Flask, Django, AngularJS, Java...

Experience

  • Python - 4 years
  • JavaScript - 4 years
  • Git - 4 years
  • APIs - 4 years
  • Elasticsearch - 2 years
  • Ruby - 2 years
  • Go - 2 years
  • Vue 2 - 2 years

Availability

Part-time

Preferred Environment

Visual Studio Code (VS Code), Slack, Discord, Unix, Git, GitHub

The most amazing...

...thing I’ve developed is a Search API with a custom query language and a support for hundreds of concurrent requests per second.

Work Experience

Software Engineer

2022 - PRESENT
Looka Inc
  • Developed integrations with external payment APIs using Go, including HTTP REST calls and webhooks, while maintaining backward compatibility with the previous state of the back end.
  • Developed features integrated with external services such as Amazon S3 to upload media without incurring a high server load and to maintain low latency.
  • Updated SQL database schema in a lock-free manner and maintained backward compatibility.
Technologies: Go, GraphQL, Node.js, PostgreSQL, MySQL, Amazon S3 (AWS S3), Stripe, Stripe API, Stripe Checkout, Cloud

Software Engineer

2019 - 2022
Stripe
  • Introduced cross-region data ingestion and search to comply with Indian data localization regulations.
  • Upgraded Elasticsearch clusters with zero downtime migrating one petabyte of data across 700 nodes.
  • Developed a search API query language and a framework that simplifies adding new fields for users to query their data.
  • Reduced clusters data retention and toil, which resulted in yearly savings of $1.5 million.
  • Implemented a separate indexing pipeline for internal migrations reducing toil and incidents.
Technologies: Ruby, Puppet, Go, Elasticsearch, Python, Python 3, Python 2, JavaScript, Software Engineering, Databases, Visual Studio Code (VS Code), Slack, Unix, GitHub, APIs, Docker, Amazon Web Services (AWS), Amazon S3 (AWS S3), Stripe, Stripe API, Stripe Checkout, Infrastructure, Data Analytics, Cloud

Full-stack Software Engineer

2017 - 2019
Freelance
  • Developed applications for different customers based on the given functional requirements.
  • Implemented web interfaces using modern JavaScript frameworks like Vue.
  • Developed REST APIs in the back end to retrieve data from the front end.
Technologies: JavaScript, Vue 2, Python, Python 2, Python 3, Flask, Django, AngularJS, Java, C++, Software Engineering, Databases, Visual Studio Code (VS Code), Discord, Unix, Git, GitHub, APIs, Docker, Amazon Web Services (AWS), Chrome Extensions, Amazon S3 (AWS S3), Web Scraping, React, Stripe, Stripe API, Stripe Checkout, Infrastructure, Data Analytics, Cloud, Artificial Intelligence (AI), CSS3, CSS, Responsive UI

Software Engineer Intern

2018 - 2018
Twitter
  • Developed a feature for rolling reboot of all nodes in a database cluster.
  • Ensured that availability and consistency constraints were maintained with the feature mentioned above.
  • Allowed the database team to perform kernel upgrades that required rebooting nodes with zero downtime and low toil.
Technologies: Scala, Java, Puppet, Software Engineering, Databases, Slack, Unix, Git, GitHub, Infrastructure, Cloud

Software Engineer Intern

2018 - 2018
Microsoft
  • Developed a web tool for partners to visualize a catalog of internal web modules.
  • Enabled users to interact with modules in real time and change their configuration on the fly.
  • Implemented a feature that allows real-time preview of modules using JavaScript Ajax, replacing the old pattern that required a full website load.
Technologies: JavaScript, C#, jQuery, Software Engineering, Git, Responsive UI, CSS3, CSS

Full-stack Software Developer

2017 - 2017
Mesfix
  • Implemented microservices for replacing the platform’s old monolith architecture.
  • Developed scripts for migrating platform’s data in RDBMS to MongoDB.
  • Migrated the web interface to make use of microservice's new REST APIs.
Technologies: PHP, Python, Python 2, Python 3, JavaScript, Software Engineering, Databases, Unix, Git, GitHub, APIs, Web Scraping

Search API

This Search API allows users to programmatically look at their financial data using a custom query language. The API serves Elasticsearch data indexed in real time to ensure data quality. The system is a large distributed cluster that supports high throughput indexing and concurrent search requests.

Kerni Chrome Extension

A Chrome extension that allows users to edit their website copywrites in real time. Additionally, users were able to add new variations or languages to their site so that they could modify the same website with different content. Users could apply these changes to their website in production via an internal integration.

Mati Tracker

https://joinmati.com
A flutter app for tracking habits and different challenges in a social manner. I designed and developed the app end-to-end. It has been used by a couple of thousand users and is still being used actively. It's available on both Android and iOS app stores.
2013 - 2018

Bachelor's Degree in Computer Science

Universidad de los Andes - Bogotá, Colombia

Libraries/APIs

Stripe, Stripe API, Vue 2, jQuery, Node.js, React

Tools

Git, Stripe Checkout, Slack, GitHub, Puppet

Languages

Ruby, Go, Python, Python 3, Python 2, JavaScript, CSS, CSS3, Java, C++, PHP, C#, Scala, GraphQL, HTML

Storage

Elasticsearch, Databases, Amazon S3 (AWS S3), PostgreSQL, MySQL

Frameworks

Flask, Django, AngularJS, Flutter

Platforms

Visual Studio Code (VS Code), Unix, Docker, Amazon Web Services (AWS), Firebase

Other

Algorithms, Data Structures, APIs, Responsive UI, Web Scraping, Software Engineering, Discord, Chrome Extensions, Infrastructure, Data Analytics, Cloud, Artificial Intelligence (AI), Firebase Hosting

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