The Community Tech Team at Wikimedia Foundation is looking for a Software Engineer to work with us to build features and tools requested by the Wikimedia community. Therefore our team mission states: “We surface the movement’s technical platform needs and build and support needed tools with engaged contributors.”
Each year, the Community Tech team runs a global survey in which our volunteer community proposes and votes on “wishes” for technical projects. These vary from small enhancements to MediaWiki, the software that powers Wikipedia, to entirely new tools or applications. Community Tech commits to addressing the top ten vote-getting proposals in each calendar year. We are seeking a software engineer to join Community Tech to help us address these wishes and provide solutions to the community.
This is an ideal opportunity for a member of the community to leverage their skills and experience and help the Foundation support the community better. While we are able and willing to coach and train engineers new to MediaWiki or the free knowledge movement, this role requires existing knowledge and experience in developing modern web applications.
We use open-source tools as much as possible and always open-source our own work (https://git.wikimedia.org). PHP and Javascript make up most of our code, but we value using the right tool for the job. Developers at the Foundation have autonomy and responsibility and can have a large and immediate impact on the future of the site and the movement. Our world is vast and can be complicated, so we value communication, enthusiasm, and eagerness to learn as much as certificates or degrees. As a consequence, our team values are Knowledge, Kindness and Collaboration.
You are responsible for:
- Architect, develop, test, and deploy new features, improvements and upgrades to various systems and tools used by the Wikimedia community
- Partner with Foundation staff and volunteers on software design, development, testing and evaluation of potential technical solutions
- Help identify and implement best practices in engineering processes across the team
- Ensure positive and constructive discussions with the community and the Foundation
- Work and communicate effectively within a small team distributed across multiple time zones
- Actively share knowledge and
Skills and Experience:
- Education and/or experience with Object-Oriented development using a scripting language (such as PHP, Python, Ruby, or JavaScript)
- Interest in front-end web application development skills
- Experience with collaborative open-source communities
- Openness to working with a diverse and geographically distributed team
- Strong written communication skills as our collaboration largely happens online
- Bachelor’s degree in CS or related field or the equivalent in work-related experience
Qualities that are important to us:
- Collaborative – We love to have regular pair programming sessions to solve problems together and would be happy to see you enjoy them too.
- Flexible – This team works on many different features and codebases. Being able to adapt your skills to the task and learn quickly is important.
- User-focused – Our primary goal is to provide our users with tools and features that cannot get without our help.
- Open-minded – The team is comprised of people from several different countries and cultures. Be open to new ways of communicating and working.
Additionally, we’d love it if you have:
In addition to the basic skills needed for being successful, these skills could set you apart from the pack but we encourage you to apply even without these!
- Experience with MediaWiki development or as a contributor to Wikimedia projects
- Experience with Test-Driven Development and agile methodologies
- Any other free/open-source software development experience is highly welcome
- Understanding of the free culture movement
- Experience with online community moderation or anti-harassment tools



