logo

Migrations

Last Updated: 2024-01-20

2023

Lyft: Druid => ClickHouse

https://eng.lyft.com/druid-deprecation-and-clickhouse-adoption-at-lyft-120af37651fd

At Lyft, our primary Druid customers were data engineers and software engineers. One of the main barriers we faced for onboarding new customers was the steep ramp-up for writing and maintaining their ingestion specifications, as well as understanding the different tuning mechanisms for each use case. ... for Lyft, as a Kubernetes Compute company, running ClickHouse over Druid would reduce our compute footprint by a large margin.

Chromium adds Rust: https://www.theregister.com/2023/01/12/google_chromium_rust/

2022

Android adds Rust: https://security.googleblog.com/2022/12/memory-safe-languages-in-android-13.html

Vue to svelt: https://escape.tech/blog/from-vue2-to-svelte/

Amazon Kindle UI: from JavaScript to React Native: https://goodereader.com/blog/electronic-readers/amazon-kindle-ui-is-switching-from-javascript-to-react-native

SingleStore: Moving Away From Next.js https://www.singlestore.com/blog/moving-from-next-js/

2021

React Official Documents: Gatsby -> Next

https://beta.reactjs.org/

Next 12: Babel -> SWC

Next.js now uses Rust-based compiler SWC to compile JavaScript/TypeScript. This new compiler is up to 17x faster than Babel when compiling individual files and up to 5x faster Fast Refresh.

Uber: Fulfillment Platform Rearchitecture

https://eng.uber.com/fulfillment-platform-rearchitecture/

  • The old service was written with Node.js and HTTP/JSON, while newer Uber services use Java with Protocol Buffers (Protobuf) for communication.
  • use Spanner as db

Qt: qmake to cmake

https://www.qt.io/blog/qt-and-cmake-the-past-the-present-and-the-future

2020

AOSP: -> Bazel

https://blog.bazel.build/2020/11/12/aosp_migrating_to_bazel.html

Spring Boot: Maven -> Gradle

https://spring.io/blog/2020/06/08/migrating-spring-boot-s-build-to-gradle

Discord: Go -> Rust

https://blog.discordapp.com/why-discord-is-switching-from-go-to-rust-a190bbca2b1f

Rust does not have garbage collection; Go has latency spikes every 2 min.

2019

Dropbox: to gPRC

https://blogs.dropbox.com/tech/2019/01/courier-dropbox-migration-to-grpc/

Deliveroo: Ruby -> Rust

https://deliveroo.engineering/2019/02/14/moving-from-ruby-to-rust.html

Redhat: MongoDB -> PostgreSQL

https://www.redhat.com/en/blog/red-hat-satellite-standardize-postgresql-backend

GNU Health: MongoDB -> PostgreSQL

http://savannah.gnu.org/forum/forum.php?forum_id=9366

MongoDB Changed the license to Server Side Public License (SSPL) at the end of 2018. Previous versions are still on GPLv3, but MongoDB no longer maintain those old versions.

2018

Udacity: Deprecate React Native

https://engineering.udacity.com/react-native-a-retrospective-from-the-mobile-engineering-team-at-udacity-89975d6a8102

Airbnb: Sunsetting React Native

https://medium.com/airbnb-engineering/sunsetting-react-native-1868ba28e30a

Depop: Heroku to AWS

https://engineering.depop.com/aws-migration-a-depop-story-1444e9aaad31

Facebook: InnoDB to MyRocks

https://code.facebook.com/posts/1478526992216557/migrating-a-database-from-innodb-to-myrocks/

Why: With pure Flash, UDB was space-bound. Even though we used InnoDB compression and there was excess CPU and random I/O capacity, it was unlikely that we could enhance InnoDB to use less space...This was one of the motivations for creating MyRocks – a RocksDB storage engine for MySQL...

Uber: Postgres to MySQL

https://eng.uber.com/mysql-migration/

Segment: Microservices back to Monolith

https://segment.com/blog/goodbye-microservices/

Redfin: Maven to Bazel

https://redfin.engineering/we-switched-from-maven-to-bazel-and-builds-got-10x-faster-b265a7845854

Steam: Python to Go

https://getstream.io/blog/switched-python-go/ https://lobste.rs/s/zsbrjy/why_we_switched_from_python_go#c_ea61kn

Scala to Go

https://movio.co/en/blog/migrate-Scala-to-Go/

2016

Spotify: on-prem to Google Cloud Platform

https://labs.spotify.com/2016/02/25/spotifys-event-delivery-the-road-to-the-cloud-part-i/

2015

Braintree: Gradle to Bazel

https://www.braintreepayments.com/blog/migrating-from-gradle-to-bazel/