berk.ai
← Work

Bird · 2018 – 2025

My story at Bird

Eight years helping Bird grow from a Santa Monica WeWork startup into a global mobility platform — Habitat, developer platforms, micro-frontends, and systems across the stack.

Role: Senior Staff Software Engineer

  • Platform engineering
  • Distributed systems
  • Global operations

Origin

The story

I joined Bird in early 2018 when the company was still operating out of a small WeWork office in Santa Monica, just after the first scooters appeared on the streets. Over the next eight years I had the opportunity to help grow the company from a small startup into a global mobility platform operating in hundreds of cities.

During Bird’s period of hypergrowth, I played an active role in scaling the engineering organization by interviewing, hiring, onboarding, and mentoring engineers across multiple teams. As the company’s needs evolved, I moved fluidly between individual contributor and engineering management roles, choosing the position where I could have the greatest impact rather than following a traditional management track.

Throughout my time at Bird, I contributed across nearly every layer of the technology stack. I worked on both Product and Systems Engineering, backend services powering the mobile applications, integrations with external partners, internal operational platforms used by support and business teams, developer tooling, security infrastructure, and engineering productivity initiatives. I was often brought into projects that crossed organizational boundaries because of my broad understanding of the platform and ability to connect technical decisions with business needs.

One of the contributions I’m most proud of was leading the design and implementation of Habitat, Bird’s proprietary geospatial configuration platform. I conceived the system shortly after joining the company and led its architecture and development from an idea into one of the foundational platforms that powers Bird’s business today. Habitat became the central control plane for every market in which Bird operates, both domestic and international, allowing business teams to configure market behavior without engineering deployments.

Beyond traditional configuration management, Habitat evolved into Bird’s experimentation platform. It enabled teams to safely launch new markets, roll out products, perform A/B experiments, configure pricing, define riding and parking zones, enforce speed limits, and customize mobile application behavior on a market-by-market basis. The platform significantly accelerated product development by allowing operational and product teams to iterate independently while maintaining a single, consistent system of record.

Context

The problem and my role

Problem

Hypergrowth required platforms that let hundreds of markets launch and iterate without waiting on engineering deployments — while the org, stack, and product surface kept expanding.

Role

Moved fluidly between IC and engineering management, hiring and mentoring across teams, and contributing across product, systems, backend, partner integrations, ops platforms, security, and developer productivity.

Constraints

  • Global expansion across 300+ cities with local policy and product differences
  • Business teams needing to configure markets without engineering releases
  • Monolith-era systems under hypergrowth pressure
  • Cross-org work that required connecting technical decisions to business needs

System

Architecture

System map

Habitat as the global market control plane

Business and product teams configure market behavior once, then a shared platform distributes those decisions to services and applications across Bird’s markets.

  1. 01

    Market and product teams

    Define launches, pricing, zones, speed limits, experiments, and app behavior

  2. 02

    Habitat control plane

    Maintains a consistent, geospatial system of record

  3. 03

    Configuration and experiments

    Versions regional policy and controlled product rollouts

  4. 04

    Product services and apps

    Consume shared market configuration without bespoke deployments

  5. 05

    Global markets

    Apply localized behavior across 300+ cities

Execution

What I built

  • Architected Bird’s global geospatial configuration platform (Habitat) powering operations across 300+ cities, enabling business teams to launch new markets, configure regional policies, manage pricing, and safely roll out product features without engineering deployments.
  • Built the company’s internal developer platform providing unified visibility into microservices, deployments, dependency graphs, APIs, libraries, and database schemas, improving developer productivity and operational efficiency.
  • Established Bird’s React micro-frontend architecture, enabling independent teams to build and deploy applications autonomously while sharing common infrastructure, authentication, and design systems.
  • Led the modernization of Bird’s backend architecture by decomposing a large monolithic application into independently deployable Kubernetes-based microservices running on AWS.
  • Designed centralized authorization infrastructure integrating Okta, JWT, RBAC, and custom Dropwizard extensions, allowing security teams to manage fine-grained permissions across internal platforms.
  • Developed operational platforms used daily to manage fleets, vehicles, partners, riders, markets, and payment operations across Bird’s global business.
  • Built a global legal content management platform enabling attorneys to author, version, translate, and publish localized user agreements across hundreds of international markets without engineering support.

Tradeoffs

Technical decisions

A control plane instead of market-specific releases

Decision
Model regional product and policy differences as versioned geospatial configuration in Habitat.
Why
Business teams needed to launch and adapt markets without waiting for an engineering deployment for every local change.
Tradeoff
A flexible control plane becomes critical infrastructure and requires strong validation, auditability, and a carefully governed schema.

Team autonomy through shared foundations

Decision
Adopt React micro-frontends with common authentication, infrastructure, and design systems.
Why
Independent teams could ship their own operational surfaces while users still experienced one coherent platform.
Tradeoff
Deployment autonomy shifts complexity into contracts, dependency management, and shared platform standards.

Decompose around operational boundaries

Decision
Move monolithic backend responsibilities toward independently deployable Kubernetes services on AWS.
Why
Hypergrowth increased the need for independent scaling, ownership, and release cycles across a widening product surface.
Tradeoff
Distributed systems improve autonomy but introduce network, observability, and operational complexity.

Value

Product impact

User impact

Gave operational and product teams direct, governed control over launches, policy, pricing, experiments, and localized app behavior.

Business impact

Reduced dependence on engineering releases for market changes while creating shared developer, authorization, and service foundations for a growing organization.

Results

Outcomes

  • Habitat became a foundational control plane and experimentation platform for Bird’s global markets.
  • Developer platform and micro-frontend foundations improved autonomy and visibility across engineering teams.
  • Monolith-to-microservices migration and centralized auth raised the ceiling for scale and security.

Notes

Notes from the system

Habitat

More than configuration: Habitat became Bird’s market control plane and experimentation system — launches, pricing, zones, speed limits, A/B tests, and app behavior — so ops and product could move without waiting on deploys.

Reflection

Lessons learned

  • The highest-leverage platform work gives other teams safe autonomy rather than centralizing every decision with engineers.
  • Architecture must evolve with the organization: shared contracts, visibility, and ownership become as important as service boundaries.

Tools

Stack

ReactTypeScriptKotlinJavaDropwizardPostgreSQLPostGISKafkaAWSKubernetesOktaJWTRBAC