Project title: Wikibase Suite Hosting Resource Benchmarking & Cost Evaluation Tool
Description of project: Develop a tool to benchmark and evaluate performance and hosting resource costs for Wikibase Suite. Wikibase Suite, a Wikimedia project, makes it easy to self-host open, structured knowledge bases for hundreds of thousands of users. This tool will measure performance metrics across services and various configurations, assess different hosting environments, and provide recommendations to optimize cost without compromising functionality.
Expected outcomes: By the end of this project, contributors will have developed and documented an automated benchmarking tool that can analyze various hosting configurations for the Wikibase self-hosting stack. This would include metrics such as CPU usage, memory consumption, disk I/O, and database performance. The tool should also provide detailed cost estimates for each configuration.
This project will run in parallel with our core development plans for 2025. It will help us and our community plan and measure the success of future software stack improvements, reducing financial overhead for open knowledge projects.
Bonus outcomes:
- Expanding scope of environment testing (e.g. Kubernetes, etc.)
- Constant monitoring
- Populating Grafana, make it a Wikibase Suite feature to make it easily monitorable
Skills required
- Basic understanding of performance testing on Linux-based machines
- Familiarity with containerization (Docker)
- Proficiency in Python or another scripting language
Skills preferred
- Experience with infrastructure platforms like Hetzner, Digital Ocean, AWS, GCP, Azure
- Knowledge of web service and database benchmarking or performance testing
- Background in cost estimation or analysis
Bonus skills
- Familiarity with MediaWiki and/or Wikibase
- Familiarity with Kubernetes
- Familiarity with Monitoring solutions such as Grafana/Prometheus
Possible mentor(s):
- Robert Timm - Senior Engineer on the Wikibase Suite Team, Wikimedia Deutschland
- Deepesha Burse - Developer Advocate Wikibase Suite Team, Wikimedia Deutschland
Size of project: 350 hours to complete
Add a rating of difficulty for the project - easy, medium, or hard: Medium - The project requires the contributor to have a good understanding of system performance and cost management, along with scripting skills. However, it does not require cutting-edge technology or deep expertise in complex algorithms.
We do not expect applicants to have all the preferred or bonus skills listed—if you’re interested but unsure whether you qualify, we encourage you to apply! Your own learning and growth is an important part of the project.
Microtasks: If you are looking for a good starting point to better understand the project, begin by deploying Wikibase yourself using our “Deploy” product.
Any other additional information that the interns should know about: Get in touch with us in our project’s telegram channel: https://t.me/wikibasesuite