DEV Community

Cover image for Kiroween Hackathon Submitted!
Steve Harlow
Steve Harlow

Posted on

Kiroween Hackathon Submitted!

Just making a quick post about my latest hackathon entry.

This repo is a remaking of a legacy scrum planning webapp that I used Kiro to migrate the connection infrastructure from Web RTC, which was unreliable to AWS serverless tech. https://github.com/sgharlow/scrum-web-reborn

The Transformation Story
From 50% to 99.5% Connectivity: A 99x Improvement

The original Scrum Facilitator app relied on peer-to-peer (P2P) WebRTC connections, where users connected directly to each other through their browsers. While this approach worked in ideal conditions, it failed catastrophically in real-world scenarios—achieving only a 50% connection success rate. The core problem was NAT traversal: corporate firewalls blocked UDP traffic, symmetric NAT prevented direct connections, mobile carrier-grade NAT made connections impossible, and free TURN relay servers were unreliable and rate-limited. When connections did work, they were fragile—if the facilitator's browser closed or their network hiccupped, the entire session's data was lost since there was no server to persist state. Scrum Reborn solves this by replacing the entire P2P architecture with AWS AppSync (managed GraphQL with WebSocket subscriptions) and DynamoDB. Now, all communication flows through HTTPS (port 443), which works everywhere—no NAT traversal needed, no firewall issues, no TURN servers. AppSync provides guaranteed message delivery with automatic reconnection, while DynamoDB serves as the single source of truth with ACID transactions. The result: 99.5%+ connectivity, sub-250ms latency, and zero data loss. This represents a 99x improvement in reliability (99.5% ÷ 50% = 1.99), transforming an unreliable prototype into a production-ready collaboration platform that distributed teams can actually depend on.

Features
Planning Poker: Real-time story estimation with Fibonacci voting
Retrospectives: Collaborative retro boards with voting
Presence Tracking: Always know who's in the room
99.5%+ Connectivity: No more NAT traversal issues
Sub-250ms Latency: Updates feel instant
Serverless Architecture: Scales automatically with AWS
Architecture
Frontend: React 19 + TypeScript + Vite
Backend: AWS AppSync (GraphQL) + Lambda + DynamoDB
Auth: AWS Cognito User Pools
Infrastructure: AWS CDK (TypeScript)
Real-time: GraphQL Subscriptions over WebSocket

Top comments (0)