Expectations of team members

This page describes some of the expectations for 2i2c team members. While these are not strict rules, they are things you should do in order to help maximize its impact.

General team practices

Be respectful

When interacting with 2i2c team members, or individuals outside of 2i2c, always be respectful. We are currently working on a Code of Conduct for 2i2c, but until it is complete, we expect everyone to follow the principles described in the Jupyter Project Code of Conduct.

Be communicative

First and foremost, be communicative to other team members. 2i2c is a distributed organization, and it is crucial that we are open and up-front with one another. If there’s any doubt, don’t hesitate to ask someone, ideally in a public channel. If you are wondering whether somebody else needs to know something, assume that they do and tell them.

Be proactive

We are a distributed organization, and this means that it is crucial that we work together to identify how to make the most impact. 2i2c generally do a combination of development, operations, and support for the infrastructure and projects that we work on.

What you work on will depend on your role and potentially your funding source, but the important thing is that you are proactive in working with other team members to identify what you should work on next.

Read Team Practices and the other documentation in this guide to understand how the 2i2c team coordinates amongst one another.

Engineering Team Practices

These team practices are relevant for the engineering team at 2i2c.

Participate in the team workflow

The 2i2c Engineering Team has a team coordination workflow here. You are expected to participate in this workflow with other members of the team.

Participate in the following activities

If you’re an engineer at 2i2c, plan to do a combination of these things:

  1. Development for the Managed JupyterHub Service. This is a collection of JupyterHubs that we run for various customers/communities in research/education. We are constantly updating and improving this infrastructure!

  2. Operation for the Managed JupyterHub Service. In addition to developing the infrastructure, we also operate it and provide support. We try to divide this work so that we share the responsibility of operation and support.

  3. Focused development in collaboration research and education communities. In addition to running infrastructure, we also collaborate around specific projects, usually involving tools in the Jupyter ecosystem. You may work with researchers in improving their tool, or building something new for another group’s project.

  4. Outreach, teaching, and community-building. In addition to technical work, we also encourage 2i2c team members to make interactive computing more accessible and powerful for others via outreach, particularly for under-served communities.

  5. Open source development and support. We run all of our infrastructure on open source tools - usually from communities for which we are not the sole leader. It is crucial that we participate in these communities and support them in addition to doing 2i2c-specific work.