What is “Platform Engineering”?

If you’ve been following this blog or other Wikimedia Foundation updates closely over the past year, you may have seen several references to the “Platform Engineering” group (nee “General Engineering”), which is the group I’ve been managing for the past year. I’d like to explain who we are, and what we’re doing. We always strive for transparency as a group, but one ulterior motive for this particular narrative is that we’re hiring (more on that in a bit), and we hope this helps people understand what we’re looking for.

The Platform Engineering group was organized as part of the 2010-2011 Wikimedia Foundation plan (see note). The group is broadly responsible for improving our capacity and flexibility as a development organization, handling nuts-and-bolts issues so that our feature teams (Features Engineering & Mobile/Special projects) and the larger volunteer development community can safely and quickly improve the system, and so that our operations staff doesn’t have to focus on MediaWiki-specific issues. We also provide visibility and transparency for the organization, facilitating engineering communication and providing data analytics for Wikimedia sites. We’ve spent the past year building up the group and better defining roles, which are now organized into three major areas of activity: the MediaWiki Core group, the Technical Liaison; Developer Relations (TL;DR) group, and the Data Analytics group.

MediaWiki Core — This group is responsible for stability, security, performance and architectural cleanliness of the system. This ends up translating into a lot of code review, along with infrastructure projects like disk-backed object cache, heterogeneous deployment, continuous integration, and over the course of the next year, a migration to HipHop. While not a prerequisite, everyone on this team started off as a volunteer developer. The whole engineering organization has some level of responsibility for our code review process, but this group has more of a primary responsibility for it than most groups.

  • MediaWiki Core open position: Code Security Engineer (job description to be posted soon)

Technical Liaison; Developer Relations (TL;DR) — The TL;DR group is responsible for development community relations, ensuring a healthy relationship between the Wikimedia Foundation and our volunteer development community. They are responsible for removing obstacles to effective volunteer participation, communicating about what we’re up to now, and patrolling for new opportunities for volunteers to get involved and new volunteers to involve. While everyone in engineering is responsible for those things to some extent, this team helps fortify our commitment to this. They are also the group responsible for finally prodding me to post this. :)

Data Analytics — The Data Analytics team is responsible for building out our logging and data mining infrastructure. Our analytics infrastructure right now consists of some basic logging, which aggregate logs from our servers and provide per-wiki page view counts, as well as more granular logging of our fundraising banners. As of right now, the only permanent member of this group is Erik Zachte, but we’re pulling in members of our Global Development team (Nimish Gautam and Mani Pande), as well as Sam Reed from the MediaWiki Core to help out while we hire new members of the team.

That’s the broad overview of Platform Engineering. In the coming days, I’ll introduce each of the teams and what everyone on the team does, and describe what the role of the people we hope to hire to expand each of these teams. However, we’re hiring now, so please, don’t wait to apply!

Rob Lanphier
Director, Platform Engineering

Note: For information about “Platform Engineering” in the 2010-2011 Annual Plan, look for “General Engineering” (the old name)

0 Show

0 Comments on What is “Platform Engineering”?

Leave a Reply

Your email address will not be published. Required fields are marked *