TalksAWS re:Invent 2025 - Accelerating the Connected Future: EDA for the unpredictable (IND308)
AWS re:Invent 2025 - Accelerating the Connected Future: EDA for the unpredictable (IND308)
Accelerating the Connected Future: BMW's Event-Driven Architecture for Unpredictable Workloads
Overview
BMW is transforming its vehicle fleet into intelligent, connected companions with its BMW Connected Drive platform
The remote services feature of Connected Drive allows customers to remotely control their vehicles from anywhere
BMW's remote services back-end was facing challenges with scalability, reliability, time-to-market, and cost as the connected vehicle fleet and data demands grew
Legacy Architecture and Challenges
In 2023, the remote services back-end was running on a monolithic architecture in AWS, using Amazon Kubernetes Service and Amazon RDS
While the system was functional, it faced issues with:
Increasing technical debt and complexity over time
Difficulty scaling to handle tripling request volumes in 2 years
Slow time-to-market for new features and vehicle models
Concerns about maintaining reliability and low latency under high load
Lack of cost optimization for the growing AWS infrastructure
Redesigning Remote Services with Serverless
BMW partnered with AWS to reimagine the remote services architecture using a serverless, event-driven approach
Key goals were to increase time-to-market, reduce maintenance effort, improve scalability and reliability, and optimize costs
The new architecture broke down the monolith into independent microservices:
Event Creation: Receives requests from the My BMW app and validates/enriches them
Outgoing Vehicle Communication: Translates events into MQTT messages for the vehicle
Incoming Vehicle Communication: Processes asynchronous responses from the vehicle
Event Processing: Handles event distribution, persistence, and lifecycle management
Technical Details
Used AWS Step Functions, Lambda, SNS, SQS, and DynamoDB to implement the event-driven architecture
Leveraged AWS Fargate for the vehicle communication services to maintain bidirectional MQTT connectivity
Implemented custom metrics using the Embedded Metric Format to track end-to-end latency
Utilized subscription filters on SNS topics to avoid unnecessary processing in downstream components
Employed a delayed queue mechanism to handle potential connectivity issues and ensure event completion
Optimizations and Iterations
MQTT Broker Integration: Moved from a direct Fargate connection to the MQTT broker to an abstracted API-based integration, reducing maintenance overhead.
Vehicle Simulator: Replaced the Fargate-based vehicle simulator with a serverless, configuration-driven solution, enabling extensive testing and validation.
Blue-Green Deployments: Implemented an Application Load Balancer-based approach to enable safe, canary-style deployments without disrupting customer traffic.
Developer Decoupling: Provided each developer with their own set of duplicated components, allowing for independent testing and deployment without conflicts.
Business Impact and Results
Increased time-to-market for new features and vehicle models by 60%
Significantly reduced maintenance effort and costs by leveraging fully managed AWS services
Achieved almost limitless scalability to handle the growing connected vehicle fleet and data demands
Maintained low latency (P99 < 1 second, P50 < 400ms) even under sustained high load (100 requests/second for 3 hours)
Reduced overall AWS infrastructure costs by 20% through optimized serverless architecture
Conclusion
BMW's transition to a serverless, event-driven architecture for its remote services back-end has enabled the company to address key challenges and unlock significant benefits:
Improved time-to-market and development velocity
Reduced maintenance overhead and costs
Enhanced scalability, reliability, and performance
Optimized AWS infrastructure costs
The iterative approach and focus on developer experience further strengthened the solution, making it adaptable to future requirements and vehicle generations.
These cookies are used to collect information about how you interact with this website and allow us to remember you. We use this information to improve and customize your browsing experience, as well as for analytics.
If you decline, your information won’t be tracked when you visit this website. A single cookie will be used in your browser to remember your preference.