Bounty Procedures


On this page

    This page explains how companies can place bounties on issues, how developers can work on them, and how the Comunica Association manages such bounties.

    Placing a bounty

    Companies (or other types of organizations) that are interested in placing bounties on issues (features requests, bug reports, ...) must follow this procedure:

    1. Company lets the association know they are interested in placing a bounty on an issue, by mailing us.
    2. The association finds one or more suitable developers, and reports back to the company on their expected time frame and cost.
    3. All parties (association, company, developer) negotiate the final time frame and cost, after which one developer is assigned to the issue (if all parties agree).
    4. The company pays the full bounty cost to the association, from which the association claims an overhead of 15%.
    5. After completion (or when the reserved time runs out), all parties (association, company, developer) evaluate the work.
    6. The association pays the bounty to the developer (minus 15% overhead).

    Working on a bounty

    Developers that are interested in working on issue bounties must follow this procedure:

    1. Based on the list of bounties, developers can click on any issue to notify the association that they are interested in working on this issue.
    2. The association discusses with the developer to learn about previous experiences, and what the expected time frame and at what price the developer is willing to work for.
    3. If the company agrees with the developer's conditions, they jointly negotiate the final time frame and cost, after which the developer is assigned to the issue (if all parties agree), and the developer can start the work.
    4. After completion (or when the reserved time runs out), the developer presents the work to the company and the association for evaluation.
    5. The association pays the bounty to the developer (minus 15% overhead).

    The developer should not start working on the issue, before the company and association have confirmed the assignment.

    Management of bounties

    The association manages issues as follows:

    1. A company sends a mail to the association to place a bounty on one or more issues.
    2. The association marks the issue with the comunica-association-bounty label, and adds a footer to the issue to mark that a bounty has been placed, after which the issue will appear automatically in the list of bounties. Optionally, a budget for the bounty can be added.
    3. If applicable, the association directly contacts potentially interested developers.
    4. The association awaits offers from developers with their estimated time frame and cost.
    5. Depending on the urgency of the issue, the association sends all offers from developers to the company, together with any previous experiences the association had with each developer.
    6. The company and association negotiate with at least one developer to agree on a fixed time frame and cost (taking into account the 15% overhead).
    7. The association sends an invoice to the company for the agreed upon price.
    8. After payment of the invoice, the developer can start with the work.
    9. The association assigns the issue to the developer, which will make the issue marked as "claimed" in the list of bounties.
    10. Once the deadline is reached, the association contacts the company and developer to schedule a review meeting.
    11. During the review meeting, all parties discuss the outcome, and potential next steps.
    12. The association pays the bounty to the developer (minus 15% overhead).

    Depending on the specific needs of certain issues or use cases, deviations from these procedures may take place.

    Rules

    1. While anyone is allowed to take up bounties, if board members want to take up bounties, all other board members have to agree, to avoid conflicts of interest.
    2. Once assigned, bounties are expected to be delivered in a timely manner. If the developer does not communicate any progress for more than a week (without prior notification of unavailability), the bounty may become unassigned.