Edo Rivai, Developer in Vienna, Austria
Edo is available for hire
Hire Edo

Edo Rivai

Verified Expert  in Engineering

Full-stack Developer

Vienna, Austria

Toptal member since May 7, 2019

Bio

Edo is an experienced web developer with both freelancing and startup experience. After freelancing for a year, he joined an Amsterdam-based travel startup. He started as the only developer, building the entire platform from scratch, and subsequently built out a small team over a six-year period. His expertise is full stack JavaScript; Node.js on the back end and React on the front end.

Portfolio

Spot AI, Inc
Node.js, React, PostgreSQL, Google Cloud, Kubernetes, Linux, TypeScript, Redis...
Wigwam Travel
Google Cloud Platform (GCP), Kubernetes, PostgreSQL, GraphQL, TypeScript...
PaperFlies
Amazon Web Services (AWS), PostgreSQL, Docker, Kubernetes...

Experience

  • JavaScript - 8 years
  • React - 7 years
  • Node.js - 7 years
  • TypeScript - 6 years
  • Full-stack - 5 years
  • GraphQL - 5 years
  • PostgreSQL - 4 years
  • Kubernetes - 1 year

Availability

Part-time

Preferred Environment

Git, Visual Studio Code (VS Code), Ubuntu, React

The most amazing...

...thing I wrote was a search engine for virtual interlining flights, combining flights between carrier alliances, unlocking cheaper combinations for travelers.

Work Experience

Senior Software Engineer

2019 - PRESENT
Spot AI, Inc
  • Took the proof of concept that the founder built and transformed it into a production-ready system. Laid the infrastructure foundations: Google Cloud, CI/CD, front end, back end, databases, and edge-to-cloud communications.
  • Built key features like remote video streaming, public clip sharing, video collaboration tooling (like Loom), user access control, and AI-powered analytics dashboards. These features allowed the company to scale from zero to past our Series B financing.
  • Scaled the initial system from 10s to 10,000s of edge devices. This required migrating data from centralized databases (PostgreSQL) to services that handle high-volume data; Google BigQuery and BigTable.
  • Led one of the development teams by managing Jira tickets, allocating team members, doing estimations, and working with the product and design teams to formulate engineering requirements.
  • Built the initial video streaming infrastructure by ingesting camera feeds with RTSP, transcoding with FFmpeg, and serving over HLS.
  • Managed a team of contractors to build native mobile apps. Designed the initial architecture and balanced end-user experience with the development effort of porting web features to native.
Technologies: Node.js, React, PostgreSQL, Google Cloud, Kubernetes, Linux, TypeScript, Redis, GraphQL, CSS, Git, Web, SQL, Docker, Cypress, Tailwind CSS, Software Architecture

Lead Developer

2017 - 2019
Wigwam Travel
  • Implemented the back-end system for retrieving and updating the availability and pricing of Wigwam Travel's offerings using Node.js and PostgreSQL.
  • Used React, TypeScript, and GraphQL to implement the front end.
  • Led the migration of the company infrastructure from AWS Elastic Beanstalk to Kubernetes on the Google Cloud Platform.
  • Designed and implemented a CI/CD pipeline using CircleCI and Cloud Build and the deployment infrastructure using AWS Elastic Beanstalk and Kubernetes.
  • Completed performance tuning of the pricing system, which involved tuning the PostgreSQL schema and queries and changing how the front end was requesting and caching prices using GraphQL.
Technologies: Google Cloud Platform (GCP), Kubernetes, PostgreSQL, GraphQL, TypeScript, Full-stack, JavaScript, Node.js, React, CSS, Git, Web, SQL, Docker, Software Architecture

Lead Developer

2012 - 2017
PaperFlies
  • Designed and implemented the flight search engine back end in Node.js.
  • Implemented the back office dashboard using React and consuming our back end REST API.
  • Designed and maintained an image service, which stores, transforms and manages the serving of images. AWS Lambda and S3.
  • Implemented and maintained the front end, written in React.
  • Led the effort on our virtual interlining search engine, which combined flights across multiple alliances. Written in Node.js and PostgreSQL.
Technologies: Amazon Web Services (AWS), PostgreSQL, Docker, Kubernetes, Google Cloud Platform (GCP), CentOS, TypeScript, React, Node.js, JavaScript, Full-stack, CSS, Git, Web, SQL

Web Developer

2011 - 2012
Ilumbo
  • Created a web-based ad video player.
  • Created multiple static websites using web technologies.
  • Created a video player for a video sharing platform.
  • Created a small web shop from scratch.
  • Implemented a high-profile email campaign.
Technologies: JavaScript, Flash, Full-stack, Node.js, React, CSS, Git, Web

Experience

Wigwam Travel

Wigwam Travel is a startup that offers holiday packages that include transportation and hotel accommodation. I was involved in this project from the beginning and led the development team in building the platform from scratch.

The business revolved around travel experts curating packages, which would be linked to APIs for flight and hotel prices. We'd index hundreds of travel date combinations for every package, allowing users to view the packaged prices using a calendar.

The front end was written in React and connected to our back end using GraphQL. With Wigwam Travel being an eCommerce website, achieving a high conversion rate was a priority, and the content and website performance played an essential part. Using server-side rendering and lazy loading and building the website as a single-page app, we optimized the initial page load, which Amazon proved to significantly improve the conversion rate.

We initially deployed the app to AWS Elastic Beanstalk but migrated to Kubernetes and the Google Cloud Platform because the resource-sharing capabilities significantly decreased the costs. Also, the resilient scheduling mechanism increased our confidence during deployments and node failures.

Blog Post on Unit Testing in Node.js

https://medium.freecodecamp.org/how-to-mock-requests-for-unit-testing-in-node-bb5d7865814a
As I was writing unit tests to test some back end code which sent outbound HTTP requests, it occurred to me that the process of mocking the outbound requests was somewhat tedious.

At first, I asked around on Twitter, how other people handled it but didn't get a very satisfying response. That's when I decided to make a deep dive into the topic and eventually wrote my findings up in a blog post, which got published in the FreeCodeCamp Medium publication, one of the biggest programming publications.

Paperflies

Paperflies is a startup that underwent a lot of pivots and transformations. Supporting shifting requirements was one of the biggest challenges I've tackled there.

I started out as the only developer, implementing an MVP using very minimal server-side code. The front end was mainly plain HTML+CSS, with some vanilla JavaScript for small interactions.

The scope of the project grew substantially when we decided to add a full-fledged search engine, connecting to a big data provider with *very* old legacy systems. We'd connect our back end to their SOAP API, and render everything in an Angular 1 app.

This was right around the time that React came out, and I was running into performance problems rendering and sorting the list of search results in Angular. React promised to be more efficient with performing DOM mutations, which is when we migrated to React and have never looked back since.

As the team grew, my role changed to Lead Developer, and I was put in charge of managing 5 developers. I was in close contact with the designer, collaborating on responsive designs, and extracting the technical requirements for the dev team.

Education

2012 - 2015

Bachelor's Degree in Economics and Business Economics

Utrecht University - Utrecht, Netherlands

Skills

Libraries/APIs

React, Node.js

Tools

Git, Flash

Languages

JavaScript, TypeScript, CSS, HTML, GraphQL, SQL

Frameworks

Tailwind CSS, Cypress

Paradigms

Continuous Integration (CI), Unit Testing

Platforms

Web, Ubuntu, Visual Studio Code (VS Code), CentOS, Kubernetes, Google Cloud Platform (GCP), Docker, Amazon Web Services (AWS), Linux

Storage

PostgreSQL, Google Cloud, Redis

Other

Full-stack, Economics, Game Theory, Software Architecture

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