Want to attract the best engineers? Open code

“Smart developers love working with smart code. Opening quality sources, you attract talents »3-3320. 3r3208.  
3r3208.  
3r311.
3r3208.  
[i]
Illustration Kevin Ma
3r3208.  
3r3208.  
“Do you know about open source Facebook projects?” 3r3208.  
3r3208.  
Such a question was asked by engineers James Pierce, former director of the open source program at Facebook. He studied the reasons why they came to the company. According to his presentations at O'Reilly's Open Source Convention, two thirds of Facebook engineers knew about this program before joining the company, and half They said that this "had a positive effect on their decision to work on Facebook." 3r3208.  
3r3335.
3r3208.  
Facebook is not alone here. Regardless of the size of the company, open source is one of the best ways to attract the best engineers. We analyzed 30 leading American technology startups (by the number of applications for vacancies) for AngelList in the history and found that more than half of them are hosting open source projects: 3r3208.  
3r3208.  
Want to attract the best engineers? Open code 3r3208.  
3r3208.  
Properly apply open source to attract engineers - the whole art. It is not enough just to publish the repository on GitHub - and hope for the best. In order to benefit recruiting, you should approach each open source project from the position of a marketer. 3r3208.  
3r3208.  
3r3190. 1. Write a readable code
3r3208.  
The point of opening the code is for the developers to study it and, possibly, contribute. For this code should be written as clear as possible. This means: 3r3208.  
3r3208.  
3r3154.  
3r3162. The ability to maximally refactor
 
3r3162. Adherence to style conventions for names, indents, and so on.
 
3r3162. Replacing private information with environment variables
 
3r3162. Commenting on individual fragments
 
3r3208.  
Tool react-beautiful-dnd for creating drag-n-drop interfaces (in Trello style) on React is a good example of well-written open source software. 3r3208.  
3r3208.  
The project structure is modular, the code is clear and commented out carefully: 3r3208.  
3r3208.  
3r3208.  
3r3208.  
When you open the source, approach each file as if the reader did not see the rest of the code base at all - as almost certainly it will be. The example above shows a simple export, but each function is explained in the comments, the code has a consistent style and talking property names that accurately reflect their values. 3r3208.  
3r3208.  
As a result, the repository has more than 1?000 stars on GitHub and commits from dozens of participants. The conclusion is simple: the easier it is for third-party developers to understand your code, the easier it is for them to contribute. 3r3208.  
3r3208.  
3r3190. 2. Write effective documentation
3r3208.  
Documentation is your advertising booklet. At first glance, it must convince the engineers that your project is worthy of participation. To do this: 3r3208.  
3r3208.  
3r3154.  
3r3162. Formulate the project value 3r3163.  
3r3162. Explain all aspects and processes so that the contributors do not have any more questions 3r3163.  
3r3162. List technical specifications, dependencies, and licenses 3r3163.  
3r3162. Provide easy access to reference material for special cases
 
3r3208.  
Project 3r3127. Annoy
(Approximate Nearest Neighbors Oh Yeah) from Spotify - a library that "searches in space for points close to a given query point" is an example of very good documentation. The README file tells how to install the library, the environment, contains code examples, lists dependencies, and is deeply immersed in software logic. 3r3208.  
3r3208.  
It also compares Annoy speed with other nearest-neighbor libraries:
 
3r3208.  
3r3208.  
3r3208.  
Only one page of documentation gives developers all the necessary information to decide whether to participate in this project. 3r3208.  
3r3208.  
3r3190. 3. Promote the repository as 3r3191 product. 3r3208.  
In 201? over 8?000 repositories were published daily on GitHub. To distinguish your project from millions of others requires effort and strategy. This is not so different from the launch of this product. Consider the following opportunities to promote a new repository: 3r3208.  
3r3208.  
3r3154.  
3r3162. Popular sites: Hacker News, Reddit, Tech Ladder
 
3r3162. Related communities: Product Hunt, Gitter, Dev.to
 
3r3162. Channels where you already have an audience: mailing lists, social networks and much more
 
3r3208.  
You can be creative and apply other marketing tactics. For example, the command 3r3r1616. Hack4Impact
(a non-profit organization that creates software for other non-profit organizations), conducted 3r3-33170. training workshops
in local universities, to participate in which students had to use their new library. So forks and stars quickly appeared at the repository. 3r3208.  
3r3208.  
If a company is interested in narrow specialization developers, then promotion is even more important. The startup Wallaroo Labs which helps customers deploy large-scale data applications, a code base in a rather strange language called Pony. When the company over the past two years, opened the entire code, then actively promoted the repository, wrote articles in blogs, gave interviews and spoke at conferences on how to build the entire code base on Pony. 3r3208.  
3r3208.  
Wallaroo development director Sean Allen said the campaign was effective: “Many of those who interviewed us are people who want to work for Pony and[заинтересовались]because our codebase is Pony's largest codebase in the public domain. ” 3r3208.  
3r3208.  
Present your repository with a product, and engineers with a target audience. 3r3208.  
3r3208.  
3r3190. Why are the best engineers advocating open source
3r3208.  
“It’s just necessary to open the source if you want to hire the best people in the industry,” says CTO 3r3194. Artsy 3r3r. Daniel Dubrovkin. He explains that “personal technical brands have become very, very important for individual developers. Engineers today increasingly want to openly demonstrate their skills, rather than hiding them. They want to work with open source software because it gives them a certain reputation. ” 3r3208.  
3r3208.  
To do this, Dubrovkin decided that his development teams would work with open source by default, and in order to reject such a standard approach, the engineer should clearly explain the business reason why the code could not be published in public access. As a result, most Artsy materials are now freely available (even 3r-?300. Materials for hiring 3r-?311.). “The best companies change their business requirements according to the desires of individual developers who want to build their personal brand,” he said. 3r3208.  
3r3208.  
Dubrovkin’s recruiting department now uses as a marketing advantage the fact that Artsy engineers are required to publicly share the code with their name, and this advantage is valid not only for his company. 3r3208.  
3r3208.  
“Smart people love to communicate with other smart people, -
Wrote 3r33211. Tom Preston-Werner, co-founder of GitHub. - Smart developers love working with smart code. Opening quality sources, you attract talents. "
+ 0 -

Add comment