1. Dynamic programming languages
Whatever part of open source you want to work in, a grasp of some dynamic programming languages is important to getting on, and Python is the basis for more complex programming. Mark Atwood, Director of Open Source Engagement at HP recommended learning it and JavaScript when he spoke at the Great Wide Open conference in 2014, while Perl is another language to have a strong handle on.
2. Database administration
Big data is a big deal in the open source community, with the ability to crunch data essential. NoSQL and MYSQL are popular database admin tools that need mastering if you want to progress in your career, and strong Hadoop skills will also give you an advantage as there is a significant skills shortage in the market.
3. Front end development know-how
Front end skills such as HTML5 and CSS3 are important, particularly with more firms looking to bring in people for full stack development. Employers are also looking for their developers to have strong design skills, to make sure open applications are as attractive and user friendly as possible.
4. Know your way around GitHub and Git
GitHub boasts has repositories for various programming language. It is where developers can come together to get help for projects, contribute to projects, or find out if someone has already solved the problem that is currently stumping them, and is a critical resource for open source developers.
Git is an open source distributed version control system which helps developers manage their projects, and it is a similarly important tool to have a good understanding of, as is the management tool Chef.
5. Know how to find bugs
The key point about open source software is people work together to improve it as quickly as possible, making knowing how to debug existing code essential. Fixing bugs is also a good way to dip your toe into the open source community befpre launching into your own projects. It’s important then that you know how to use a debugger and bug trackers, to keep on top of what you’re doing. Bug trackers include JIRA, Zoho Projects, and SmartELM, although they there are many others out there.
6. Communication
Good communication skills are important in many roles, but open source development is highly collaborative and community, making it utterly essential to be able to communicate well. Developers need to articulate what they want to build, how they are building it, and also how and why they have changed existing code. This means writing clear, detailed documentation. for their programmes, as well as being able to talk through projects to peers, either in person or over email. Forums like StackOverflow are a great way to get help for your problems, offer help to others, and build up a reputation for yourself.