Overview

This project is a full-stack web application designed to manage a competitive soccer league, including teams, matches, and real-time updates.

It was built as a team project (4 developers) using an Agile workflow, with an emphasis on maintainability, collaboration, and automation.

Tech Stack

  • Backend: Ruby on Rails
  • Frontend: React + Vite
  • Database: SQLite
  • Caching / Messaging: Redis
  • API: RESTful architecture
  • CI/CD: GitHub Actions

Key Features

  • Full CRUD support for league entities (teams, matches, schedules)
  • Real-time notifications powered by Redis
  • Clean separation between frontend and backend
  • Automated test execution on every pull request
  • Code coverage reporting using SimpleCov

My Contributions

I played a leadership role on this project and focused heavily on engineering workflow and reliability:

  • Designed and implemented backend features in Rails
  • Led project planning using a GitHub Kanban board
  • Assigned tasks and coordinated sprint goals
  • Enforced branch protection rules requiring PRs and reviews
  • Set up GitHub Actions to run tests automatically
  • Wrote unit tests using Minitest
  • Authored technical documentation
  • Presented progress during bi-weekly sprint reviews

What I learned

This project reinforced the importance of:

  • Writing code that other people can extend
  • Automating checks instead of relying on manual discipline
  • Clear communication within a team
  • Treating infrastructure and workflow as first-class engineering problems

It’s the project that best represents how I like to work as a developer.