[Numpy-discussion] NEP 48: Spending NumPy Project funds

Pearu Peterson pearu.peterson at gmail.com
Mon Feb 22 07:08:18 EST 2021


Hi,

See GH discussion starting at
https://github.com/numpy/numpy/pull/18454#discussion_r579967791 for the
raised issue that is now moved here.

Re "Compensating fairly" section:

The NEP proposes location-dependent contracts for fair pays.

I think this is a contradictory approach as location is not the only factor
that may influence fairness. As an example, contractors may have different
levels of obligations to their families, and one might argue this should be
taken into consideration as well because the family size and the required
level of commitment to the family members (kids, members who need special
care, etc) can have a huge influence on the contractors living standards,
not just the level of average rent in the particular location. It would be
unfair to take into account location but not the family situation. There
may be other factors as well that may influence fairness and I think this
will make the decision-making about contracting harder and, most
importantly, controversial.

My proposal is that factors like location, family situation, etc should be
discarded when negotiating contract terms. The efficiency of using the
project funding should be defined by how well and quickly a particular
contractor is able to get the job done,  but not how the contractors are
likely to spend their pays - it is nobody's business, IMHO, and is likely
very hard if not impossible to verify.

My 2cents,
Pearu

On Sun, Feb 21, 2021 at 4:52 PM Ralf Gommers <ralf.gommers at gmail.com> wrote:

> Compensating fairly
> ```````````````````
>
> Paying people fairly is a difficult topic. Therefore, we will only offer
> some
> guidance here. Final decisions will always have to be considered and
> approved
> by the group of people that bears this responsibility (according to the
> current NumPy governance structure, this would be the NumPy Steering
> Council).
>
> Discussions on employee compensation tend to be dominated by two
> narratives:
> "pay local market rates" and "same work -- same pay".
>
> We consider them both extreme:
>
> - "Same work -- same pay" is unfair to people living in locations with a
> higher
>   cost of living. For example, the average rent for a single family
> apartment
>   can differ by a large factor (from a few hundred dollar to thousands of
>   dollars per month).
> - "Pay local market rates" bakes in existing inequalities between countries
>   and makes fixed-cost items like a development machine or a holiday trip
>   abroad relatively harder to afford in locations where market rates are
> lower.
>
> We seek to find a middle ground between these two extremes.
>
> Useful points of reference include companies like GitLab and
> Buffer who are transparent about their remuneration policies ([3]_, [4]_),
> Google Summer of Code stipends ([5]_), other open source projects that
> manage
> their budget in a transparent manner (e.g., Babel and Webpack on Open
> Collective ([6]_, [7]_)), and standard salary comparison sites.
>
> Since NumPy is a not-for-profit project, we also looked to the nonprofit
> sector
> for guidelines on remuneration policies and compensation levels. Our
> findings
> show that most smaller non-profits tend to pay a median salary/wage. We
> recognize merit in this approach: applying candidates are likely to have a
> genuine interest in open source, rather than to be motivated purely by
> financial incentives.
>
> Considering all of the above, we will use the following guidelines for
> determining compensation:
>
> 1. Aim to compensate people appropriately, up to a level that's expected
> for
>    senior engineers or other professionals as applicable.
> 2. Establish a compensation cap of $125,000 USD that cannot be exceeded
> even
>    for the residents from the most expensive/competitive locations
> ([#f-pay]_).
> 3. For equivalent work and seniority,  a pay differential between locations
>    should never be more than 2x.
>    For example, if we pay $110,000 USD to a senior-level developer from New
>    York, for equivalent work a senior-level developer from South-East Asia
>    should be paid at least $55,000 USD. To compare locations, we will use
>    `Numbeo Cost of Living calculator <
> https://www.numbeo.com/cost-of-living/>`__
>    (or its equivalent).
>
> Some other considerations:
>
> - Often, compensated work is offered for a limited amount of hours or fixed
>   term. In those cases, consider compensation equivalent to a remuneration
>   package that comes with permanent employment (e.g., one month of work
> should
>   be compensated by at most 1/12th of a full-year salary + benefits).
> - When comparing rates, an individual contractor should typically make 20%
> more
>   than someone who is employed since they have to take care of their
> benefits
>   and accounting on their own.
> - Some people may be happy with one-off payments towards a particular
>   deliverable (e.g., hiring a cleaner or some other service to use the
> saved
>   time for work on open source). This should be compensated at a lower rate
>   compared to an individual contractor.
> - When funding someone's time through their employer, that employer may
> want to
>   set the compensation level based on its internal rules (e.g., overhead
> rates).
>   Small deviations from the guidelines in this NEP may be needed in such
> cases,
>   however they should be within reason.
> - It's entirely possible that another strategy rather than paying people
> for
>   their time on certain tasks may turn out to be more effective. Anything
> that
>   helps the project and community grow and improve is worth considering.
> - Transparency helps. If everyone involved is comfortable sharing their
>   compensation levels with the rest of the team (or better make it public),
>   it's least likely to be way off the mark for fairness.
>
> We highly recommend that the individuals involved in decision-making about
> hiring and compensation peruse the content of the References section of
> this
> NEP. It offers a lot of helpful advice on this topic.
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.python.org/pipermail/numpy-discussion/attachments/20210222/5b359532/attachment.html>


More information about the NumPy-Discussion mailing list