Job Titles#

This document represents the positions and salary levels that 2i2c uses. They are inspired by the hiring/salary structure of several tech companies1.

Terminology and structure#

Each position at 2i2c takes the following form:

<role-name> L<level>

For example, Open Source Infrastructure Engineer L2.

Here is a quick breakdown of this terminology and structure:


Positions are specific areas of focus and skills in 2i2c. The expectations and focus-areas within that role are set by Levels and Steps.


Levels are large and distinct jumps in terms of area knowledge, role complexity and overall scope. Higher levels generally mean less-oversight and more autonomy, higher expectations of quality, more work on design / strategy than implementation, etc.

Moreover, each role should have a few key pieces of information:

Key goal

A one- or two-sentence description of the primary goal of this role. It is the one thing that should be done well, and will be the main definition of “success”.

Responsibilities and Expectations

The major things that this person is expected to do or oversee, what kinds of expectations we have for how they’ll do their work, and what their relationship should be to others within 2i2c.

Performance measures

Quantitative or qualitative metrics that are useful in measuring the success of people in this role. Our goal is to be precise about the kind of impact that this role should have in 2i2c.

Salary rationale

The rationale that we’ll use to determine a starting salary for this position, according to our salary strategy.


We are still building out these materials and role definitions, so this structure may evolve, and some roles may be missing information.


In particular, Buffer and Basecamp