Wikimedia Discovery/Team/Onboarding

From MediaWiki.org
Jump to navigation Jump to search

Team page: Wikimedia Search Platform

Note that if you are seeing this in a page whose URL ends in /YourName then you should feel free to strike through the steps as you finish them. If you find an error in the instructions then go fix them on the template.

Things to do on your own[edit]

The Guide for New Hires is a more complete guide that complements this page.

First day[edit]

  • IRC
    • Get an IRC client. Some people like Quassel. weechat and irssi are good if you like text interfaces (or textual on mac). IRCCloud is a broswer-based client that can be obtained via Office IT (they have a paid license).
      • If you aren't familiar with IRC, IRCCLoud is easy plus it keeps messages while you are disconnected.
    • Connect to Freenode and register your user name.
    • Join #wikimedia-discovery connect
    • The rest of the team will be in there and we'll use this room to keep up with you.
    • Skim the "People to meet/First day" section below and keep some of the irc names in mind. Chat with them when we get bored of the tasks below and need a break.
    • If you get stuck on anything just shout in #wikimedia-discovery connect.
  • Have a quick glance at the section of this page title "Who to ask if stuff doesn't work". You should refer to it if stuff doesn't work.
    • Also, remember to update the template with any better information or useful tips you discover.
  • Password Management
    • You are about to get approximately one billion new passwords. You might want to set up a Password Management tool.
    • Wikimedia Password Notes
      • Your Google Apps / Gmail / Calendar password can be reset here.
        • Your first login to Google Apps / Gmail / Calendar might require a 2-step authentication. Contact the person who sent you the onboarding email, they should be able to help you.
        • You may need to log into the VPN to access that URL. (OIT says it's sometimes necessary—it's voodoo)
        • You can log into Loomio and ZenDesk via your Google account.
      • Your Wikitech (see below) account/password (see below) is also your login for Gerrit
      • office.wikimedia.org has it's own password
      • mediawiki.org, en.wikipedia.org, etc, share a password (see "View global account info" under your Wikipedia prefs).
      • For Phabricator login you can use both your mediawiki.org account (preferred) or your Wikitech account. See mw:Phabricator/Help#Creating your account.
      • When you start signing up for mailing lists (see below), request a password reset for one of them, then choose a password you like for that one, but check the "change globally" checkbox and they'll all get that password. For reasons we won't get into here, the mailing list passwords are stored in plain text and emailed to you monthly. Please use a *unique* password for mailing lists.
      • Note that "LDAP" is not unique:
        • OIT (Office IT) uses LDAP to refer to your Google Apps password.
        • Your Wikitech password is called LDAP in some places.
        • These are not the same LDAP systems and so not necessarily the same password—oh, the confusion!
  • NOTE: Some of these tasks can be found by reading the new hire information but we've made an effort to grab the important bits.
  • Read the Systems Guide for New Hires.
  • Read Remoties and Communication Best Practices.
  • If you need shell access to production systems, read Requesting shell access (this applies to shell access to production systems, not to lab).
  • Google Mail/Calendar
    • Follow the systems guide above and/or your On Boarding Confirmation email from OIT to get access to gmail and your calendar.
    • (Optional) In Gmail, go to Settings → General → Undo Send and change the timeout to 30 seconds.
    • Add these calendars to your calendar calendars: "WMF Staff Calendar" and "WMF Fun & Learning".
      • The WMF Fun & Learning calendar isn't super useful for remote employees, FYI.
      • You can also add calendars for other people on the team, especially people you will work with closely, so you can easily toggle their schedule on/off in your calendar.
    • In Calendar go to Settings and (i) tick "Speedy Meetings" and (ii) set your work hours.
    • Make sure you've been invited to our meetings:
      • Team meetings: Sprint Planning on Monday, Standup on Tuesday and Thursday, Elastic Search Stuff on Wednesday ("the Wednesday meeting"), Office Hours (once a month on Wednesday), Unmeeting on Wednesday and Friday, and the Search Platform Retro (every 6 weeks on Monday).
      • Department meetings: Monthly Tech Department Updates
  • IRC (part two!)
  • Verify access to Office, Wikipedia, and Wikimedia Foundation with the appropriate WMF accounts.
    • These accounts will be created by OIT. Email techsupport@wikimedia.org if you don't get email with login info.
  • Create a Wikitech account
    • Beware: it seems to want to uppercase the first letter of your username whether you like it or not.
  • Schedule staff photo (just list your name here)
    • Or you can list yourself as not wanting to have your photo up by adding your name under the cloak of invisibility list.
  • Create your user page on Meta so people can know who they interact with. The magic of Extension:GlobalUserPage should make it available to other wikis.
    • Here's how you create a user page. Go ahead and make your office wiki page while you're at it.
  • Add yourself to the team page—twice: in the info box at the top of the page, and under the section "The team" and link to your page that you just created.
  • Subscribe to some mailing lists
  • Slack
    • Ask someone to add you to the #technology-department channel (you'll automatically be added to the #general channel once you join with your WMF account).

First few days[edit]

  • git
    • Read the tutorial on our git/gerrit workflow.
    • Install git.
    • Install git-review.
    • Add yourself to some Gerrit review group(s).
    • Skip down to the section on MediaWiki-Vagrant and start on that. When you run vagrant up for the first time it'll take a long, long while. So come back and continue from here while you wait for that.
    • Read How to become a MediaWiki hacker.
  • Install MediaWiki-Vagrant
    • After you verify that you can create pages and such add the cirrussearch role, run vagrant provision and try searching
  • Install Java 8 and Java 11
  • Work on something small!
    • You can ask anyone for an issue to work on but officially your point of contact for this is Guillaume.
    • Submit the patch using git review and add anyone on the team as a reviewer.
    • Try to pick something that seems small so that you get used to the code review process quickly but don't worry if you can't finish it in a day or a week.
      • It's likely that you won't get a response immediately when you push a patch for review. That's normal. You can continue other things in this document or grab another bug, whatever feels right to you.
    • Ask for help if you need it!
  • IRC (part three!)
    • Once you have a cloak you can join/get invited to #wikimedia-staff.
    • If you know what an IRC bouncer is, get one of those and set it up so you are "always on"
      • If not, talk to someone about getting a WMF account on IRCCloud.
    • We have a saying: "If it didn't happen on the mailing list, it didn't happen"—so important stuff should be on the public or private mailing list—but it's polite to check back on IRC when you've been away (hence the need for a bouncer or IRCCloud).
    • See also https://www.mediawiki.org/wiki/Wikimedia_Discovery/Process#Communication
  • Phabricator
    • Set up your Phabricator account. Follow these instructions to set up your account.
    • Now you need to get yourself added to the WMF-NDA project. This will allow you to view certain tasks which are hidden to people who haven't signed a WMF NDA. Employees had to sign an NDA, so assuming you are an employee, this should go smoothly.
    • Add yourself as a member of the Discovery Phabricator Project.
    • Create a Phabricator task for working through this worksheet and add it to the Epic for your onboarding. Assign it to yourself and attach it to a semi-relevant sprint, then move it to the "In Progress" column of that sprint's workboard. Read more about our development process.
  • If you're not a Wikipedia editor yet, ask someone on the team to give you an introduction.
  • Get access to Cloud VPS instances: https://wikitech.wikimedia.org/wiki/Help:Accessing_Cloud_VPS_instances
  • Horizon
    • Set up your horizon account, see instructions here
  • Loomio
    • I think you'll need to get invited into the WMF loomio group
    • And if you want to participate in the "Office Incubator", you'll need an invite for that too

People to meet and things to do with them[edit]

You'll want to meet these people soon, some on the first day! You should probably introduce yourself over IRC and ask to schedule a Google hangout with them.

The goal of this section is to meet some of your team mates and learn how the team fits together. Hopefully you'll talk to everyone on the team one on one for about thirty minutes over the first week or two and a few key people on your first day.

First day[edit]

  • Guillaume Lederrey—aka gehel aka MrG—the manager of the Search Platform team. He is on Central European Time.
    • Tell him everything is going great and that the instructions are easy to follow but you are still overwhelmed by the reading you have to do.
    • Tell him that you found some errors in the instruction and fixed the template.
    • Just kidding.
    • Ask him to give you an overview of how the Foundation is organized, teams and such.
    • Also ask about how the Search Platform team is organized internally.
    • Ask him about sign language.
    • Ask him about how much fun rolling restarts are.
    • He'll want to talk to you one on one a few times in the first week (if his agenda allows it).

First week or two[edit]

Ask everyone about their experience working on a fully remote team. Also ask them about their favorite browser extensions that you should install!

    • Carly aka cbogen, our Program Manager for Structured Data. She is on US Eastern Time.
      • Ask her about the Structured Data Across Wikimedia (SDAW) program.
      • Ask her about how the Search team and Structured Data team work together.
      • Optional: Ask her about roller derby.
    • David aka dcausse, our elasticsearch guru. He is on Central European Time.
      • Ask him what he is working on now.
      • Ask him how mediawiki is integrated with elasticsearch.
      • Optional: Ask him about rock climbing.
    • Deb aka debt, our former Product Manager and now Program Manager for the Technology Department. She is on US Mountain Time.
      • Ask her about how the Search Platform team interacts with the overall Technology Department.
      • Ask her any questions on navigating the Technology Department and / or the Wikimedia Foundation.
      • Ask her for tips on building strong community relations.
      • Optional: Ask her about biking.
    • Erik aka ebernhardson, one of our multi-talented software engineers. He is on US Pacific Time.
      • Ask him about our data pipelines.
      • Ask him about operating elasticsearch clusters.
      • Ask him about how machine learned ranking works.
      • Optional: Ask him what video games he's playing these days.
    • Maryum aka maryum. She is on US Pacific Time.
      • Ask her about navigating the Foundation as a new employee.
      • Ask her what she's working on.
      • Optional: Ask her about baking.
    • Trey aka Trey314159, our computational linguist. He is on US Eastern Time.
      • Ask him how full text search works.
      • Ask him what interesting language he is working on at the moment.
      • Optional: Ask him about geocaching.
    • Zbyszko aka zpapierski. He is on Central European Time.
      • Ask him about Wikidata Query Service.
      • Ask him about navigating the Foundation as a new employee.
      • Optional: Ask him about building developer communities.

You can see everyone's time zones at once here. Make sure Trey adds you to the list.

Who to ask if stuff doesn't work[edit]

Search Team Contact Owner IRC Channel
MediaWiki-Vagrant ebernhardson bd808 #wikimedia-releng
CirrusSearch and Elasticsearch ebernhardson / dcausse ebernhardson / dcausse #wikimedia-discovery
Wikidata dcausse / gehel DanielK_WMDE, aude, Lydia_WMDE #wikidata
Wikidata Query dcausse / gehel dcausse #wikimedia-discovery
MediaWiki ebernhardson #wikimedia-dev
MediaWiki Job Runner AaronSchulz #mediawiki-core
git/gerrit Anyone in #wikimedia-discovery #mediawiki-releng
Jenkins ebernhardson hashar, zeljkof #mediawiki-releng
PHP ebernhardson #wikimedia-discovery
Java dcausse, gehel #wikimedia-discovery
Phabricator mw:Talk:Phabricator/Help for general public questions.
User:AKlapper (WMF) for general non-public questions.
#wikimedia-releng
Discovery dashboards ? #wikimedia-discovery
Graphite / Grafana ebernhardson, dcausse, gehel #wikimedia-operations
Cindy ebernhardson, dcausse ebernhardson #wikimedia-discovery