Otter is an open-source, cloud native framework that enables peer-to-peer video communication within web applications by leveraging WebRTC, AWS and CoTURN technologies. https://otter-framework.dev
• Engineered an auto-scaling serverless infrastructure on AWS to enable WebRTC functionality within web applications (HTTP/WebSocket API Gateways, Lambda functions, ECS with Fargate, and DynamoDB)
• Built a developer friendly CLI npm package otter-video-cli to automate the provisioning and teardown of AWS cloud infrastructure (AWS CLI, oclif)
• Developed a React frontend application for private 1-on-1 meetings hosted by Otter (CloudFront with S3 Bucket) with low latency audio/video communication, instant messaging, and file sharing
• Containerized and deployed CoTURN in an ECS cluster with Fargate to support Otter's peer-to-peer connectivity
• Achieved 100% private and secure communication without a central server (WebRTC, CoTURN)
• Secured access to HTTP and WebSocket API Gateways by using an API key and JSON Web Tokens
• Optimized Otter for low latency by reducing the number of reads to DynamoDB from over 20 to 2
• Decoupled services based on traffic patterns and resolved race and concurrency challenges associated with event driven architecture (Lambdas, API Gateway)
• Designed an API for developers to self service integrating the Otter ecosystem into web apps with a single API call
• Authored a 9000 word technical case study discussing design decisions and engineering challenges