This is an idea I've had for a while, and I'd like to see if there's any interest, or on the contrary concerns, about it. I would like to explore (and if I have official blessing, champion) the idea of asking corporations with software engineering staff if they would be willing to let their employees volunteer their expertise and time to mediawiki while ideally still being on their employer's payroll. I mean engineering in the wide sense of the term, including Ops, QA, etc. and maybe even UX.
This would allow engineers to take a break for a predetermined duration from their usual work duties and contribute in a very productive manner to our open source projects. And maybe to other open source projects than mediawiki, but I think our project in particular is a great starting point. I see this as a flexible scheme. It doesn't really matter if people can do it for a day, a month, or a year, I believe that these inter-organization exchanges could have great value.
*Background*
Earlier this year the WMF's Multimedia team, which I'm a part of, had a volunteer working full-time with us, Aaron Arcos. Aaron used to work at Google and left to spend a year offering his software engineering skills to several non-profits. His work with us, bringing his experience from large projects at Google, was invaluable. He mentioned that when he told his former Google co-workers about his idea, some were interested and tempted to follow his example.
As some of you may now, Facebook is currently lending the WMF engineering resources in order to help with our HHVM deployment to production.
From my subjective perspective, as someone who's paid to be a software
engineer, I would definitely enjoy the ability to do something like that at certain points of my career. There's always a lot to learn by being thrown into the deep end of another organization's software development.
In fact, in the corporate world, Twitter and Etsy have identified these benefits and are doing this between themselves: http://thenextweb.com/insider/2012/09/11/twitter-etsy-run-engineer-exchange-...
In our own wiki world, we have Wikipedians in residence: https://en.wikipedia.org/wiki/Wikipedian_in_residence
*The idea*
This is my take on it, and I'm really interested to hear some feedback and brainstorm on this. I think that starting talking to interested parties will be what gives shape and structure to the idea.
First and foremost I would see this outreach aimed at the engineers themselves. Because worst case scenario, if their employer isn't willing to donate continued payroll for that person while they're in residence, we should facilitate people like Aaron Arcos who are willing to donate their time and skills entirely for free. There may be engineers out there at the Googles and Facebooks of the world who don't know or might forget that they could help projects like mediawiki greatly if they took a break from their job and worked on open source for a while.
Secondly, I think that such a scheme would be easily pitched to companies (including other non-profits) as a training opportunity. As much as experienced engineers coming into the project have a lot to teach us, we also have a lot of interesting knowledge to teach in return, and the experience of working on this codebase alone, the scale of the traffic we're dealing with, etc., can have incredible training value.
I imagine this scheme as being entirely flexible. For a short period or a long period, still paid by their former employer or not, we should foster experienced engineers participating in our project for a period of time. We already participate in outreach to people with less experienced developers through GSoC and similar (maybe we're not doing enough of that for some people, but that's another topic!), and I think there is an unexplored opportunity in trying to do this with experienced folks.
Lastly, while everything I describe here is probably possible on an individual basis and does happen occasionally, I believe that having a catchy name (eg. "engineers in residence"), and an official scheme for it would greatly increase the frequency of it happening.
I could keep going on and on about this, but let's see what others think based on this rough idea. And if you're at Wikimania right now and are interested in discussing this topic, find me.