Over the past several months, we have seen Decred contractors grow from a group of 10 to a group of over 25 individuals. This growth has been entirely organic, and while the growth has been significant, we are looking to further grow our ranks in the immediate future. Since Decred has a steadily accumulating development subsidy at a rate of DCR 21,456 per month, as of June 2017, this means there is roughly USD 430,000 available per month for project-related expenditures. Currently, we are spending approximately USD 100,000 per month on development, marketing and design, which is less than 25% of the current development subsidy rate. In order to accelerate the development of Decred infrastructure, we are aiming to spend most or all of the monthly development subsidy on an ongoing basis.
While a conventional business might take this as an opportunity to go on a hiring spree, Decred is not a conventional business and will take a different approach. The scope of a cryptocurrency project is far larger than that of most conventional businesses, which leads to a wide variety of tasks that need to be performed as part of building it out. Beyond having a large scope, a cryptocurrency project that funds its own development must necessarily do so by paying its various contractors using its own tokens, which complicates the typical process of hiring employees that occurs with conventional corporate entities. To date, Decred has been operating more as a collective than a corporate entity, where interested parties show up and pitch in, helping out where there is a need using whatever skills they have. Since most Decred workflows are public, people or corporate entities who are interested in becoming paid contractors can show up, do a bit of work, see if they like doing it, and then get paid for their work, assuming the existing contractors approve of their work product. Rather than focusing on resumes, credentials and interviews, we are far more interested in what a prospective contractor can and will do for the project, which can only really be evaluated after it occurs. In what follows, I will go into greater detail about the caveats of becoming and being a contractor for Decred.
First and foremost, all Decred contractors are expected to create regular work product that is reviewed by other contractors, our users and the general public. We are a community of doers, and that is fundamental to the growth of the project. In order to become a contractor, it is typical for a prospective contractor to:
- demonstrate an independent interest in Decred
- understand the basics of Decred by reading documentation or other educational content
- find a part of the project they feel they have the skills to contribute to
- check with Decred contractors before starting work, to avoid duplication of effort
- submit work for review
After the relevant Decred contractors have had a chance to review your work, they will give you feedback and may suggest that you be brought on as a contractor for the project. Prospective contractors should be able to complete the steps listed above with minimal assistance from existing contractors. While we aim to be as inclusive as possible, do understand that we have to maintain internal standards for work product, meaning not all interested parties will be asked to become contractors.
We obviously find it very encouraging to see individuals or corporate entities with strong resumes or credentials who are interested in becoming Decred contractors, but as a community of doers, what a contractor does for Decred matters far more than their prior employers or educational background. It is my personal experience that some individuals and organizations look really amazing on paper and are weak when it comes to actually performing work. To encapsulate this in a quote
“You are what you do. A man is defined by his actions, not his memory.” –Kuato, ‘Total Recall’
Put another way, we place a higher value on fluid intelligence and hard work, while still acknowledging the value of crystallized intelligence.
Managing by doing
It is typical in larger organizations for there to exist a class of middle managers whose main work product is the management of others. While it is inevitable that middle managers appear as an organization grows, we are aiming to minimize the need for middle managers. Those who occupy either de facto or formal management roles within Decred are expected to manage by doing, not by simply issuing orders to others. Managers in Decred will be expected to demonstrate their competence in delivering non-management work product before they are considered a candidate for a management role. If a contractor cannot deliver acceptable work product in a given domain, it is unlikely they will be able to effectively manage other contractors who work in that domain.
As someone who is a business owner and operator, I can understand the desire for some prospective contractors to want a certain amount of authority and respect granted to them as a function of their past achievements, titles, etc. In Decred, authority and respect are earned over time through work, rather than granted as a matter of catering to peoples’ egos or status. We welcome participation from all types of people, but it is not reasonable for anyone to expect that they can simply show up and start bossing people around. We encourage ambitious contractors to take the time to earn their fellow contractors’ respect before attempting to manage them.
To date, there have only been 2 direct corporate contractors for Decred: Company 0 LLC (US) and Eeter Collective OÜ (EE). Company 0 handles the bulk of the software development work and Eeter handles the bulk of the design work. Corporate entities are certainly easier to deal with than a whole bunch of individual contractors, but they also come with the downside of promoting a certain amount of centralization. That said, we are interested in seeing more corporate contractors for the following reasons:
- easier for corporations to deal with being paid directly in decred, compared to individuals
- allows the project to externalize some of the management load, which we will keep to a bare minimum within the project itself
- less micromanagement of individual contractor billing rates
We would very much like to see additional corporate participation with the development work outside of Company 0.
Getting paid in decred
Since the project must necessarily pay its contractors using its own tokens, this creates some logistical challenges for the contractors. Contractors must be ready to either hold their decred or deal with the process of exchanging their decred for other cryptocurrencies or fiat currencies. We are looking for both part and full time contractors, and this issue of exchange is especially important in the context of an individual or corporation that derives most of its income from contracting with Decred. One route for exchanging is to use a cryptocurrency payment processor for invoice payments that accepts decred and pays out in fiat, such as CoinPayments or Wirex. In lieu of such a service that serves your local currency and jurisdiction, a contractor may require 2 exchange accounts one to exchange DCR for BTC, and then one to exchange BTC for USD or other fiat currencies.
Bring your own labor
We have observed that there are many users and contractors that have a wide array of opinions on what the project should and should not be working on at any given time. Listening to and adapting to feedback from our users is key to success as a cryptocurrency project, but there is a vast oversupply of ideas relative to people who can reasonably implement those ideas in the cryptocurrency space. Due to this shortage of implementers, we operate on a “bring your own labor” principle, and this applies to development along with all other areas of the project. Note that we are not telling anyone to not share their ideas, rather that they need to understand that when contractors implement something, it will be a voluntary act on part of the contractors. If you want to see something implemented, you must either provide the labor yourself or convince other contractors it is worth implementing.
Part time versus full time
With many open source projects, it is typical for most of the contributors to the project to work part-time. This is a function of the fact that most projects have limited funding that is based on donations, making it difficult to offer reliable pay for contributors interested in full-time work. In the case of Decred, we have a reliable source of income that can be used to pay contractors on an ongoing basis, allowing interested contractors to work on the project full-time, e.g. Company 0 LLC. Currently, we have a decent mix of part-time and full-time contractors, with most of the individual contractors being part-time contributors.
In terms of a process for becoming a full-time contractor, it is expected that a contractor will start in a part-time capacity and then be transitioned to working full-time after they have demonstrated steady output, good work ethic and an ability to collaborate with other contractors. Since we have the luxury of flexibility with our contractors, the safest way to ensure that we have full-time contractors who are a good fit for the project is to have people ease into these roles.
Decred’s contractors are spread across several countries: United States, Brazil, Slovenia, Italy, Australia, Germany, Estonia, Hungary, Belgium, Russia, the Netherlands and the United Kingdom. That said, most contractors are located in the US, and the EU is second place. We would like to see more participation from outside the US, but we are happy to have new contractors from wherever they are at, globally. The only hard requirement is the ability to do written communication in English since we are not large enough to maintain multiple languages in our contractor workflow at this time.
Dealing with pay rates across multiple countries and regions has been an interesting challenge, especially in light of the rampant speculation in real estate in certain markets, e.g. the San Francisco Bay Area or New York City. The rates of pay we offer individual contractors are typically acceptable outside these handful of locations with particularly high living costs. We have not developed a good solution for this problem yet, but we will be addressing it soon. In the meantime, we suggest that prospective contractors from these high living cost areas contact us to discuss pay rates, if it is a potential issue.
Current roles to fill
While what Decred needs as an organization may not line up with precisely what prospective contractors want to do, there are a number of roles we are actively looking to fill at the current time. These roles are broken into a few different categories, with several areas underneath them:
expected to be familiar with go standard library and tooling, glide dependency management, and writing test coverage
- consensus daemon (dcrd)
- wallet daemon (dcrwallet)
- stake pool (dcrstakepool)
- pull request review and revision
- go test coverage
- full block consensus test coverage
- rpc test harness coverage
- general code audit
- security audit
- cross platform wallet (decrediton) UI/UX
- general code audit
- security audit
- online store payment integrations
- general code audit
- security audit
- novel research that is related to Decred “bring your own project”
- English-narrated screen capture videos of commonly-used configurations
Translation and internationalization
- translate subtitles on English-narrated instructional videos
- translate documentation
- maintain social media presence for FR / RU / PT / CN
- translate website
- support users of various wallets in Slack #support channel
Payment processor and exchange integration
- expand and maintain relationships with payment processors and exchanges
- develop tools to characterize Decred markets and on-chain activity
We are excited to expand Decred’s pool of contractors and continue to build out our system of decentralized governance. We encourage interested parties to reach out on Slack (sign up for our Slack here), Reddit or the Decred Forum to inquire further. If you would like to make a comment, please do so on the comment thread on the forum.