About
OnCall Balance is a privacy-first wellbeing companion for on-call engineers. It combines Apple Watch health signals like sleep duration and sleep fragmentation with Rootly API work data like incidents, on-call shifts, and after-hours pages to detect burnout risk early and surface helpful, human-centered interventions. Everything is designed around one core principle: the engineer stays in control. Data is processed locally, no health data is shared with employers, and the AI supports the user without making decisions for them.
Inspiration
We knew many teams would build chatbots, so we wanted to think differently and build something that worked with Rootly API instead of just adding another interface.
Rootly API shows operational data like incidents and on-call schedules, but it does not show how the engineer is actually doing. Someone can have a normal week on paper and still be exhausted and close to burnout. We started asking how we could validate burnout risk in a more human way.
That led us to combining Rootly workload data with Apple Watch health data like sleep and recovery. That idea became OnCall Balance, a private, on-device system that detects burnout risk earlier while keeping engineers in control of their data.
What it does
OnCall Balance helps engineers understand when burnout may be building by correlating two types of signals:
Health signals from Apple Watch / HealthKit, such as sleep duration and sleep fragmentation Workload signals from Rootly API, such as on-call shifts, incident severity, and after-hours pages
These signals are processed through a deterministic risk model called StressCorrelator, which calculates a burnout-risk level using weighted thresholds. Claude then turns that result into a short, contextual recommendation for the engineer. The product also provides four core experiences: a dashboard, trends view, evidence-based resources, and peer support options. In higher-risk cases, it surfaces real human support resources rather than leaving the user with only automated advice.
How we built it
We started by grounding the project in research and product thinking on Figma before writing code on flutter. We mapped the SRE stress journey in FigJam, validated the concept around post-incident recovery debt, and prototyped the product flow and interface in Figma. From there, we built the app in Flutter for an iOS demo experience. We used HealthKit for on-device health data access, Rootly API for work-context signals, and Claude Sonnet to generate recommendation text. The key architectural decision was separating the AI from the risk engine: our deterministic StressCorrelator computes the actual risk score, while Claude only translates that into a natural-language recommendation. This makes the system more explainable, testable, and safe. We also built a mock fallback so the demo remains reliable even if external services are unavailable.
Figjam Link: https://www.figma.com/board/fuUgF6dy0v6COu1rrZLYaw/OnCall-Balance---CBC-AI-Hackathon?node-id=0-1&t=k29RgKHcEs9s6bHf-1
Challenges we ran into
One of the biggest challenges we ran into was accessing real Apple Watch health data during the hackathon. To fetch live HealthKit data from Apple Watch, Apple requires a paid Apple Developer account and specific permissions for health data access, which created a barrier for testing on real devices within the hackathon timeframe.
To work around this, we designed the system with a mock data fallback layer, allowing us to simulate realistic sleep and health data so we could still build and demonstrate the full risk model, notification system, and AI recommendation flow. This ended up shaping our architecture in a positive way, the app can now run reliably even if external services fail, and the core logic can be tested independently of live health data.
Another challenge was designing in a mental health context. We had to be very careful not to overclaim, automate sensitive decisions, or create a system that felt like surveillance. This forced us to think deeply about privacy, consent, explainability, and ethical risks such as over-reliance on AI.
Accomplishments that we're proud of
We’re proud that OnCall Balance is not just an AI wrapper, it has a clear product thesis, a defined user, and a thoughtful technical architecture. We’re especially proud of three things:
Privacy-first design: no employer access to personal health data, with local-first processing as a core principle Explainable risk scoring: the AI does not decide the risk; the deterministic model does Human-centered ethics: we explicitly designed around risks like over-reliance, stigma, and misinterpretation, and we surface real support resources in higher-risk situations
We’re also proud that we turned a very human problem into something concrete enough to prototype, explain, and demo clearly in a short time.
What we learned
We learned that building responsibly in health-adjacent spaces requires much more than just technical execution. It forces you to think deeply about trust, consent, explainability, and what happens when users are vulnerable. We also learned that separating deterministic logic from generative AI makes a big difference in how credible and defensible a product feels. On the product side, we learned how important it is to define a narrow user and a precise pain point, in our case, on-call engineers dealing with invisible recovery debt after incidents.
What's next for OnCall Balance
Our next step is real device testing with HealthKit and deeper validation of the experience in real-world conditions. From there, we want to expand integrations to platforms like GitHub, Jira, and PagerDuty so we can model workload more accurately over time. Longer term, we see potential for richer trend analysis, better personalization, and carefully designed opt-in organizational insights that preserve individual privacy while helping companies better support engineer wellbeing. The long-term vision is to make burnout prevention more proactive, private, and practical for the people keeping critical systems running.
Presentation Slides: https://docs.google.com/presentation/d/1NmBK_Z_TFOhLzTFyz_JAP95VK6nHXDer/edit?usp=sharing&ouid=112704869684456060152&rtpof=true&sd=true
Built With
- api
- claude
- dart
- figma
- flutter
- healthkit
- rootly
Log in or sign up for Devpost to join the conversation.