Monday, November 11, 2019

Seeking Developers for Paid Contract Improving pip

The Python Software Foundation Packaging Working Group is receiving funding to work on the design, implementation, and rollout of pip's next-generation dependency resolver. (We'll be able to publicly name the funders later this month and in early December.)

pip is the official package installer for Python. pip aims to make it easy for the millions of people who use Python to download and install Python libraries and applications (open source and closed source, source and binary, globally and within isolated virtual environments). It's a foundational component of the Python ecosystem and broader computer software and technology landscape.

This project aims to complete the design, implementation, and rollout of pip's next-generation dependency resolver. This will lower the barriers to installing Python software, empowering users to get a version of a package that works. It will also lower the barriers to distributing Python software, empowering developers to make their work available in an easily reusable form.

Because of the size of the project, funding has been allocated to secure two contractors, a senior developer and an intermediate developer, to work on development, testing and building test infrastructure, code review, bug triage, and assisting in the rollout of necessary features.

We plan to begin the project in Quarter 1 of 2020. We are also interested in senior developer candidates who are available to start in December 2019.

Timeline and budget

Date Milestone
November 11 Request for Proposal period opens.
November 22 Request for Proposal period closes.
November 27 Date proposals will have received a decision.
December 31 Latest date for contracts for accepted proposals to be finalized.
January 2 Latest date for contract work to commence.

Role 1: We seek a senior Python developer, work starting in mid-December 2019 or early January 2020, work ending at the end of May 2020. Pay: $116,375 total (665 hours of work at $175 per hour).

Role 2: We seek an intermediate-to-senior Python developer, work starting in early January 2020, till the end of December 2020. Pay: $103,700 (670 hours of work at $150 per hour), plus $1600 budgeted for onboarding travel and $1600 budgeted for PyCon travel.

What is the Request for Proposals period?

A Request for Proposals (RFP) is a process intended to allow us (the Python Software Foundation) to collect proposals from potential contractors and select contractor(s) best suited to fulfill the specified work.

After the RFP period closes we will evaluate the received proposals based on the evaluation criteria, seek clarification from proposers as necessary, and select one or more contractors to complete the work specified in the scope section.

Note: This Request For Proposal document may be updated to reflect things that we learn during the process. The canonical version and history is available here.

How do I submit a proposal?

First, please read the full contents of the Request for Proposals!

You'll find the instructions for submission, evaluation criteria, as well as the scopes of the two roles, there.