GDPR compliance and account deletion

As customers, we're all happy to know about GDPR and the protection of our private data this regulation enforces. But as service providers, it's another story and the implications can be challenging

MySQL 8 Features

MySQL 8 comes with tons of new features. From 8.0 to the last minor release the team has been busy adding tons of improvements. Let's do a quick tour!

Your job is not just to write good code

Writing good code is the easy part; it has challenges of course but most engineers struggle with communication.

What's a good team process?

Any team - no matter the scale - encounters some friction at some point. Processes are a possible solution to address these. But how should we build processes that work?

What I learned in two years at Getaround

A non-exhaustive list of tips, patterns and lib I learned to use at Getaround

How we handle incidents at Getaround

An example of what happens when a bad commit is deployed

How we ran our last hack day

Running an hack day in a full-remote environment

Predicting slack emoji reactions with machine learning

Adding a slack action to react with a relevant emoji, using ruby and machine learning

Bookkeeping

Translating hundreds-of-years-old ideas in code

Writing JavaScript like it's 2020

() => 'The future looks good!'

Migrating a Live IoT Telemetry Backend

Explore the process behind choosing and migrating IoT infrastructure

Improving Performance with Flame Graphs

A quick overview of how we dig into the performance of specific parts of our app.

What is my job like at Getaround EU

Get an overview of what a backend developer could do at Getaround EU

More tips and tricks for junior developers

Some more tips with examples for junior devs looking to improve their code

A basic decision tree in Ruby

Build a simple decision tree for a multi-steps flow

Sharing React components with rollup.js

Bundle and publish a React component project to share it across our projects as a node module

How Kotlin's Coroutines help us to deal with Bluetooth

At Drivy, we want to enable users to open the car even if it's on the bottom floor of the deepest, underground parking. Since we can't rely on a GSM connection when so deep underground, we need to use a Bluetooth connection. But communicating with a Bluetooth device is easier said than done, due to the fact that it's low-level and requires many asynchronous calls. Let's see how we can improve this.

Things to consider when choosing a third-party API

There are a lot of third-party-services APIs, but not all are created equally. In this article, we'll list the different points you should consider before you take a decision: documentation, libraries, SDKs, support, pricing, data privacy, and maintenance

Design system and API-Driven UI

Our iOS and Android apps require API calls to fetch fresh content and build screens. We combined this requirement with the power of a design system to go even further in our ability to have flexible apps.

Embracing or banishing randomness

How could using random values within your specs lead to better documentation and greater confidence? This post will use Ruby and RSpec to introduce some concepts from property based testing.

Your JavaScript can reveal your secrets

In backend security, JavaScript files are often underlooked but can tell a great deal about you.

Sorbet: A Ruby type checker

Sorbet is a Ruby type checker developed by Stripe. What's a type checker? What kind of type checker is Sorbet? Should you use it?

From translator to developer

An interview with a Full-Stack Engineer on how she started coding and what it’s like to work at Drivy

Rails 6 unnoticed features

The features you may have missed.

Handle disabled mobile data setting on iOS

How to reimplement iOS's alert for cellular data error

Ruby tricks for junior developers

Some small tricks and examples to improve your code

Lambda composition in ruby 2.6

The new proc composition operators: << and >> - a small feature that can easily be overlooked.

Why we've chosen Snowflake ❄️ as our Data Warehouse

We will share with you the reasons why we've changed our Data Warehouse technology from Redshift to Snowflake.

Airflow Architecture at Drivy

Airflow Architecture at Drivy: a quick overview of Airflow architecture at Drivy

Open-sourcing checker jobs

A Ruby gem to run regression tests on your data using a convenient DSL.

Exporting significant SQL reports with ActiveRecord

Avoid blowing up your memory while running big SQL queries

Security tips for rails apps

A few tips and examples to avoid basic security issues in a rails application

Implementing Up Navigation on Android

Parent Navigation has always been a tough topic on Android. There are not a lot of apps that implement the guidelines correctly, maybe because they are hard to understand or complicated to implement.

Quick wins to deal with users' broken email addresses

Transactional emails are very important for a successful experience. So, how are we dealing with broken email addresses?

Usage of Sidekiq middleware

Use Sidekiq middleware to propagate information to jobs.

Rails 5.2: ActiveStorage highlight

Rails 5.2 comes with awesome features: here we'll talk about ActiveStorage

Android Makers 2018 Key takeaways

Modern Android development, From Java to Kotlin, Design Tools, ADB, Typesetting and more: key takeaways from this 2018 edition.

Ensuring consistent spacing in your UI

Ensuring visual consistency across an application can be tricky: a few tips about how we do it at Drivy.

Running Our First Internal Hack Day

We started doing hack days to work together on new ideas. It was a lot of fun, so we decided to share how we did it and some of the results we saw.

Redshift tips and tricks - part 1

We will share with you some insights, tips and tricks on how we managed to increase performance, robustness and reliability of Redshift as our usages changed over time.

Rails 5.1 Change Tracking in Callbacks

Illustration of a subtle change to the way that Rails 5.1 tracks model changes in callbacks

How we documented our API using unit testing

One of the most known pain point in API development is keeping up-to-date documentation. Let's see how we managed to do it using unit testing.

Pro tips for productivity

A summary of pro tips for enhanced productivity, recently shared by the dev team during a Tech Talk

Highlights from the 2017 dotJS

A handpicked selection of the dotJS talks you should watch first.

dotCSS 2017 hightlights

The Drivy team was at the 2017 DotCSS conference. Here is a digest of the talks we found the most interesting, including a search engine build in CSS or what can be done with the grid property.

Embulk: move easily data across datasources

We present how we use Embulk to move data across multiple datasources thousand times a day at Drivy

Sending an e-mail to millions of users

Sometimes you just need to send a lot of emails, and services that make it really simple can get too expensive. Here is how we sent an e-mail to all our users and what we learnt.

Multi-currency support in Java

For a few weeks, Drivy has been available in the United-Kingdom. Unlike the others Europeans countries where Drivy operates, the United-Kingdom use a different currency: we had to make some changes in our Android apps to support this.

Data quality checkers

Making sure that the data we use is of good enough quality is very important. Here is how we ensure that the data we collect, store and process is meeting our quality requirements.

Sanitize your attributes through your form object

A simple way to sanitize the user's form inputs using the Virtus custom coercion.