What it does
Our project is an optimized URL Shortener that can handle more than 500 concurrent users, deliver response times of less than 3 seconds, and provide stable code, high code coverage, and incident reporting.
How we built it
Scalability We use tools such as K6 for stress testing, Docker to run multiple instances, NGINX to distribute load, and Redis to cache recent data to lower the load on our database. We were told by an admin in discord to post our results here after explaining what had happened. Our 500 concurrent users test was still running when the submission deadline hit, so we couldn't attach the screenshot in time. The test had passed previously we just re-ran it to capture the screenshot which is why we posted it here this satisfies bronze to gold. No changes were made after deadline to codebase full compliance was followed.

Reliability We use Pytest and the Pytest-cov plugin to run tests across the codebase and spot bugs and errors. Implement GitHub Action for CI/CD.

Incident Response We implement Prometheus to monitor our codebase, collect metrics, and set up alert rules. Structlog to structure the logs into JSON format. Use Grafana Loki to aggregate and store logs, and use Grafana to provide dashboard visualization of the logs and metrics. We use PagerDuty to send alerts to software engineers.

Live Demos
Challenges we ran into
- Resolving the test case challenge number 5.
- Making sure the simulation for triggering requests and tests is reflected on the Grafana dashboard to avoid false indications
- Setting up production pipelines and infrastructure migration on Digital Ocean
Accomplishments that we're proud of
We finished every tier of every quest. But more than that, we actually built something that works like a real production system. You can load test it, watch the dashboard react in real time, and get paged when something goes down. We are proud of the teamwork that is put into this project.
What we learned
There's a big gap between code that works and code that's production-ready. This project made that gap very real. We came out knowing how to actually operate a system, not just write one. The automated test cases, push-based deployment pipelines, and incident response workflows have taught us to think beyond the product scope.
What's next for NightOwls
Taking everything we picked up here into our careers and to build not applications that are reliable, scalable and maintainable.
Built With
- digitalocean
- docker
- grafana
- k6
- loki
- ngix
- pageduty
- prometheus
- pytest
- redis
Log in or sign up for Devpost to join the conversation.