Using the power of communities to stay relevant
As software engineers, we need to stay on top of a continuously evolving industry - the stronger and more diverse our community network of engineers and developers, the greater chance we have to remain relevant.
Communities are popping up in all areas of our lives because people no longer just do one job or hobby, they have a number of passion projects and interests. Increased connectivity and social media have enabled this. Finding a good community is like finding your perfect match; when it's good, the most amazing innovations can emerge from your collaborations with like-minded people.
We often think of communities as formally established groups but communities can also be much smaller groups of people that share similar ideologies. Often these people choose to define their connection in a way that reflects their social identity and practice. The most rewarding thing about communities can be the knowledge sharing and the personal networks that develop from them.
At first, it may seem obvious as to why it can be valuable to interact with the larger development community; to share knowledge. But, there are other advantages that are not always obvious until you are part of a development community.
1. Sharing passions, ideas, and goals, can accelerate your personal growth exponentially. But the first, most important, trick to getting the most out of a community is not to look at it for what you can get out of it, but rather look at what you can offer. Networking is a two-way street and the second you can show yourself to be someone who is always willing to help and share knowledge, the quicker you will be able to build your network.
2. The software industry moves at an incredible pace. While developers may be exposed to many of these trends in their day jobs, there is always more to learn. For instance, have you considered ember.js as a tool when you hit the limits of your current Single Page Application framework and do you know what pitfalls to look out for? Or, do you know what options exist for bringing your next application into the augmented reality or virtual reality world of the future?
3. In the same vein, because of the continuous evolution of the industry, troubleshooting is as much a learning curve as learning new languages and technologies. Communities provide software engineers with an experimental space to learn and also troubleshoot with like-minded people. The advantages of having a space to troubleshoot don't just apply to work in community forums, but also problems you may come up against in your day-to-day working environments. You’ll find you are able to work through problems more quickly, which will ultimately add value to both your career and the projects that your employer is undertaking. Not to mention the insights you will bring to your community will increase exponentially.
4. One of the less obvious but most compelling advantages of being part of a community is that it can give guidance to your career. Being in touch with the latest changes in the industry will help you to make strategic decisions about your future career; where you want to be three years from now, what skills you need to get there, and most importantly, how to stay relevant. Fostering relationships in a community will have a positive effect on your career; who knows who you may meet?
We’re lucky in South Africa; we have access to a number of international communities such as GitHub and stackoverflow, but also some locally emerging communities such as source.technology. But the User Groups are possibly the most active. Groups including DevUG, Jozi-JUG, and Android UG are all very active and have a high number of developers who attend events.
There are also a number of conferences in South Africa which are being created by the community such as DevConf and JSinSA. Attendance at these kind of events is sky-rocketing.
Within companies, Slack is also becoming hugely popular, and channels such as such as ZA Developers and ZA Tech enable smaller communities to emerge and interact all the time. After all, a community isn’t an official group with a name, it’s a collection of like-minded people, so sub-communities can exist anywhere.
We, as developers and leaders in the industry, need to take ownership to drive these initiatives and lead by example. We have so much knowledge to share and so many upcoming developers who are hungry to share in our knowledge. There is a shortfall in good developers in South Africa but no shortage of jobs for great developers. Let’s build and participate in communities to help bridge this gap and grow to our full potential – as individuals, and as an industry.