Summary
The Wikimedia Foundation is looking for a software engineer to join our team, reporting to product engineering management. As a software engineer, you will be responsible for engineering software that supports our product user experiences. In this role, you will work in a distributed environment, where we value teamwork and a consensus-oriented approach. You get to write open source code for collaborative experiences supporting a worldwide top-ten website, and you get to do it at a place that believes we're all more successful when everyone has a good work-life balance.
On the Editing Team, we support new and experienced volunteers working in 300+ languages with the tools they need to keep Wikipedia accurate and up to date. The team's main area of focus is the flagship VisualEditor, our industry-leading rich-text editing platform which we have been extending to serve new use cases and unlock new capabilities that lower the barriers people encounter when contributing to Wikipedia.
You are responsible for:
- Improving the Wikipedia product experience by fixing bugs and implementing new functionality.
- Iterating on new features through collaboration with fellow engineers, product managers, designers, other teams, and community members.
- Writing multilingual, accessible, and performant code using Javascript and PHP.
- Building on top of the MediaWiki API ecosystem.
- Instrumenting components to monitor feature behavior and quality characteristics.
Skills and experience:
- 2–5 years related professional or open-source software engineering experience.
- Experience with object-oriented development using a scripting language (such as JavaScript, PHP, Python or Ruby). Most of our work is in JavaScript, PHP and CSS.
- Focused software engineering: you have experience of writing unit tests, and of structuring your work with version control.
- Strong written communication skills as our collaboration largely happens online, on chats, wikis, documents and tickets.
Qualities that are important to us:
- A desire to make meaningful contributions to knowledge equity, free culture, and open access.
- An emphasis on communicating clearly in both synchronous and asynchronous channels.
- A strong aptitude in algorithms and data structures is essential!
- A desire to write well-documented and maintainable code.
- The willingness to participate in technical discussions, proposing solutions to technical challenges, participating in code reviews and receiving feedback.
- An eagerness and curiosity to solve technical problems, trying things out and investigating issues, and supporting the work of others.