Mock Sports Draft Platform
Full-stack engineer building a mobile app for NFL and NBA mock draft competitions with real-time scoring and social features.
A digital product agency specializing in mobile and web application development for startups and enterprises
Project Overview
Built a mobile application enabling sports fans to participate in mock NFL and NBA drafts, competing against others to predict draft outcomes. The platform’s tagline “Own the Offseason” captures the experience of engaging with sports during the draft season through prediction contests.
The Product
Mockout allows users to create mock drafts predicting which players will be selected by which teams, then compete in contests to see whose predictions most closely match the actual draft results.
Core Features
- Mock Draft Creation: Build multi-round draft predictions selecting players for each team
- Contest Entry: Join competitions with other users to compare predictions
- Real-Time Scoring: Automatic scoring when actual draft results come in
- Mock10 Mode: Secondary game mode for quick prediction contests
- Social Features: Share contests via deep links, Facebook authentication
Technical Architecture
Mobile App (Ionic/Angular)
Cross-platform mobile application built with Ionic 2/3:
- Framework: Ionic with Angular 5 and TypeScript
- Platforms: iOS and Android via Cordova
- Authentication: Facebook SDK integration
- Deep Linking: Branch SDK for contest invitations
- Analytics: Mixpanel for user behavior tracking
- Deployment: FastLane for automated App Store and Play Store releases
Backend API (LoopBack/Node.js)
RESTful API built on LoopBack 3:
- Database: PostgreSQL for persistent storage
- Caching: Redis for high-traffic data (mocks, contests, user data)
- Job Queue: RabbitMQ for background task processing
- Logging: Coralogix with Winston for enterprise logging
- Email: SendGrid for notifications
- Deployment: Heroku with environment-specific configurations
Key Contributions
Mobile Application Development
Built the cross-platform Ionic/Angular mobile application over 4+ years:
- Developed complete mobile experience with 493 commits on the client
- Implemented Facebook SDK authentication for easy onboarding
- Integrated Branch SDK for contest invitation deep links
- Set up FastLane for automated App Store and Play Store releases
- Managed Ionic framework upgrades from version 2 to 3
Backend API & Scoring Engine
Developed the backend API and real-time scoring system:
- Built RESTful API with LoopBack 3 and PostgreSQL (256 commits)
- Implemented sophisticated scoring algorithm with multiple point categories
- Designed concurrent processing for up to 20 simultaneous scoring operations
- Created pagination system for large dataset processing
Performance Infrastructure
Implemented caching and job queue systems for high-traffic scoring:
- Set up Redis caching layer for contest and user data
- Integrated RabbitMQ via CloudAMQP for background job processing
- Implemented connection pooling for concurrent database load
- Built batch processing with 10-item chunks for stability
Contest Management System
Built comprehensive contest administration:
- Created admin dashboard for contest scoring and management
- Implemented Mock10 game mode for quick prediction contests
- Built leaderboard and results calculation systems
- Developed public and private contest functionality
Scoring System
The heart of the platform is a sophisticated scoring algorithm that awards points based on prediction accuracy:
Point Categories
- Matching Round (1 point): Picking a player in the same round as actual draft
- Player Team Match (5 points): Correctly predicting which team drafts a player
- Player Pick Match (5 points): Matching the exact pick number
- Trade Bonus (30 points): Correctly predicting when a team trades for a pick
Scoring Architecture
High-performance scoring required careful engineering:
- Concurrent Processing: Up to 20 simultaneous scoring operations
- Redis Caching: Contest data cached for rapid access during scoring
- RabbitMQ Workers: Background queue for non-blocking score calculations
- Pagination: Large datasets processed in chunks of 10 for stability
- Connection Pooling: Database connections managed for concurrent load
Key Features
Multi-Sport Support
The platform supports both NFL and NBA drafts:
- Team logos and rosters for both leagues
- League-specific draft rules and round counts
- Separate contests for each sport’s draft season
Contest Management
Comprehensive contest system:
- Public and private contests
- Entry tracking and leaderboards
- Admin tools for contest scoring and management
- Results calculation and winner determination
Social Integration
Features to drive user engagement:
- Facebook authentication for easy onboarding
- Branch deep links for sharing contests
- Invite friends functionality
- Social sharing of results
Development Timeline
The project evolved over 4+ years:
- December 2016: Initial project setup, user registration, API integration
- 2017-2018: Core feature development, scoring integration
- 2018-2019: Major Ionic upgrades, plugin updates, performance improvements
- 2020-2021: Maintenance updates, logo changes, final refinements
Technologies Deep Dive
The technology choices balanced mobile performance with backend scalability:
- Ionic enabled a single codebase for iOS and Android while accessing native features
- LoopBack provided rapid REST API development with built-in ORM and ACL
- Redis reduced database load by caching frequently accessed contest data
- RabbitMQ decoupled scoring from the request/response cycle, preventing timeouts
- FastLane automated the tedious app store submission process
Technologies
Key Highlights
- Built cross-platform mobile app with Ionic/Angular for iOS and Android
- Developed sophisticated scoring algorithm matching picks to actual draft outcomes
- Implemented Redis caching and RabbitMQ job queues for high-performance scoring
- Created admin dashboard for contest management and Mock10 game mode
- Integrated Facebook authentication and Branch deep linking for social sharing