# rideshare

Published articles for rideshare.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Building async Python applications with Tortoise ORM and Amazon Aurora DSQL

DevFeed: [Building async Python applications with Tortoise ORM and Amazon Aurora DSQL](<https://devfeed.tech/articles/building-async-python-applications-with-tortoise-orm-and-amazon-aurora-dsql-4695.md>)

Original publisher: [Read original article](<https://aws.amazon.com/blogs/database/building-async-python-applications-with-tortoise-orm-and-amazon-aurora-dsql/>)

Author: Lasita Bhattacharya

Published: 2026-09-09T15:27:43Z

Content type: tutorial

Language: en

Sources: [AWS Database Blog](<https://devfeed.tech/sources/aws-database-blog.md>)

Topics: [DSQL](<https://devfeed.tech/topics/dsql.md>), [Concurrency](<https://devfeed.tech/topics/concurrency.md>), [AWS IAM](<https://devfeed.tech/topics/aws-iam.md>), [Database](<https://devfeed.tech/topics/database.md>), [CRUD](<https://devfeed.tech/topics/crud.md>)

Tags: [advanced-300](<https://devfeed.tech/tags/advanced-300.md>), [amazon-aurora](<https://devfeed.tech/tags/amazon-aurora.md>), [concurrency](<https://devfeed.tech/tags/concurrency.md>), [database](<https://devfeed.tech/tags/database.md>), [dsql](<https://devfeed.tech/tags/dsql.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [iam](<https://devfeed.tech/tags/iam.md>), [orm](<https://devfeed.tech/tags/orm.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [python](<https://devfeed.tech/tags/python.md>), [rideshare](<https://devfeed.tech/tags/rideshare.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [technical-how-to](<https://devfeed.tech/tags/technical-how-to.md>)

### AI overview

A tutorial for building a high-concurrency asynchronous Python rideshare application with Tortoise ORM and Amazon Aurora DSQL. It covers UUID-based models, IAM-authenticated asyncpg connections, OCC retry handling, and asynchronous CRUD operations.

### Source excerpt

Build a high-concurrency async Python rideshare application with Tortoise ORM and Amazon Aurora DSQL. This post walks through the key adaptations: UUID primary keys, IAM-authenticated asyncpg connections with a connection-pool patch, individual DDL execution, and optimistic concurrency control (OCC) retry logic.

## Control trace volume with OpenTelemetry tail-based sampling

DevFeed: [Control trace volume with OpenTelemetry tail-based sampling](<https://devfeed.tech/articles/control-trace-volume-with-opentelemetry-tail-based-sampling-2243.md>)

Original publisher: [Read original article](<https://www.datadoghq.com/blog/control-trace-volume-with-opentelemetry-tail-based-sampling/>)

Author: Bill Meyer; Eddie Cai

Published: 2026-08-21T00:00:00Z

Content type: tutorial

Language: en

Sources: [Datadog | The Monitor blog](<https://devfeed.tech/sources/datadog-the-monitor-blog.md>)

Topics: [OpenTelemetry](<https://devfeed.tech/topics/opentelemetry.md>), [Traces](<https://devfeed.tech/topics/traces.md>), [tracing](<https://devfeed.tech/topics/tracing.md>), [observability](<https://devfeed.tech/topics/observability.md>), [Application Performance Management (APM)](<https://devfeed.tech/topics/apm.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Latency](<https://devfeed.tech/topics/latency.md>)

Tags: [apm](<https://devfeed.tech/tags/apm.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [distributed-systems](<https://devfeed.tech/tags/distributed-systems.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [latency](<https://devfeed.tech/tags/latency.md>), [learn](<https://devfeed.tech/tags/learn.md>), [metrics](<https://devfeed.tech/tags/metrics.md>), [observability](<https://devfeed.tech/tags/observability.md>), [opentelemetry](<https://devfeed.tech/tags/opentelemetry.md>), [rideshare](<https://devfeed.tech/tags/rideshare.md>), [synthetic](<https://devfeed.tech/tags/synthetic.md>), [traces](<https://devfeed.tech/tags/traces.md>)

### AI overview

A guide to using OpenTelemetry tail-based sampling to reduce exported trace volume while retaining errors, slow requests, and other diagnostically valuable traces. It explains the difference between head- and tail-based sampling, the role of Span Metrics, and the collector architecture required to evaluate complete traces.

### Source excerpt

Learn how to configure tail-based sampling in the OpenTelemetry Collector to drop noisy traces, keep the ones that matter, and control APM costs.

## How We Built a Smarter Pickup Experience for Gated Communities

DevFeed: [How We Built a Smarter Pickup Experience for Gated Communities](<https://devfeed.tech/articles/how-we-built-a-smarter-pickup-experience-for-gated-communities-1238.md>)

Original publisher: [Read original article](<https://eng.lyft.com/how-we-built-a-smarter-pickup-experience-for-gated-communities-47416e9df029?source=rss----25cd379abb8---4>)

Author: winnieyan

Published: 2026-04-23T19:16:44Z

Content type: article

Language: en

Sources: [Lyft Engineering - Medium](<https://devfeed.tech/sources/lyft-engineering-medium.md>)

Topics: [App](<https://devfeed.tech/topics/app.md>), [data](<https://devfeed.tech/topics/data.md>), [Routing (disambiguation)](<https://devfeed.tech/topics/routing.md>)

Tags: [app](<https://devfeed.tech/tags/app.md>), [data](<https://devfeed.tech/tags/data.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [lyft](<https://devfeed.tech/tags/lyft.md>), [mapping](<https://devfeed.tech/tags/mapping.md>), [metrics](<https://devfeed.tech/tags/metrics.md>), [rideshare](<https://devfeed.tech/tags/rideshare.md>), [routing](<https://devfeed.tech/tags/routing.md>)

### AI overview

Lyft's Mapping team describes how it identified and addressed pickup problems at gated communities. The article highlights two root causes: inflexible pickup-spot recommendations and the lack of a way to share gate-access instructions before a ride. The proposed solution is an end-to-end app experience involving map data, pickup recommendations, routing, and rider and driver workflows.

### Source excerpt

If you live in a gated community, you've been there: You request a ride from your apartment complex, expect your driver to come to you as usual, and then -- your driver's car icon just stops right at the front gate. You watch helplessly as the ETA ticks up. A chat message comes in: "Hey, how do I get in?" You scramble to remember the gate code. They try it. It doesn't work. You end up meeting them awkwardly on the sidewalk outside while your coffee gets cold -- a pickup journey frustrating for both you and your driver. An example gated community in real life, Photo by Bingqian Li on Pexels It turns out you're not alone: Gated community pickups can make up 25-30% of Lyft rides in selected markets. For a long time, our app offered no special guidance in these situations. Riders would drop their pin inside the gates (fair enough -- that's where they are), while drivers would pull up to a locked entrance with no way in, leaving both parties to sort things out over chat. The result was predictable: more cancellations, longer waits, and a lot of unnecessary stress for our customers. The Lyft Mapping team decided it was time to fix this properly -- not with a band-aid, but a new end-to-end experience. Here's how we did it. What Was Actually Going Wrong? We looked through gated ride examples, zoomed into our metrics data, and found two root causes behind most of the friction. The first was an inflexible selection of pickup spots. Our app would suggest pickup spots near a rider's location -- which, for riders inside a gated community, often means inside the gate. But our data told a different story: many riders actually preferred meeting their driver right outside the gate, knowing their driver couldn't access the property. The app wasn't giving them that option clearly. The second was a communication black hole. Even riders who knew how to get their driver through the gate had no good way to pass along access instructions in advance. Instead, they'd wait until the driver was alr

## Trusting the Untestable: Validation and Diagnostics for the Doubly Robust Models

DevFeed: [Trusting the Untestable: Validation and Diagnostics for the Doubly Robust Models](<https://devfeed.tech/articles/trusting-the-untestable-validation-and-diagnostics-for-the-doubly-robust-models-1244.md>)

Original publisher: [Read original article](<https://eng.lyft.com/trusting-the-untestable-validation-and-diagnostics-for-the-doubly-robust-models-00853df009df?source=rss----25cd379abb8---4>)

Author: Shima Nassiri

Published: 2026-02-12T17:07:13Z

Content type: article

Language: en

Sources: [Lyft Engineering - Medium](<https://devfeed.tech/sources/lyft-engineering-medium.md>)

Topics: [Estimator](<https://devfeed.tech/topics/estimator.md>), [data](<https://devfeed.tech/topics/data.md>), [Monitoring](<https://devfeed.tech/topics/monitoring.md>)

Tags: [aipw](<https://devfeed.tech/tags/aipw.md>), [doubleml](<https://devfeed.tech/tags/doubleml.md>), [evaluation](<https://devfeed.tech/tags/evaluation.md>), [experiment](<https://devfeed.tech/tags/experiment.md>), [experimentation](<https://devfeed.tech/tags/experimentation.md>), [lyft](<https://devfeed.tech/tags/lyft.md>), [measurement](<https://devfeed.tech/tags/measurement.md>), [models](<https://devfeed.tech/tags/models.md>), [quasi-experiment](<https://devfeed.tech/tags/quasi-experiment.md>), [rideshare](<https://devfeed.tech/tags/rideshare.md>), [validation](<https://devfeed.tech/tags/validation.md>)

### AI overview

The article explains how Lyft uses quasi-experimental methods to measure causal effects when randomized A/B tests are impractical. It focuses on Augmented Inverse Propensity Weighting (AIPW), a doubly robust estimator that uses outcome and propensity-score models to estimate treatment effects from non-randomized data.

### Source excerpt

written by Ross Chu and Shima Nassiri The Causal Frontier: Measurement Beyond Randomization The gold standard for determining the causal impact of a policy or product change at a company like Lyft is the A/B test (randomized experiment). By randomly assigning users to a treatment or control group, A/B tests inherently eliminate bias, providing clean estimates of the Average Treatment Effect (ATE). However, many critical business questions and large-scale initiatives simply cannot be randomized. This forces scientists to move past traditional experimentation and leverage quasi-experimental methods. We rely on non-randomized measurement in several key scenarios across Lyft: Partnerships and Policies: Assessing the incremental impact of a partnership (e.g., linking two company accounts) is often a non-randomized assignment. Since these collaborations require coordinated operational work across both companies and are typically announced or promoted broadly, this makes controlled randomization impractical. Long-Term Effect (LTE): Measuring effects that unfold over a long period, like the LTE of high prices on future rides, is typically handled by observational studies. Post-Launch Evaluation: Continuous monitoring of a policy after it has been fully rolled out requires a method that doesn't involve costly holdout groups or degradation tests. Biased Data: In cases where pre-existing experimental data is found to have an imbalance, a quasi-experimental approach can potentially leverage the biased data instead of requiring a costly rerun. Introducing Doubly Robust Models: Causal Inference Without Randomness To address these non-randomized measurement needs, Lyft relies on various quasi-experiment estimators. In this blog we specifically focus on using the Augmented Inverse Propensity Weighting (AIPW) model. This model was first established at Lyft to measure the impact of a negative user experience on future topline metrics like rides and bookings; AIPW is a form of doubly