Wikimedia Engineering/2014-15 Goals

Purpose of this document: Goals for the Wikimedia Engineering and Product Development department, fiscal year 2014–15 (July 1, 2014–June 30, 2015). The goalsetting process owner in each section is the person responsible for coordinating completion of the section, in partnership with the team and relevant stakeholders. The first revision is due June 6, 2014.

Site Operations and Site Architecture
Goalsetting process owner: Mark Bergsma

Interdependencies:
 * Cooperation with the Platform team on HHVM
 * Coordination with other teams on quarterly failover tests

Wikimedia Labs
Goalsetting process owner: Mark Bergsma

Interdependencies:
 * Improvements to the Labs management web interface (MediaWiki OpenStack manager or possibly Horizon) will need involvement from the UX group, and potentially development assistent from a (MediaWiki?) development team.

Language Engineering
Goalsetting process owner: Amir Aharoni

Interdependencies:

MediaWiki Core
Goalsetting process owner: Rob Lanphier

Interdependencies:
 * SPDY - TechOps
 * SOA Auth - Services
 * API discoverability improvements - ECT

Release and QA
Goalsetting process owner: Greg Grossmeier

Interdependencies: Ops, Platform/Core

Engineering Community
Goalsetting process owner: Quim Gil

Our quarterly goals are defined according to our main drivers for 2014-15:
 * A sane developer experience
 * One development platform
 * Engage established communities
 * Better quality in outreach programs

Interdependencies: Analytics (API data usage, Developer Hub), Design (Developer Hub, mediawiki.org), Global Education Program (Engaging Communities), Grantmaking (Engaging Communities), Platform (Phabricator, Developer Hub), Product (Phabricator), Technical Operations (Phabricator), Zero (Engaging communities).

Multimedia
Goalsetting process owner: Fabrice Florin

Note that these milestones and roadmap are preliminary and subject to change. They will be re-evaluated quarterly, based on previous quarter results, as well as community and team feedback.

To meet our goals for multimedia, we plan to partner with these other teams:
 * Interdependencies:


 * Wikidata: implement structured data on Commons and other sites
 * Visual Editor: upload media to articles, find and use existing media
 * Search: make it easier to find media based on structured data
 * Mobile: view and upload media on mobile platforms
 * Kaltura: upgrade audio and video players
 * Design: improve the user experience / usability
 * Core Features: upload media to discussions (Flow)
 * Analytics: improve our metrics

To learn more, visit our Multimedia 2014-15 planning page.

Editor Engagement - Core Features
Goalsetting process owner: Danny Horn

Interdependencies:
 * Mobile web - Jon Robson joining the Flow team for Q1
 * Visual Editor and Multimedia for the Mini-VE and Media Uploader
 * Mobile apps - Connecting probably in Q3

Editor Engagement - Growth
Goalsetting process owner: Steven Walling

More details at: Growth/2014-15 Goals

Interdependencies:
 * Research & Data and User Experience: Both of these teams are core dependencies for Growth. Currently, the Research and Data embeds a full-time research scientist (Aaron Halfaker), and in order to support continued A/B testing capacity this will continue to be a key need on the team. Additionally, User Experience embeds a primary and secondary design on the team (currently Moiz Syed and Kaity Hammerstein).
 * Analytics: First and foremost, Growth depends on Analytics development for continued support of EventLogging, Wikimetrics, and analytics slave databases. In addition, Growth plans to use planned data products built by Analytics, such as an interest graph, to better attract new editors.
 * Community Engagement (Product): The Community Engagement group did not provide support for Growth during the 2013-14 fiscal year. We think providing some form of dedicated community liason will be critical if the team is to tackle more contentious areas of the user experience, such as article creation. Currently Product (Steven Walling) is filling this role on an as-needed basis, which puts the team primarily in a reactive mode, rather than having a proactive outreach plan.
 * Team Practices Group: The Growth team is small but is relatively inexperienced with Agile practices, and the new team practices group could provide extremely valuable support. Growth has implemented some Scrum practicies, but its capacity for process improvement is limited since the team has never had a dedicated scrum master.
 * Mobile Web: There is close alignment this coming year with the goals of the Mobile Web team and Growth. Mobile wants to spread its knowledge about mobile-first product development and engineering, while Growth wants to help develop mobile versions of its products.
 * Mobile Apps: As we introduce login, editing, and other contributory workflows to our native apps, Growth should work closely with the Apps team to make sure there is consistent experience, discover ways to integrate its findings in to the apps, and consider methods for attracting apps users to desktop products.

Mobile
Goalsetting process owner: Maryana Pinchuk

This fiscal year, the Mobile Apps team will be focused on getting data on feature usage of the new native mobile applications for iOS and Android in order to set goals and prioritize work on new apps features.

The Mobile Web team will split their time between two main focus areas:

Technical enablement – ensuring that other teams can work with MobileFrontend code, standardizing UI and code across desktop and mobile, and helping other teams design and build features that are responsive and work cross-platform.

Product work – this encompasses both a) porting select desktop experiences to tablets and handsets; and b) creating new features and contribution streams that help raise the number of new mobile users who hit the active editor threshold (5+ edits per month), so that we not only acquire but retain a healthy new editor population via mobile apps and web.

Maps & Geo
Goalsetting process owner: Tomasz Finc

The Maps & Geo team will be a new team at the Wikimedia Foundation tasked with scaling our existing mapping resources to enable the world to visualize Wikipedia all around them. They will start the year forming the team, inventorying existing work, and scale our tile services and osm db to be production ready. Next the'll work with the Mobile Web and App team to empower our users to use mapping resources.

Interdependencies:
 * Mobile Web, Mobile App, & Platform

Editing
Goal-setting process owner: James Forrester

''The Editing Team is working to make VisualEditor a great editor for new and experienced editors alike, focusing on improving the performance and usability whilst adding some more features to make VisualEditor more helpful, intuitive and practical for use for every content edit, alongside maintaining, improving, and extending the existing editor software. Below are a set of goals that we hope to achieve over the next financial year (July 2014–June 2015), with a balance of optimistic and pessimistic assumptions about speed of delivery; not all goals may be achieved in the time period indicated, and some may be updated over time.''

On-going work happening every quarter:
 * Stability and bug fixing, prioritising any bugs that cause wikitext corruption or any other form of disruption for our wikis’ communities (including in the wikitext editor);
 * Performance improvements for users, tracking load & save times, execution speed;
 * UX improvements tracked regularly and reported in a quarterly public user testing narrative;
 * Ensuring the success of VisualEditor on mobile, with a target of feature equivalence on tablet and at least some features on phone, with responsibility for both VisualEditor and wikitext editing pipelines on tablets and phones as well as desktop transitioning from Mobile to the team; and
 * Collaborating with volunteers and other Engineering teams like Parsoid, Services, Platform, & Core on related efforts like skin improvements, front-end performance, and other areas.

Interdependencies:
 * Auto-filling citations depends on the OPW work to do this led by the Services team (and partially mentored by the Editing team).
 * Uploading media functionality relies on work planned to be done in the Multimedia team.
 * Language variants support relies entirely on work planned to be done in the Parsoid team.
 * Continued key on-going dependencies on the Parsoid, Services, Platform Core MediaWiki and Mobile teams, and collaboration with the Core Features and Growth teams for their VisualEditor-related goals.

Design - User Experience
Goalsetting process owner: Jared Zimmerman

Interdependencies:
 * Engineering support for Living Style Guide and mediawiki.ui
 * Product management support for prioritizing UI and behavior consistency in story prioritization
 * Wikidata/WMDE support for certain mediawiki.ui components
 * ECT support for public facing projects like Winter, and Explore Right Rail.
 * Productization of split testing framework (from growth) into reusable component

Design - Research
Goalsetting process owner: Jared Zimmerman

Interdependencies:
 * Product and Analytics support for State of the User Report
 * Research Internship Program is joint venture between Analytics, Design, and Grantmaking

Parsoid
Goalsetting process owner: Subbu Sastry

See this page for additional details. Besides these high level goals, we will continue to focus on bug fixing, supporting existing Parsoid clients, improving performance, and regular deploys.

Interdependencies


 * Rashomon / Content API is needed for html page views, stable element ids, efficient template updates.
 * VE, Flow, Mobile depend on Parsoid output
 * i18n consultation for language variant support
 * Content translation group on stable ids
 * Collaboration / interaction with editors community for wikilint/linttrap
 * Wikidata for content widgets

Services
Goalsetting process owner: Gabriel Wicke

Hiring for the new services team has just started. Eventually we'll be four engineers. The team's focus will be on modularizing our technical infrastructure and enabling other teams by developing internal services and a high-performance external REST API.

For more detail see the services roadmap.

Interdependencies:
 * Parsoid depends on Rashomon revision storage & content API
 * VE, Flow, Mobile & platform depend on HTML content & page metadata end points
 * Lots of stakeholders on storage service (platform, features, mobile, dev community)
 * Lots of stakeholders on HTML templating (community, platform, features, mobile)
 * We depend on ops for provisioning, deployment & monitoring

Analytics
Goalsetting process owner: Kevin Leduc

Interdependencies:
 * Technical Operations: we work closely with operations, particularly on the Hadoop buildout
 * Research and Data: we depend on this team to provide definitions for metrics we need to collect and graph
 * Foundation: we need input from our many stakeholders to ensure we are producing the correct data and research
 * Design: we need design to help us build useful interfaces to our data

Research and Data
Goalsetting process owner: Dario Taraborelli

Full description: Analytics/Research and Data/2014-15 Goals

Interdependencies:
 * Technical Operations: we work closely with operations to support our databases
 * Analytics: we depend on this team to build out collection and visualization systems for key metrics
 * Product: we need to be closely aligned with product so we can support new initiatives with research and data
 * Foundation: we need input from our many stakeholders to ensure we are producing the correct data and research

Fundraising Engineering
Goalsetting process owner: Katie Horn

Interdependencies:

Wikipedia Zero
Goalsetting process owner: Carolynne Schloeder

Interdependencies:

Community Engagement (Product)
Goalsetting process owner: Rachel diCerbo

Interdependencies:
 * Product Teams which we are already collaborating with will be supported through their life cycle
 * Mobile development will be supported as the year progresses; exact dates TBD

Team Practices Group
Goalsetting process owner: Arthur Richards

Annual goal: 20% increase in overall team health across engineering

Ongoing work across all quarters: support teams in process/practice improvements, driven by health-check survey results