From 23fcfcc0bc72ee8216c71a7a2a47fe7cc3bec36f Mon Sep 17 00:00:00 2001 From: Travis CI Date: Tue, 1 Oct 2024 08:32:40 +0000 Subject: [PATCH] new version Tue Oct 1 08:32:40 UTC 2024 --- authors.html | 55 ++ blog/10/index.html | 372 ++++----- blog/11/index.html | 333 +++++--- blog/12/index.html | 216 +++-- blog/13/index.html | 305 ++++--- blog/14/index.html | 336 ++++---- blog/15/index.html | 325 ++++---- blog/16/index.html | 278 ++++--- blog/17/index.html | 295 +++---- blog/18/index.html | 288 ++++--- blog/19/index.html | 293 ++++--- blog/2/index.html | 355 ++++---- blog/20/index.html | 163 ++-- blog/21/index.html | 238 +++--- blog/22/index.html | 168 ++-- blog/23/index.html | 113 +++ blog/3/index.html | 304 +++---- blog/4/index.html | 311 ++++--- blog/5/index.html | 305 +++---- blog/6/index.html | 332 ++++---- blog/7/index.html | 328 +++++--- blog/8/index.html | 342 +++----- blog/9/index.html | 335 ++++---- categories/data-science/index.html | 128 +++ categories/engineering/index.html | 262 ++++++ catwalk-evolution.html | 575 +++++++++++++ feed.json | 108 ++- feed.xml | 780 +++++++++--------- hubble-data-discovery.html | 533 ++++++++++++ img/authors/bjorn-jee.jpg | Bin 0 -> 62255 bytes img/authors/daniel-tai.jpg | Bin 0 -> 75142 bytes img/authors/siddhart-pandey.jpg | Bin 0 -> 147466 bytes img/catwalk-evolution/cover.png | Bin 0 -> 667251 bytes img/catwalk-evolution/phase1.png | Bin 0 -> 164217 bytes .../phase2-api-request-flow.png | Bin 0 -> 34408 bytes img/catwalk-evolution/phase2.png | Bin 0 -> 262285 bytes img/catwalk-evolution/phase3.png | Bin 0 -> 217822 bytes img/catwalk-evolution/phase4.png | Bin 0 -> 75627 bytes index.html | 473 ++++++----- search.html | 20 + tags.html | 309 ++++--- 41 files changed, 5757 insertions(+), 3821 deletions(-) create mode 100644 catwalk-evolution.html create mode 100644 hubble-data-discovery.html create mode 100644 img/authors/bjorn-jee.jpg create mode 100644 img/authors/daniel-tai.jpg create mode 100644 img/authors/siddhart-pandey.jpg create mode 100644 img/catwalk-evolution/cover.png create mode 100644 img/catwalk-evolution/phase1.png create mode 100644 img/catwalk-evolution/phase2-api-request-flow.png create mode 100644 img/catwalk-evolution/phase2.png create mode 100644 img/catwalk-evolution/phase3.png create mode 100644 img/catwalk-evolution/phase4.png diff --git a/authors.html b/authors.html index 5b4471ae..db10ce01 100644 --- a/authors.html +++ b/authors.html @@ -599,6 +599,11 @@

Amanda Ng

@@ -1031,6 +1036,11 @@

Bjorn Jee

@@ -1471,6 +1481,11 @@

Daniel Tai

@@ -1850,6 +1865,11 @@

Feng Cheng

15 Jul 2024 +
  • + Enabling conversational data discovery with LLMs at Grab + +
  • + @@ -5111,6 +5131,11 @@

    Shreyas Parbat

    @@ -5292,6 +5317,11 @@

    Siddharth Pandey

    @@ -6096,6 +6126,11 @@

    Varun Torka

    @@ -6221,6 +6256,11 @@

    Vinnson Lee

    24 Aug 2020 +
  • + Enabling conversational data discovery with LLMs at Grab + +
  • + @@ -6292,6 +6332,11 @@

    Vishal Sharma

    5 Jun 2024 +
  • + Evolution of Catwalk: Model serving platform at Grab + +
  • + @@ -6444,6 +6489,11 @@

    Wen Bo Wei

    19 Apr 2022 +
  • + Evolution of Catwalk: Model serving platform at Grab + +
  • + @@ -7009,6 +7059,11 @@

    Yucheng Zeng

    diff --git a/blog/10/index.html b/blog/10/index.html index 0e1fa208..ca84de5b 100644 --- a/blog/10/index.html +++ b/blog/10/index.html @@ -148,6 +148,179 @@ +
  • +
    + +
    + + Protecting Personal Data in Grab's Imagery cover photo + +
    + +
    +
    +
    + + + +

    + Protecting Personal Data in Grab's Imagery +

    +
    Learn how Grab improves privacy protection to cater to various geographical locations.
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + Processing ETL tasks with Ratchet cover photo + +
    + +
    +
    +
    + + + +

    + Processing ETL tasks with Ratchet +

    +
    Read about what Data and ETL pipelines are and how they are used for processing multiple tasks in the Lending Team at Grab.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -706,205 +879,6 @@

  • -
  • -
    - -
    - - How Grab Leveraged Performance Marketing Automation to Improve Conversion Rates by 30% cover photo - -
    - -
    -
    -
    - - - -

    - How Grab Leveraged Performance Marketing Automation to Improve Conversion Rates by 30% -

    -
    Read to find out how Grab's Performance Marketing team leveraged on automation to improve conversion rates.
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - One Small Step Closer to Containerising Service Binaries cover photo - -
    - -
    -
    -
    - - - -

    - One Small Step Closer to Containerising Service Binaries -

    -
    Learn how Grab is investigating and reducing service binary size for Golang projects.
    -
    -
    - -
    -
    - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/11/index.html b/blog/11/index.html index f687f74b..61c1873e 100644 --- a/blog/11/index.html +++ b/blog/11/index.html @@ -148,6 +148,205 @@ +
  • +
    + +
    + + How Grab Leveraged Performance Marketing Automation to Improve Conversion Rates by 30% cover photo + +
    + +
    +
    +
    + + + +

    + How Grab Leveraged Performance Marketing Automation to Improve Conversion Rates by 30% +

    +
    Read to find out how Grab's Performance Marketing team leveraged on automation to improve conversion rates.
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + One Small Step Closer to Containerising Service Binaries cover photo + +
    + +
    +
    +
    + + + +

    + One Small Step Closer to Containerising Service Binaries +

    +
    Learn how Grab is investigating and reducing service binary size for Golang projects.
    +
    +
    + +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -740,140 +939,6 @@

  • -
  • -
    - -
    - - How Grab is Blazing Through the Superapp Bazel Migration cover photo - -
    - -
    -
    -
    - - - -

    - How Grab is Blazing Through the Superapp Bazel Migration -

    -
    Learn how we planned and started migrating our superapp to Bazel at Grab.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - Democratising Fare Storage at Scale Using Event Sourcing cover photo - -
    - -
    -
    -
    - - - -

    - Democratising Fare Storage at Scale Using Event Sourcing -

    -
    Read how we built Grab's single source of truth for fare storage and management. In this post, we explain how we used the Event Sourcing pattern to build our fare data store.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/12/index.html b/blog/12/index.html index 03165f1d..411eb4a4 100644 --- a/blog/12/index.html +++ b/blog/12/index.html @@ -152,8 +152,8 @@
    @@ -164,9 +164,9 @@

    - Keeping 170 Libraries Up to Date on a Large Scale Android App + How Grab is Blazing Through the Superapp Bazel Migration

    -
    Learn how we maintain our libraries and prevent defect leaks in our Grab Passenger app.
    +
    Learn how we planned and started migrating our superapp to Bazel at Grab.
    @@ -176,7 +176,7 @@

    - + @@ -200,9 +200,15 @@

    Android - Engineering + Bazel - Mobile + Build Time + + Gradle + + iOS + + Xcode @@ -216,8 +222,8 @@

    @@ -228,9 +234,9 @@

    - Optimally Scaling Kafka Consumer Applications + Democratising Fare Storage at Scale Using Event Sourcing

    -
    Read this deep dive on our Kubernetes infrastructure setup for Grab's stream processing framework.
    +
    Read how we built Grab's single source of truth for fare storage and management. In this post, we explain how we used the Event Sourcing pattern to build our fare data store.
    @@ -240,7 +246,7 @@

    - + @@ -262,17 +268,11 @@

    @@ -286,8 +286,8 @@

    @@ -298,9 +298,9 @@

    - Our Journey to Continuous Delivery at Grab (Part 1) + Keeping 170 Libraries Up to Date on a Large Scale Android App

    -
    Continuous Delivery is the principle of delivering software often, everyday. Read more to find out how we implemented continuous delivery at Grab.
    +
    Learn how we maintain our libraries and prevent defect leaks in our Grab Passenger app.
    @@ -310,7 +310,7 @@

    - + @@ -332,23 +332,11 @@

    @@ -362,8 +350,8 @@

    @@ -374,9 +362,9 @@

    - Uncovering the Truth Behind Lua and Redis Data Consistency + Optimally Scaling Kafka Consumer Applications

    -
    Redis does not guarantee the consistency between master and its replica nodes when Lua scripts are used. Read more to find out why and how to guarantee data consistency.
    +
    Read this deep dive on our Kubernetes infrastructure setup for Grab's stream processing framework.
    @@ -386,7 +374,7 @@

    - + @@ -408,13 +396,17 @@

    @@ -428,8 +420,8 @@

    @@ -439,14 +431,10 @@

    - - · - -

    - Securing and Managing Multi-cloud Presto Clusters with Grab’s DataGateway + Our Journey to Continuous Delivery at Grab (Part 1)

    -
    This blog post discusses how Grab's DataGateway plays a key role in supporting hundreds of users in our entire Presto ecosystem - from managing user access, cluster selection, workload distribution, and many more.
    +
    Continuous Delivery is the principle of delivering software often, everyday. Read more to find out how we implemented continuous delivery at Grab.
    @@ -456,7 +444,7 @@

    - + @@ -478,19 +466,23 @@

    @@ -504,8 +496,8 @@

    @@ -516,9 +508,9 @@

    - Go Modules- A Guide for monorepos (Part 2) + Uncovering the Truth Behind Lua and Redis Data Consistency

    -
    This is the second post on the Go module series, which highlights Grab’s experience working with Go modules in a multi-module monorepo. Here, we discuss the additional solutions for addressing dependency issues, as well as cover automatic upgrades.
    +
    Redis does not guarantee the consistency between master and its replica nodes when Lua scripts are used. Read more to find out why and how to guarantee data consistency.
    @@ -528,7 +520,7 @@

    - + @@ -550,15 +542,13 @@

    @@ -572,8 +562,8 @@

    @@ -588,9 +578,9 @@

    - The Journey of Deploying Apache Airflow at Grab + Securing and Managing Multi-cloud Presto Clusters with Grab’s DataGateway

    -
    This blog post shares how we designed and implemented an Apache Airflow-based scheduling and orchestration platform for teams across Grab.
    +
    This blog post discusses how Grab's DataGateway plays a key role in supporting hundreds of users in our entire Presto ecosystem - from managing user access, cluster selection, workload distribution, and many more.
    @@ -600,7 +590,7 @@

    - + @@ -622,17 +612,19 @@

    @@ -646,8 +638,8 @@

    @@ -658,9 +650,9 @@

    - How We Built Our In-house Chat Platform for the Web + Go Modules- A Guide for monorepos (Part 2)

    -
    This blog post shares our learnings from building our very own chat platform for the web.
    +
    This is the second post on the Go module series, which highlights Grab’s experience working with Go modules in a multi-module monorepo. Here, we discuss the additional solutions for addressing dependency issues, as well as cover automatic upgrades.
    @@ -670,7 +662,7 @@

    - + @@ -692,13 +684,15 @@

    diff --git a/blog/13/index.html b/blog/13/index.html index 363fa3ad..cf652aa7 100644 --- a/blog/13/index.html +++ b/blog/13/index.html @@ -148,6 +148,146 @@ +
  • +
    + +
    + + The Journey of Deploying Apache Airflow at Grab cover photo + +
    + +
    +
    +
    + + + + + · + + +

    + The Journey of Deploying Apache Airflow at Grab +

    +
    This blog post shares how we designed and implemented an Apache Airflow-based scheduling and orchestration platform for teams across Grab.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + How We Built Our In-house Chat Platform for the Web cover photo + +
    + +
    +
    +
    + + + +

    + How We Built Our In-house Chat Platform for the Web +

    +
    This blog post shares our learnings from building our very own chat platform for the web.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -633,171 +773,6 @@

  • -
  • -
    - -
    - - Grab-Posisi - Southeast Asia’s First Comprehensive GPS Trajectory Dataset cover photo - -
    - -
    -
    -
    - - - -

    - Grab-Posisi - Southeast Asia’s First Comprehensive GPS Trajectory Dataset -

    -
    This blog highlights Grab's latest GPS trajectory dataset - its content, format, applications, and how you can access the dataset for your research purpose.
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - How We Prevented App Performance Degradation from Sudden Ride Demand Spikes cover photo - -
    - -
    -
    -
    - - - -

    - How We Prevented App Performance Degradation from Sudden Ride Demand Spikes -

    -
    This blog addresses how engineers overcame the challenges Grab faced during the initial days due to sudden spike in ride demand.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/14/index.html b/blog/14/index.html index 36b250a7..54a3a19c 100644 --- a/blog/14/index.html +++ b/blog/14/index.html @@ -148,6 +148,171 @@ +
  • +
    + +
    + + Grab-Posisi - Southeast Asia’s First Comprehensive GPS Trajectory Dataset cover photo + +
    + +
    +
    +
    + + + +

    + Grab-Posisi - Southeast Asia’s First Comprehensive GPS Trajectory Dataset +

    +
    This blog highlights Grab's latest GPS trajectory dataset - its content, format, applications, and how you can access the dataset for your research purpose.
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + How We Prevented App Performance Degradation from Sudden Ride Demand Spikes cover photo + +
    + +
    +
    +
    + + + +

    + How We Prevented App Performance Degradation from Sudden Ride Demand Spikes +

    +
    This blog addresses how engineers overcame the challenges Grab faced during the initial days due to sudden spike in ride demand.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -629,177 +794,6 @@

  • -
  • -
    - -
    - - Using Grab’s Trust Counter Service to Detect Fraud Successfully cover photo - -
    - -
    -
    -
    - - - -

    - Using Grab’s Trust Counter Service to Detect Fraud Successfully -

    -
    This blog introduces Grab’s Trust Counter service for detecting fraud. It explains how the solution was designed so that different stakeholders like data analysts and data scientists can use the Counter service without any manual intervention from engineers. The Counter service provides a reliable data feed to the data science world.
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - Being a Principal Engineer at Grab cover photo - -
    - -
    -
    -
    - - - -

    - Being a Principal Engineer at Grab -

    -
    Curious about what a Principal Engineer role at Grab entails? Our Principal Engineers' responsibilities range from solving complex problems, taking care of the system-level architecture, collaborating with cross-functional teams, providing mentorship, and more.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/15/index.html b/blog/15/index.html index 0ed68090..352ccccc 100644 --- a/blog/15/index.html +++ b/blog/15/index.html @@ -148,6 +148,177 @@ +
  • +
    + +
    + + Using Grab’s Trust Counter Service to Detect Fraud Successfully cover photo + +
    + +
    +
    +
    + + + +

    + Using Grab’s Trust Counter Service to Detect Fraud Successfully +

    +
    This blog introduces Grab’s Trust Counter service for detecting fraud. It explains how the solution was designed so that different stakeholders like data analysts and data scientists can use the Counter service without any manual intervention from engineers. The Counter service provides a reliable data feed to the data science world.
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + Being a Principal Engineer at Grab cover photo + +
    + +
    +
    +
    + + + +

    + Being a Principal Engineer at Grab +

    +
    Curious about what a Principal Engineer role at Grab entails? Our Principal Engineers' responsibilities range from solving complex problems, taking care of the system-level architecture, collaborating with cross-functional teams, providing mentorship, and more.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -709,160 +880,6 @@

  • -
  • -
    - -
    - - React Native in GrabPay cover photo - -
    - -
    -
    -
    - - - -

    - React Native in GrabPay -

    -
    This blog post describes how we used React Native to optimize the Grab PAX app.
    -
    -
    - -
    -
    - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - Connecting the Invisibles to Design Seamless Experiences cover photo - -
    - -
    -
    -
    - - - -

    - Connecting the Invisibles to Design Seamless Experiences -

    -
    Much of the work done by the service design team at Grab revolves around integrating people, processes, and systems to deliver seamless user experiences. In this blog post, we present an overview on how Grab's service design team goes about doing that.
    -
    -
    - -
    -
    - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/16/index.html b/blog/16/index.html index c97e77f9..01e944e0 100644 --- a/blog/16/index.html +++ b/blog/16/index.html @@ -148,6 +148,160 @@ +
  • +
    + +
    + + React Native in GrabPay cover photo + +
    + +
    +
    +
    + + + +

    + React Native in GrabPay +

    +
    This blog post describes how we used React Native to optimize the Grab PAX app.
    +
    +
    + +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + Connecting the Invisibles to Design Seamless Experiences cover photo + +
    + +
    +
    +
    + + + +

    + Connecting the Invisibles to Design Seamless Experiences +

    +
    Much of the work done by the service design team at Grab revolves around integrating people, processes, and systems to deliver seamless user experiences. In this blog post, we present an overview on how Grab's service design team goes about doing that.
    +
    +
    + +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -683,130 +837,6 @@

  • -
  • -
    - -
    - - How We Harnessed the Wisdom of Crowds to Improve Restaurant Location Accuracy cover photo - -
    - -
    -
    -
    - - - -

    - How We Harnessed the Wisdom of Crowds to Improve Restaurant Location Accuracy -

    -
    We questioned some of the estimates that our algorithm for calculating restaurant wait times was making, and found that the "errors" were actually useful to discover restaurants whose locations had been incorrectly registered in our system. By combining such error signals across multiple orders, we were able to identify correct restaurant locations and amend them to improve the experience for our consumers.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - Designing Resilient Systems Beyond Retries (Part 3): Architecture Patterns and Chaos Engineering cover photo - -
    - -
    -
    -
    - - - -

    - Designing Resilient Systems Beyond Retries (Part 3): Architecture Patterns and Chaos Engineering -

    -
    This post is the third of a three-part series on going beyond retries and circuit breakers to improve system resiliency. This whole series covers techniques and architectures that can be used as part of a strategy to improve resiliency. In this article, we will focus on architecture patterns and chaos engineering to reduce, prevent, and test resiliency.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/17/index.html b/blog/17/index.html index 7d57c22e..63df584b 100644 --- a/blog/17/index.html +++ b/blog/17/index.html @@ -148,6 +148,130 @@ +
  • +
    + +
    + + How We Harnessed the Wisdom of Crowds to Improve Restaurant Location Accuracy cover photo + +
    + +
    +
    +
    + + + +

    + How We Harnessed the Wisdom of Crowds to Improve Restaurant Location Accuracy +

    +
    We questioned some of the estimates that our algorithm for calculating restaurant wait times was making, and found that the "errors" were actually useful to discover restaurants whose locations had been incorrectly registered in our system. By combining such error signals across multiple orders, we were able to identify correct restaurant locations and amend them to improve the experience for our consumers.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + Designing Resilient Systems Beyond Retries (Part 3): Architecture Patterns and Chaos Engineering cover photo + +
    + +
    +
    +
    + + + +

    + Designing Resilient Systems Beyond Retries (Part 3): Architecture Patterns and Chaos Engineering +

    +
    This post is the third of a three-part series on going beyond retries and circuit breakers to improve system resiliency. This whole series covers techniques and architectures that can be used as part of a strategy to improve resiliency. In this article, we will focus on architecture patterns and chaos engineering to reduce, prevent, and test resiliency.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -657,177 +781,6 @@

  • -
  • -
    - -
    - - Understanding Supply & Demand in Ride-hailing Through the Lens of Data cover photo - -
    - -
    -
    -
    - - - -

    - Understanding Supply & Demand in Ride-hailing Through the Lens of Data -

    -
    Grab aims to ensure that our passengers can get a ride conveniently while providing our drivers better livelihood. To achieve this, balancing demand and supply is crucial. This article gives you a glimpse of one of our analytics initiatives - how to measure the supply and demand ratio at any given area and time.
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - A Lean and Scalable Data Pipeline to Capture Large Scale Events and Support Experimentation Platform cover photo - -
    - -
    -
    -
    - - - -

    - A Lean and Scalable Data Pipeline to Capture Large Scale Events and Support Experimentation Platform -

    -
    This blog post focuses on the lessons we learned while building our batch data pipeline.
    -
    -
    - -
    -
    - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/18/index.html b/blog/18/index.html index 88beeaae..8396a0e9 100644 --- a/blog/18/index.html +++ b/blog/18/index.html @@ -152,8 +152,8 @@
    @@ -162,11 +162,11 @@
    - +

    - Designing Resilient Systems: Circuit Breakers or Retries? (Part 2) + Understanding Supply & Demand in Ride-hailing Through the Lens of Data

    -
    Grab designs fault-tolerant systems that can withstand failures allowing us to continuously provide our consumers with the many services they expect from us.
    +
    Grab aims to ensure that our passengers can get a ride conveniently while providing our drivers better livelihood. To achieve this, balancing demand and supply is crucial. This article gives you a glimpse of one of our analytics initiatives - how to measure the supply and demand ratio at any given area and time.
    @@ -176,7 +176,17 @@

    - + + + + + + + + + + + @@ -198,9 +224,15 @@

    @@ -214,8 +246,8 @@

    @@ -226,9 +258,9 @@

    - Querying Big Data in Real-time with Presto & Grab's TalariaDB + A Lean and Scalable Data Pipeline to Capture Large Scale Events and Support Experimentation Platform

    -
    In this article, we focus on TalariaDB, a distributed, highly available, and low latency time-series database that stores real-time data. For example, logs, metrics, and click streams generated by mobile apps and backend services that use Grab's Experimentation Platform SDK. It "stalks" the real-time data feed and only keeps the last one hour of data.
    +
    This blog post focuses on the lessons we learned while building our batch data pipeline.
    @@ -238,12 +270,12 @@

    - + - + @@ -275,13 +307,9 @@

    Big Data - Database - - Presto - - Real-Time + Data Pipeline - TalariaDB + Experiment @@ -295,8 +323,8 @@

    @@ -307,7 +335,7 @@

    - Designing Resilient Systems: Circuit Breakers or Retries? (Part 1) + Designing Resilient Systems: Circuit Breakers or Retries? (Part 2)

    Grab designs fault-tolerant systems that can withstand failures allowing us to continuously provide our consumers with the many services they expect from us.
    @@ -332,7 +360,7 @@

    - + @@ -357,8 +385,8 @@

    @@ -369,9 +397,9 @@

    - Orchestrating Chaos Using Grab's Experimentation Platform + Querying Big Data in Real-time with Presto & Grab's TalariaDB

    -
    At Grab, we practice chaos engineering by intentionally introducing failures in a service or component in the overall business flow. But the failed’ service is not the experiment’s focus. We’re interested in testing the services dependent on that failed service.
    +
    In this article, we focus on TalariaDB, a distributed, highly available, and low latency time-series database that stores real-time data. For example, logs, metrics, and click streams generated by mobile apps and backend services that use Grab's Experimentation Platform SDK. It "stalks" the real-time data feed and only keeps the last one hour of data.
    @@ -386,12 +414,7 @@

    - - - - - - + @@ -429,11 +444,15 @@

    @@ -447,8 +466,8 @@

    @@ -459,9 +478,9 @@

    - Reliable and Scalable Feature Toggles and A/B Testing SDK at Grab + Designing Resilient Systems: Circuit Breakers or Retries? (Part 1)

    -
    Grab’s feature toggle SDK provides a dynamic feature toggle capability to our engineering, data, product, and even business teams. Feature toggles also let teams modify system behaviour without changing code. Developers use the feature flags to keep new features hidden until product and marketing teams are ready to share and to run experiments (A/B tests) by dynamically changing feature toggles for specific users, rides, etc.
    +
    Grab designs fault-tolerant systems that can withstand failures allowing us to continuously provide our consumers with the many services they expect from us.
    @@ -471,7 +490,7 @@

    - + @@ -493,15 +512,9 @@

    @@ -515,8 +528,8 @@

    @@ -527,9 +540,9 @@

    - Mockers - Overcoming Testing Challenges at Grab + Orchestrating Chaos Using Grab's Experimentation Platform

    -
    Sustaining quality in fast paced development is a challenge. At Grab, we use Mockers - a tool to expand the scope of local box testing. It helps us overcome testing challenges in a microservice architecture.
    +
    At Grab, we practice chaos engineering by intentionally introducing failures in a service or component in the overall business flow. But the failed’ service is not the experiment’s focus. We’re interested in testing the services dependent on that failed service.
    @@ -539,27 +552,17 @@

    - - - - - - - - - - - + - + - + @@ -613,11 +600,11 @@

    @@ -631,8 +618,8 @@

    @@ -641,11 +628,11 @@

    - +

    - Journey of a Tourist via Grab + Reliable and Scalable Feature Toggles and A/B Testing SDK at Grab

    -
    Grab's services to tourists are an integral part of connecting tourists to various destinations and attractions. Do tourists travel on Grab to outlandishly fancy places like those you see in the movie "Crazy Rich Asians"? What are their favourite local places? Did you know that Grab's data reveals that medical tourism is growing in Singapore? Here are some exciting travel patterns that we found about our tourists' Grab rides in Singapore!
    +
    Grab’s feature toggle SDK provides a dynamic feature toggle capability to our engineering, data, product, and even business teams. Feature toggles also let teams modify system behaviour without changing code. Developers use the feature flags to keep new features hidden until product and marketing teams are ready to share and to run experiments (A/B tests) by dynamically changing feature toggles for specific users, rides, etc.

    @@ -655,7 +642,7 @@

    - + @@ -677,15 +664,15 @@

    @@ -699,8 +686,8 @@

    @@ -711,9 +698,9 @@

    - How We Designed the Quotas Microservice to Prevent Resource Abuse + Mockers - Overcoming Testing Challenges at Grab

    -
    Reliable, scalable, and high performing solutions for common system level issues are essential for microservice success, and there is a Grab-wide initiative to provide those common solutions. As an important component of the initiative, we wrote a microservice called Quotas, a highly scalable API request rate limiting solution to mitigate the problems of service abuse and cascading service failures.
    +
    Sustaining quality in fast paced development is a challenge. At Grab, we use Mockers - a tool to expand the scope of local box testing. It helps us overcome testing challenges in a microservice architecture.
    @@ -723,12 +710,27 @@

    - + + + + + + + + + + + - + + + + + + @@ -760,10 +786,10 @@

    Back End - Quota - Service + Testing + diff --git a/blog/19/index.html b/blog/19/index.html index b12258f9..3eb58a0b 100644 --- a/blog/19/index.html +++ b/blog/19/index.html @@ -148,6 +148,151 @@ +
  • +
    + +
    + + Journey of a Tourist via Grab cover photo + +
    + +
    +
    +
    + + + +

    + Journey of a Tourist via Grab +

    +
    Grab's services to tourists are an integral part of connecting tourists to various destinations and attractions. Do tourists travel on Grab to outlandishly fancy places like those you see in the movie "Crazy Rich Asians"? What are their favourite local places? Did you know that Grab's data reveals that medical tourism is growing in Singapore? Here are some exciting travel patterns that we found about our tourists' Grab rides in Singapore!
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + How We Designed the Quotas Microservice to Prevent Resource Abuse cover photo + +
    + +
    +
    +
    + + + +

    + How We Designed the Quotas Microservice to Prevent Resource Abuse +

    +
    Reliable, scalable, and high performing solutions for common system level issues are essential for microservice success, and there is a Grab-wide initiative to provide those common solutions. As an important component of the initiative, we wrote a microservice called Quotas, a highly scalable API request rate limiting solution to mitigate the problems of service abuse and cascading service failures.
    +
    +
    + +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -597,154 +742,6 @@

  • -
  • -
    - -
    - - GrabShare at the Intelligent Transportation Engineering Conference cover photo - -
    - -
    -
    -
    - - - -

    - GrabShare at the Intelligent Transportation Engineering Conference -

    -
    We're excited to share the publication of our paper GrabShare: The Construction of a Realtime Ridesharing Service, which was Grab's contribution to the Intelligent Transportation Engineering Conference in Singapore last month.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - Grabbing Growth: A Growth Hacking Story cover photo - -
    - -
    -
    -
    - - - -

    - Grabbing Growth: A Growth Hacking Story -

    -
    Disrupt or be disrupted - that was exactly the spirit in which the Growth Hacking team was created this year. This was a deliberate decision to nurture our scrappy DNA, and ensure that we had a dedicated space to experiment and enable intelligent risk-taking.
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/2/index.html b/blog/2/index.html index 712fdf80..f135a22f 100644 --- a/blog/2/index.html +++ b/blog/2/index.html @@ -148,6 +148,203 @@ +
  • +
    + +
    + + How we evaluated the business impact of marketing campaigns cover photo + +
    + +
    +
    +
    + + + +

    + How we evaluated the business impact of marketing campaigns +

    +
    Discover how Grab assesses marketing effectiveness using advanced attribution models and strategic testing to improve campaign precision and impact.
    +
    +
    + +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + No version left behind: Our epic journey of GitLab upgrades cover photo + +
    + +
    +
    +
    + + + +

    + No version left behind: Our epic journey of GitLab upgrades +

    +
    Join us as we share our experience in developing and implementing a consistent upgrade routine. This process underscored the significance of adaptability, comprehensive preparation, efficient communication, and ongoing learning.
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -669,164 +866,6 @@

  • -
  • -
    - -
    - - Managing dynamic marketplace content at scale: Grab's approach to content moderation cover photo - -
    - -
    -
    -
    - - - -

    - Managing dynamic marketplace content at scale: Grab's approach to content moderation -

    -
    Understand how Grab employs a combination of automated and manual content moderation to manage its dynamic marketplace content efficiently, while also collaborating with Google to ensure marketplace safety.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - Rethinking Stream Processing: Data Exploration cover photo - -
    - -
    -
    -
    - - - -

    - Rethinking Stream Processing: Data Exploration -

    -
    As Grab matures along the digitalisation journey, it is collecting and streaming event data generated from the end users of its superapp on a larger magnitude than before. Coban, Grab’s data-streaming platform team, is looking to help unlock the value of streaming data at an earlier stage of the data journey before this data is typically stored in a central location (“Data Lake”). This allows Grab to serve its superapp users more efficiently.
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/20/index.html b/blog/20/index.html index 361dcae3..54c6a16c 100644 --- a/blog/20/index.html +++ b/blog/20/index.html @@ -152,8 +152,8 @@
    @@ -164,9 +164,9 @@

    - The Data and Science Behind GrabShare Part I: Verifying Potential and Developing the Algorithm + GrabShare at the Intelligent Transportation Engineering Conference

    -
    Launching GrabShare was no easy feat. After reviewing the academic literature, we decided to take a different approach and build a new matching algorithm from the ground up.
    +
    We're excited to share the publication of our paper GrabShare: The Construction of a Realtime Ridesharing Service, which was Grab's contribution to the Intelligent Transportation Engineering Conference in Singapore last month.
    @@ -176,7 +176,7 @@

    - + @@ -214,8 +214,8 @@

    @@ -224,11 +224,11 @@

    - +

    - The Art of Hiring Good Engineers + Grabbing Growth: A Growth Hacking Story

    -
    Hiring the first five good engineers in your team requires a different approach to hiring the first twenty good engineers. The approach to designing this process will be even more different, when you want to hire to scale up to a 100 Engineers... or even to 300.
    +
    Disrupt or be disrupted - that was exactly the spirit in which the Growth Hacking team was created this year. This was a deliberate decision to nurture our scrappy DNA, and ensure that we had a dedicated space to experiment and enable intelligent risk-taking.

    @@ -238,7 +238,17 @@

    - + + + + + + + + + + + @@ -260,7 +286,7 @@

    @@ -274,8 +300,8 @@

    @@ -284,11 +310,11 @@

    - +

    - Migrating Existing Datastores + The Data and Science Behind GrabShare Part I: Verifying Potential and Developing the Algorithm

    -
    At Grab we take pride in creating solutions that impact millions of people in Southeast Asia and as they say, with great power comes great responsibility. As an app with 55 million downloads and 1.2 million drivers, it's our responsibility to keep our systems up-and-running. Any downtime causes drivers to miss earning and passengers to miss their appointments.
    +
    Launching GrabShare was no easy feat. After reviewing the academic literature, we decided to take a different approach and build a new matching algorithm from the ground up.

    @@ -298,7 +324,7 @@

    - + @@ -320,9 +346,9 @@

    @@ -336,8 +362,8 @@

    @@ -348,9 +374,9 @@

    - So You Need to Hire Good Engineers + The Art of Hiring Good Engineers

    -
    If you are in a fast growing tech startup, you're probably actively interviewing and hiring engineers to scale teams. My question to you is, what hiring strategy are you using when interviewing engineering warriors?
    +
    Hiring the first five good engineers in your team requires a different approach to hiring the first twenty good engineers. The approach to designing this process will be even more different, when you want to hire to scale up to a 100 Engineers... or even to 300.
    @@ -373,7 +399,7 @@

    - + @@ -396,8 +422,8 @@

    @@ -408,9 +434,9 @@

    - Come and #hackallthethings at Grab + Migrating Existing Datastores

    -
    For the longest time, security has been at the center of our priorities. There’s nothing more self-evident about the trust our millions of driving partners and consumers put in Grab. We strive every day to build the best tools available to ensure their data stays secure.
    +
    At Grab we take pride in creating solutions that impact millions of people in Southeast Asia and as they say, with great power comes great responsibility. As an app with 55 million downloads and 1.2 million drivers, it's our responsibility to keep our systems up-and-running. Any downtime causes drivers to miss earning and passengers to miss their appointments.
    @@ -420,7 +446,7 @@

    - + @@ -442,7 +468,9 @@

    @@ -455,16 +483,22 @@

  • -
    +
    + + So You Need to Hire Good Engineers cover photo + +
    + +

    - How We Scaled Our Cache and Got a Good Night's Sleep + So You Need to Hire Good Engineers

    -
    Caching is arguably the most important and widely used technique in computer industry, from CPU to Facebook live videos, cache is everywhere.
    +
    If you are in a fast growing tech startup, you're probably actively interviewing and hiring engineers to scale teams. My question to you is, what hiring strategy are you using when interviewing engineering warriors?
    @@ -474,7 +508,7 @@

    - +

    @@ -496,9 +530,7 @@

    @@ -512,8 +544,8 @@

    @@ -524,10 +556,9 @@

    - Grab's Front End Study Guide + Come and #hackallthethings at Grab

    -
    Grab is Southeast Asia (SEA)’s leading transportation platform and our mission is to drive SEA forward, leveraging on the latest technology and the talented people we have in the company. As of May 2017, we handle 2.3 million rides daily and we are growing and hiring at a rapid scale. -To keep up with Grab’s phenomenal growth, our web team and web platforms have to grow as well. Fortunately, or unfortunately, at Grab, the web team has been keeping up with the latest best practices and has incorporated the modern JavaScript ecosystem in our web apps.
    +
    For the longest time, security has been at the center of our priorities. There’s nothing more self-evident about the trust our millions of driving partners and consumers put in Grab. We strive every day to build the best tools available to ensure their data stays secure.

    @@ -537,7 +568,7 @@

    - + @@ -559,11 +590,7 @@

    @@ -583,9 +610,9 @@

    - DNS Resolution in Go and Cgo + How We Scaled Our Cache and Got a Good Night's Sleep

    -
    This article is part two of a two-part series. In this article, we will talk about RFC 6724 (3484), how DNS resolution works in Go and Cgo, and finally explaining why disabling IPv6 also disables the sorting of IP Addresses.
    +
    Caching is arguably the most important and widely used technique in computer industry, from CPU to Facebook live videos, cache is everywhere.
    @@ -595,7 +622,7 @@

    - + @@ -617,9 +644,9 @@

    diff --git a/blog/21/index.html b/blog/21/index.html index 36deb0bb..d7a5f6c1 100644 --- a/blog/21/index.html +++ b/blog/21/index.html @@ -148,6 +148,127 @@ +
  • +
    + +
    + + Grab's Front End Study Guide cover photo + +
    + +
    +
    +
    + + + +

    + Grab's Front End Study Guide +

    +
    Grab is Southeast Asia (SEA)’s leading transportation platform and our mission is to drive SEA forward, leveraging on the latest technology and the talented people we have in the company. As of May 2017, we handle 2.3 million rides daily and we are growing and hiring at a rapid scale. +To keep up with Grab’s phenomenal growth, our web team and web platforms have to grow as well. Fortunately, or unfortunately, at Grab, the web team has been keeping up with the latest best practices and has incorporated the modern JavaScript ecosystem in our web apps.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    +
    +
    + + + +

    + DNS Resolution in Go and Cgo +

    +
    This article is part two of a two-part series. In this article, we will talk about RFC 6724 (3484), how DNS resolution works in Go and Cgo, and finally explaining why disabling IPv6 also disables the sorting of IP Addresses.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -555,123 +676,6 @@

  • -
  • -
    - -
    -
    -
    - - - -

    - A Key Expired in Redis, You Won't Believe What Happened Next -

    -
    One of Grab's more popular caching solutions is Redis (often in the flavour of the misleadingly named ElastiCache), and for most cases, it works. Except for that time it didn't. Follow our story as we investigate how Redis deals with consistency on key expiration.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - How Grab Hires Engineers in Singapore cover photo - -
    - -
    -
    -
    - - - -

    - How Grab Hires Engineers in Singapore -

    -
    Working at Grab will be the “most challenging yet rewarding opportunity” any employee will ever encounter. -
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/22/index.html b/blog/22/index.html index c9ef2c58..7bec4fe6 100644 --- a/blog/22/index.html +++ b/blog/22/index.html @@ -151,23 +151,16 @@
  • -
    - - Battling with Tech Giants for the World's Best Talent cover photo - -
    - -
    +

    - Battling with Tech Giants for the World's Best Talent + A Key Expired in Redis, You Won't Believe What Happened Next

    -
    Grab steadily attracts a diverse set of engineers from around the world in its three R&D centres: Singapore, Seattle, and Beijing. Right now, half of Grab’s top leadership team is made up of women and we have attracted people from five continents to work together on solving the biggest challenges for Southeast Asia. -
    +
    One of Grab's more popular caching solutions is Redis (often in the flavour of the misleadingly named ElastiCache), and for most cases, it works. Except for that time it didn't. Follow our story as we investigate how Redis deals with consistency on key expiration.
    @@ -177,7 +170,7 @@

    - +

    @@ -199,7 +192,9 @@

    @@ -213,8 +208,8 @@

    @@ -225,9 +220,9 @@

    - This Rocket Ain't Stopping - Achieving Zero Downtime for Rails to Golang API Migration + How Grab Hires Engineers in Singapore

    -
    Grab has been transitioning from a Rails + NodeJS stack to a full Golang Service Oriented Architecture. To contribute to a single common code base, we wanted to transfer engineers working on the Rails server powering our passenger app APIs to other Go teams. +
    Working at Grab will be the “most challenging yet rewarding opportunity” any employee will ever encounter.
    @@ -238,7 +233,7 @@

    - +

    @@ -260,11 +255,7 @@

    @@ -278,8 +269,8 @@

    @@ -287,10 +278,13 @@

    + +

    - Grab Vietnam Careers Week + Battling with Tech Giants for the World's Best Talent

    -
    Grab is organising our first ever Grab Vietnam Careers Week in Ho Chi Minh City, Vietnam, from 22 to 26 October 2016. We are eager to have more engineers join our ranks to make a difference to improving transportation and reducing congestion in Southeast Asia. We are now on 23 million mobile devices supported by 460,000 drivers in the region, but we're only started and have much more to achieve! To find out more about Grab, take a look at our corporate profile at the end of this post.
    +
    Grab steadily attracts a diverse set of engineers from around the world in its three R&D centres: Singapore, Seattle, and Beijing. Right now, half of Grab’s top leadership team is made up of women and we have attracted people from five continents to work together on solving the biggest challenges for Southeast Asia. +
    @@ -313,7 +307,7 @@

    - +

    @@ -335,14 +329,23 @@

  • -
    +
    + + This Rocket Ain't Stopping - Achieving Zero Downtime for Rails to Golang API Migration cover photo + +
    + +
    + +

    - GrabPay Wins Best Fraud Prevention Innovation at the Florin Awards + This Rocket Ain't Stopping - Achieving Zero Downtime for Rails to Golang API Migration

    -
    I am honoured to receive the Best Fraud Prevention Innovation (Community Votes) Award at the 2016 Florin Awards on behalf of Grab. For those of you who voted for Grab, we thank you for your support that made this award possible.
    +
    Grab has been transitioning from a Rails + NodeJS stack to a full Golang Service Oriented Architecture. To contribute to a single common code base, we wanted to transfer engineers working on the Rails server powering our passenger app APIs to other Go teams. +
    @@ -352,7 +355,7 @@

    - +

    @@ -374,7 +377,11 @@

    @@ -387,16 +394,20 @@

  • -
    +
    + + Grab Vietnam Careers Week cover photo + +
    + +
    - -

    - Round-robin in Distributed Systems + Grab Vietnam Careers Week

    -
    While working on Grab's Common Data Service (CDS), there was the need to implement client side load balancing between CDS clients and servers. However, I kept encountering persistent connection issues with Elastic Load Balance (ELB).
    +
    Grab is organising our first ever Grab Vietnam Careers Week in Ho Chi Minh City, Vietnam, from 22 to 26 October 2016. We are eager to have more engineers join our ranks to make a difference to improving transportation and reducing congestion in Southeast Asia. We are now on 23 million mobile devices supported by 460,000 drivers in the region, but we're only started and have much more to achieve! To find out more about Grab, take a look at our corporate profile at the end of this post.
    @@ -406,7 +417,7 @@

    - +

    @@ -428,15 +439,7 @@

    @@ -453,12 +456,10 @@

    - -

    - Why Test the Design with Only 5 Users + GrabPay Wins Best Fraud Prevention Innovation at the Florin Awards

    -
    The reasoning behind small sample sizes in qualitative usability research.
    +
    I am honoured to receive the Best Fraud Prevention Innovation (Community Votes) Award at the 2016 Florin Awards on behalf of Grab. For those of you who voted for Grab, we thank you for your support that made this award possible.
    @@ -468,7 +469,7 @@

    - +

  • @@ -490,9 +491,7 @@

    @@ -512,11 +511,9 @@

    - Programmers Beware - UX is Not Just for Designers + Round-robin in Distributed Systems

    -
    Perhaps one of the biggest missed opportunities in Tech in recent history is UX. -Somehow, UX became the domain of Product Designers and User Interface Designers. -While they definitely are the right people to be thinking about web pages, mobile app screens and so on, we've missed a huge part of what we engineers work on every day: SDKs and APIs.
    +
    While working on Grab's Common Data Service (CDS), there was the need to implement client side load balancing between CDS clients and servers. However, I kept encountering persistent connection issues with Elastic Load Balance (ELB).
    @@ -526,7 +523,7 @@

    - + @@ -548,9 +545,15 @@

    @@ -568,12 +571,11 @@

    - +

    - Grab You Some Post-Mortem Reports + Why Test the Design with Only 5 Users

    -
    Grab adopts a Service-Oriented Architecture (SOA) to rapidly develop and deploy new feature services. One of the drawbacks of such a design is that team members find it hard to help with debugging production issues that inevitably arise in services belonging to other stakeholders. -
    +
    The reasoning behind small sample sizes in qualitative usability research.
    @@ -583,7 +585,7 @@

    - + @@ -605,7 +607,9 @@

    diff --git a/blog/23/index.html b/blog/23/index.html index ca045c8d..01752901 100644 --- a/blog/23/index.html +++ b/blog/23/index.html @@ -148,6 +148,119 @@ +
  • +
    + +
    +
    +
    + + + +

    + Programmers Beware - UX is Not Just for Designers +

    +
    Perhaps one of the biggest missed opportunities in Tech in recent history is UX. +Somehow, UX became the domain of Product Designers and User Interface Designers. +While they definitely are the right people to be thinking about web pages, mobile app screens and so on, we've missed a huge part of what we engineers work on every day: SDKs and APIs.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    +
    +
    + + + +

    + Grab You Some Post-Mortem Reports +

    +
    Grab adopts a Service-Oriented Architecture (SOA) to rapidly develop and deploy new feature services. One of the drawbacks of such a design is that team members find it hard to help with debugging production issues that inevitably arise in services belonging to other stakeholders. +
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • diff --git a/blog/3/index.html b/blog/3/index.html index 95ed6a61..c3002558 100644 --- a/blog/3/index.html +++ b/blog/3/index.html @@ -148,6 +148,164 @@ +
  • +
    + +
    + + Managing dynamic marketplace content at scale: Grab's approach to content moderation cover photo + +
    + +
    +
    +
    + + + +

    + Managing dynamic marketplace content at scale: Grab's approach to content moderation +

    +
    Understand how Grab employs a combination of automated and manual content moderation to manage its dynamic marketplace content efficiently, while also collaborating with Google to ensure marketplace safety.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + Rethinking Stream Processing: Data Exploration cover photo + +
    + +
    +
    +
    + + + +

    + Rethinking Stream Processing: Data Exploration +

    +
    As Grab matures along the digitalisation journey, it is collecting and streaming event data generated from the end users of its superapp on a larger magnitude than before. Coban, Grab’s data-streaming platform team, is looking to help unlock the value of streaming data at an earlier stage of the data journey before this data is typically stored in a central location (“Data Lake”). This allows Grab to serve its superapp users more efficiently.
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -695,152 +853,6 @@

  • -
  • -
    - -
    - - Scaling marketing for merchants with targeted and intelligent promos cover photo - -
    - -
    -
    -
    - - - - - · - - -

    - Scaling marketing for merchants with targeted and intelligent promos -

    -
    Apart from ensuring advertisements reach the right audience, it is also important to make promos by merchants more targeted and intelligent to help scale their marketing. With Grab’s innovative AI tool, merchants can boost sales while cutting costs. Dive into this game-changing tool that’s reshaping the future of marketing and find out how the Data Science team at Grab used automation and made promo assignments a more seamless and intelligent process.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - Stepping up marketing for advertisers: Scalable lookalike audience cover photo - -
    - -
    -
    -
    - - - - - · - - -

    - Stepping up marketing for advertisers: Scalable lookalike audience -

    -
    A key challenge in advertising is reaching the right audience who are most likely to use your product. Read this article to find out how the Data Science team improved advertising effectiveness by using lookalike audiences to identify individuals who share similar characteristics with an existing consumer base.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/4/index.html b/blog/4/index.html index 3ea6e917..94812227 100644 --- a/blog/4/index.html +++ b/blog/4/index.html @@ -148,6 +148,152 @@ +
  • +
    + +
    + + Scaling marketing for merchants with targeted and intelligent promos cover photo + +
    + +
    +
    +
    + + + + + · + + +

    + Scaling marketing for merchants with targeted and intelligent promos +

    +
    Apart from ensuring advertisements reach the right audience, it is also important to make promos by merchants more targeted and intelligent to help scale their marketing. With Grab’s innovative AI tool, merchants can boost sales while cutting costs. Dive into this game-changing tool that’s reshaping the future of marketing and find out how the Data Science team at Grab used automation and made promo assignments a more seamless and intelligent process.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + Stepping up marketing for advertisers: Scalable lookalike audience cover photo + +
    + +
    +
    +
    + + + + + · + + +

    + Stepping up marketing for advertisers: Scalable lookalike audience +

    +
    A key challenge in advertising is reaching the right audience who are most likely to use your product. Read this article to find out how the Data Science team improved advertising effectiveness by using lookalike audiences to identify individuals who share similar characteristics with an existing consumer base.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -607,171 +753,6 @@

  • -
  • -
    - -
    - - Performance bottlenecks of Go application on Kubernetes with non-integer (floating) CPU allocation cover photo - -
    - -
    -
    -
    - - - -

    - Performance bottlenecks of Go application on Kubernetes with non-integer (floating) CPU allocation -

    -
    At Grab, we have been running our Go based stream processing framework (SPF) on Kubernetes for several years. But as the number of SPF pipelines increases, we noticed some performance bottlenecks and other issues. Read to find out how this issue came about and how the Coban team resolved it with non-integer CPU allocation.
    -
    -
    - -
    -
    - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - How we improved our iOS CI infrastructure with observability tools cover photo - -
    - -
    -
    -
    - - - -

    - How we improved our iOS CI infrastructure with observability tools -

    -
    After upgrading to Xcode 13.1, we noticed a few issues such as instability of the CI tests and high CPU utilisation. Read to find out how the Test Automation - Mobile team investigated these issues and resolved them by integrating observability tools into our iOS CI development process.
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/5/index.html b/blog/5/index.html index 610cdb67..c155d947 100644 --- a/blog/5/index.html +++ b/blog/5/index.html @@ -148,6 +148,171 @@ +
  • +
    + +
    + + Performance bottlenecks of Go application on Kubernetes with non-integer (floating) CPU allocation cover photo + +
    + +
    +
    +
    + + + +

    + Performance bottlenecks of Go application on Kubernetes with non-integer (floating) CPU allocation +

    +
    At Grab, we have been running our Go based stream processing framework (SPF) on Kubernetes for several years. But as the number of SPF pipelines increases, we noticed some performance bottlenecks and other issues. Read to find out how this issue came about and how the Coban team resolved it with non-integer CPU allocation.
    +
    +
    + +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + How we improved our iOS CI infrastructure with observability tools cover photo + +
    + +
    +
    +
    + + + +

    + How we improved our iOS CI infrastructure with observability tools +

    +
    After upgrading to Xcode 13.1, we noticed a few issues such as instability of the CI tests and high CPU utilisation. Read to find out how the Test Automation - Mobile team investigated these issues and resolved them by integrating observability tools into our iOS CI development process.
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -634,146 +799,6 @@

  • -
  • -
    - -
    - - Securing GitOps pipelines cover photo - -
    - -
    -
    -
    - - - -

    - Securing GitOps pipelines -

    -
    This article illustrates how Grab’s real-time data platform team secured GitOps pipelines at scale with our in-house GitOps implementation.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    - -
    -
    -
  • - -
  • -
    - -
    - - New zoom freezing feature for Geohash plugin cover photo - -
    - -
    -
    -
    - - - - - · - - -

    - New zoom freezing feature for Geohash plugin -

    -
    Built by Grab, the Geohash Java OpenStreetMap Editor (JOSM) plugin is widely used in map-making, but a common pain point is the inability to zoom in to a specific region without displaying new geohashes. Read to find out more about the issue and how the latest update addresses it.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/6/index.html b/blog/6/index.html index 48bb236a..223f2368 100644 --- a/blog/6/index.html +++ b/blog/6/index.html @@ -148,6 +148,146 @@ +
  • +
    + +
    + + Securing GitOps pipelines cover photo + +
    + +
    +
    +
    + + + +

    + Securing GitOps pipelines +

    +
    This article illustrates how Grab’s real-time data platform team secured GitOps pipelines at scale with our in-house GitOps implementation.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    + +
    +
    +
  • + +
  • +
    + +
    + + New zoom freezing feature for Geohash plugin cover photo + +
    + +
    +
    +
    + + + + + · + + +

    + New zoom freezing feature for Geohash plugin +

    +
    Built by Grab, the Geohash Java OpenStreetMap Editor (JOSM) plugin is widely used in map-making, but a common pain point is the inability to zoom in to a specific region without displaying new geohashes. Read to find out more about the issue and how the latest update addresses it.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -832,198 +972,6 @@

  • -
  • -
    - -
    - - Automatic rule backtesting with large quantities of data cover photo - -
    - -
    -
    -
    - - - - - · - - -

    - Automatic rule backtesting with large quantities of data -

    -
    At Grab, real-time fraud detection is built on a rule engine. As data scientists and analysts, we need to analyse and simulate a rule on historical data to check the performance and accuracy of the rule. Backtesting, also known as Replay, enables analysts to run simulations of either newly-invented rules, or evaluate the performance of existing rules using past events ranging from days to months, and significantly improve rule creation efficiency.
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - How we store and process millions of orders daily cover photo - -
    - -
    -
    -
    - - - - - · - - -

    - How we store and process millions of orders daily -

    -
    The Grab Order Platform is a distributed system that processes millions of GrabFood or GrabMart orders every day. Learn about how the Grab order platform stores food order data to serve transactional (OLTP) and analytical (OLAP) queries.
    -
    -
    - -
    -
    - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/7/index.html b/blog/7/index.html index 921ff9fa..8cd3d07e 100644 --- a/blog/7/index.html +++ b/blog/7/index.html @@ -148,6 +148,198 @@ +
  • +
    + +
    + + Automatic rule backtesting with large quantities of data cover photo + +
    + +
    +
    +
    + + + + + · + + +

    + Automatic rule backtesting with large quantities of data +

    +
    At Grab, real-time fraud detection is built on a rule engine. As data scientists and analysts, we need to analyse and simulate a rule on historical data to check the performance and accuracy of the rule. Backtesting, also known as Replay, enables analysts to run simulations of either newly-invented rules, or evaluate the performance of existing rules using past events ranging from days to months, and significantly improve rule creation efficiency.
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • + +
  • +
    + +
    + + How we store and process millions of orders daily cover photo + +
    + +
    +
    +
    + + + + + · + + +

    + How we store and process millions of orders daily +

    +
    The Grab Order Platform is a distributed system that processes millions of GrabFood or GrabMart orders every day. Learn about how the Grab order platform stores food order data to serve transactional (OLTP) and analytical (OLAP) queries.
    +
    +
    + +
    +
    + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -712,142 +904,6 @@

  • -
  • -
    - -
    - - Embracing a Docs-as-Code approach cover photo - -
    - -
    -
    -
    - - - -

    - Embracing a Docs-as-Code approach -

    -
    Read to find out how Grab is using the Docs-as-Code approach to improve technical documentation.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    - -
    -
    -
  • - -
  • -
    - -
    - - Graph Networks - Striking fraud syndicates in the dark cover photo - -
    - -
    -
    -
    - - - - - · - - -

    - Graph Networks - Striking fraud syndicates in the dark -

    -
    As fraudulent entities evolve and get smarter, Grab needs to continuously enhance our defences to protect our consumers. Read to find out how Graph Networks help the Integrity team advance fraud detection at Grab.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/8/index.html b/blog/8/index.html index 39a6414c..bf168ebb 100644 --- a/blog/8/index.html +++ b/blog/8/index.html @@ -148,6 +148,142 @@ +
  • +
    + +
    + + Embracing a Docs-as-Code approach cover photo + +
    + +
    +
    +
    + + + +

    + Embracing a Docs-as-Code approach +

    +
    Read to find out how Grab is using the Docs-as-Code approach to improve technical documentation.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    + +
    +
    +
  • + +
  • +
    + +
    + + Graph Networks - Striking fraud syndicates in the dark cover photo + +
    + +
    +
    +
    + + + + + · + + +

    + Graph Networks - Striking fraud syndicates in the dark +

    +
    As fraudulent entities evolve and get smarter, Grab needs to continuously enhance our defences to protect our consumers. Read to find out how Graph Networks help the Integrity team advance fraud detection at Grab.
    +
    +
    + +
    +
    + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
  • +
  • @@ -647,212 +783,6 @@

  • -
  • -
    - -
    - - Exposing a Kafka Cluster via a VPC Endpoint Service cover photo - -
    - -
    -
    -
    - - - -

    - Exposing a Kafka Cluster via a VPC Endpoint Service -

    -
    Establishing communications between cloud resources that are hosted on different Virtual Private Clouds (VPC) can be complex and costly. Find out how the Coban team used a VPC Endpoint Service to expose an Apache Kafka cluster across multiple Availability Zones to a different VPC.
    -
    -
    - -
    -
    - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - -
  • -
    - -
    - - How Grab built a scalable, high-performance ad server cover photo - -
    - -
    -
    -
    - - - -

    - How Grab built a scalable, high-performance ad server -

    -
    Like many businesses, Grab leverages ads to create awareness and increase engagement with our consumers. Read to find out how the GrabAds team built an ad server that could scale according to our growing consumer base.
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - - - -
    -
    -
    -
  • - diff --git a/blog/9/index.html b/blog/9/index.html index 1eece4c4..26653748 100644 --- a/blog/9/index.html +++ b/blog/9/index.html @@ -152,8 +152,8 @@
    @@ -162,11 +162,11 @@
    - +

    - Biometric authentication - Why do we need it? + Exposing a Kafka Cluster via a VPC Endpoint Service

    -
    As cyberattacks get more advanced, authentication methods like one-time passwords (OTPs) and personal identification numbers (PINs) are no longer enough to protect your users. Find out how biometric authentication can help enhance security.
    +
    Establishing communications between cloud resources that are hosted on different Virtual Private Clouds (VPC) can be complex and costly. Find out how the Coban team used a VPC Endpoint Service to expose an Apache Kafka cluster across multiple Availability Zones to a different VPC.
    @@ -176,12 +176,7 @@

    - - - - - - + @@ -211,9 +198,11 @@

    @@ -227,8 +216,8 @@

    @@ -237,11 +226,11 @@

    - +

    - Using real-world patterns to improve matching in theory and practice + How Grab built a scalable, high-performance ad server

    -
    Find out how real-world patterns can be used to improve algorithm performance when performing bipartite matching for passengers and driver-partners.
    +
    Like many businesses, Grab leverages ads to create awareness and increase engagement with our consumers. Read to find out how the GrabAds team built an ad server that could scale according to our growing consumer base.

    @@ -251,12 +240,37 @@

    - + - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -286,9 +340,11 @@

    @@ -302,8 +358,8 @@

    @@ -312,11 +368,11 @@

    - +

    - Designing products and services based on Jobs to be Done + Biometric authentication - Why do we need it?

    -
    In this post, we explain how the Jobs to be Done (JTBD) framework helps uncover the JTBD for consumers, as well as how we uncovered the core needs of GrabFood consumers and aligned the product with these needs.
    +
    As cyberattacks get more advanced, authentication methods like one-time passwords (OTPs) and personal identification numbers (PINs) are no longer enough to protect your users. Find out how biometric authentication can help enhance security.

    @@ -326,17 +382,12 @@

    - - - - - - + - + @@ -374,13 +417,9 @@

    @@ -394,8 +433,8 @@

    @@ -404,11 +443,11 @@

    - +

    - Search indexing optimisation + Using real-world patterns to improve matching in theory and practice

    -
    Learn about the different optimisation techniques when building a search index.
    +
    Find out how real-world patterns can be used to improve algorithm performance when performing bipartite matching for passengers and driver-partners.

    @@ -418,12 +457,12 @@

    - + - + @@ -453,13 +492,9 @@

    @@ -473,8 +508,8 @@

    @@ -483,11 +518,11 @@

    - +

    - Automating Multi-Armed Bandit testing during feature rollout + Designing products and services based on Jobs to be Done

    -
    Find out how you can run an automated test and simultaneously roll out a new feature.
    +
    In this post, we explain how the Jobs to be Done (JTBD) framework helps uncover the JTBD for consumers, as well as how we uncovered the core needs of GrabFood consumers and aligned the product with these needs.

    @@ -497,22 +532,17 @@

    - - - - - - + - + - + @@ -558,11 +580,13 @@

    @@ -576,8 +600,8 @@

    @@ -586,11 +610,11 @@

    - +

    - How We Cut GrabFood.com’s Page JavaScript Asset Sizes by 3x + Search indexing optimisation

    -
    Find out how the GrabFood team cut their bundle size by 3 times with these 7 webpack bundle optimisation strategies.
    +
    Learn about the different optimisation techniques when building a search index.

    @@ -600,7 +624,12 @@

    - + + + + + + @@ -622,13 +659,13 @@

    @@ -642,8 +679,8 @@

    @@ -654,9 +691,9 @@

    - Protecting Personal Data in Grab's Imagery + Automating Multi-Armed Bandit testing during feature rollout

    -
    Learn how Grab improves privacy protection to cater to various geographical locations.
    +
    Find out how you can run an automated test and simultaneously roll out a new feature.
    @@ -666,22 +703,22 @@

    - + - + - + - + @@ -727,15 +764,11 @@

    @@ -749,8 +782,8 @@

    @@ -759,11 +792,11 @@

    - +

    - Processing ETL tasks with Ratchet + How We Cut GrabFood.com’s Page JavaScript Asset Sizes by 3x

    -
    Read about what Data and ETL pipelines are and how they are used for processing multiple tasks in the Lending Team at Grab.
    +
    Find out how the GrabFood team cut their bundle size by 3 times with these 7 webpack bundle optimisation strategies.

    @@ -773,7 +806,7 @@

    - + @@ -795,13 +828,13 @@

    diff --git a/categories/data-science/index.html b/categories/data-science/index.html index 2709b945..08ab3e78 100644 --- a/categories/data-science/index.html +++ b/categories/data-science/index.html @@ -146,6 +146,134 @@

    Data Science