Case Study

Carrier HVAC — Building a Serverless IoT SaaS Platform for Millions of Connected Devices

Carrier HVAC

Carrier HVAC

Role

AWS Solutions Architect & Serverless Application Developer

Period

June 2021 – November 2023

Duration

29 months

Reporting Line

Dual reporting — VP (Technology) and VP (Business)

Industry

Connected HVAC / Smart Buildings

The Situation

Carrier HVAC was investing in a global IoT SaaS platform as a strategic connected-buildings play — sensors and controllers across large facilities monitoring air temperature and air quality at scale.

The customers weren't small: stadiums (Atlanta Braves), enterprise data centers (AWS), and other large-facility operators with sensors per floor and section, generating millions of data points daily that the platform needed to ingest, process, and surface back to operators.

They needed a serverless, event-driven AWS platform built in TypeScript — infrastructure-as-code, APIs, persistence, identity, and cost controls — that could scale from day one without traditional server management overhead.

Why Bring Me In

Carrier needed a senior engineer who would personally design and build the serverless platform — IoT Core ingestion, TypeScript Lambdas, CDK constructs, GraphQL APIs, and polyglot data stores — while guiding frontend and backend teams through the patterns. Not an advisory engagement. A build.

What I Built

  • Architected the IoT data plane. End-to-end ingestion and processing with AWS IoT Core, Kinesis Data Streams, Lambda, and EventBridge — real-time vs. batch trade-offs, device authentication, message validation, and error handling at airline-facility scale.

  • Built the serverless application layer in TypeScript. Lambda microservices, Step Functions orchestration, API Gateway, and a GraphQL API layer that cut client API calls by 60% through efficient query design and batch processing.

  • Designed polyglot persistence for each workload. DynamoDB for high-velocity device state, Timestream for time-series telemetry, Neptune for device relationship graphs, MongoDB for flexible documents — with indexing and access patterns tuned per store.

  • Established Infrastructure as Code with AWS CDK. TypeScript CDK constructs for repeatable, versioned, testable infrastructure — reusable patterns adopted across multiple services.

  • Built B2B identity and security. Okta SSO with JWT validation, API security patterns, least-privilege IAM, and encryption at rest and in transit for the multi-tenant platform.

  • Owned cost engineering and observability. S3 lifecycle policies, DynamoDB capacity strategy, Lambda memory tuning, and CloudWatch log retention delivered 40% infrastructure cost reduction. CloudWatch, Grafana, and CloudTrail dashboards with SLIs/SLOs for operational visibility.

  • Laid the foundation for future ML. Kinesis → Lambda → S3 ingestion pipelines established the data layer for predictive analytics on building telemetry.

Business Outcomes

  • 99.9% uptime on a global IoT SaaS platform serving 50,000+ B2B users

  • 40% infrastructure cost reduction while supporting millions of daily device events

  • 50% reduction in time-to-market through serverless architecture and IaC automation

  • Enabled a new IoT SaaS revenue stream for Carrier's connected-HVAC strategy

What I Left Behind

  • A production IoT SaaS platform serving 50,000+ B2B users at 99.9% uptime

  • Documented serverless architecture patterns and reusable CDK constructs

  • GraphQL API layer and polyglot persistence strategy the team could extend

  • A data foundation ready for future ML and predictive analytics

Tools & Methods

TypeScriptReactNode.jsAWS LambdaIoT CoreKinesisAPI GatewayCDKStep FunctionsDynamoDBTimestreamNeptuneMongoDBGraphQLOkta SSOCloudWatchGrafana

Need a serverless IoT or event-driven SaaS platform built in TypeScript on AWS?

30-minute intro call. No pitch — a real technical conversation about your stack, timeline, and whether I'm the right fit.