08 May 2019

As a Software Engineer and usual participant in different Tech communities, it was always a priority for me to involve in the Tech community the company where I work. I really believe it's a win-win for the company and for the community but I also know it's quite complex.

Have you ever do it something for the first time? If someone appears from nowhere and says you suck on that, probably you will lose the interest very soon. Even if that person approached with good intentions or saying the truth, the timing is crucial here. This happens all the time to opening companies. They stop the process and it's a pity.

As co-organizer of local JUGs and conferences, I was asked several times from different companies about this. It's hard to answer, there are so many things involved. So I prepared a list of possible answers to help you in the path to collaborate with the community.

Have clear your reasons

There a lot of reasons for a company to start collaborating with the Tech community. Just choose whatever makes sense for your company. But they must be valuable. In this case, pro-bono work is fine for individuals but not for companies. There is nothing wrong in analysing it as an investment.

There are mainly three reasons for most of the companies:

  1. Recruiting. If you want to hire the best engineers you can find, go to the Tech community. They aren't the best only for their technical skills but also for their soft skills: they know how to speak in public, make a successful network of collaborators, organize events, etc. All those things are quite practical in any company.

  2. Help to grow your own engineers. Have your own people attending meetups, conferences, katas, etc. will help them to have different ideas, see what's working in the industry, etc. If they participate actively (as speakers or organizers), they also will grow as professionals and they will be busy and motivated so it will help with retention.

  3. To find new business opportunities. I lose the count of how many of those I found since I started to collaborate. This is a real thing. Just let your engineers speak with others and they will find solutions to their problems. That's what engineers do.

You may have others. It doesn't matter. Just make sure they are clear for your company and you act accordingly to them.

How do we start?

Baby steps. Never start with a big program or a big budget. It's very important to be cautious in the beginning. Most of the people don't know your company or they have an idea quite negative about it. That's normal. You never have collaborated with the community before and probably have rejected candidates, fired employees, etc. and nobody is sharing the good things. It's time to change it but it will require time. Be patient.

My advice here it's to find a non-profit local community and ask the organizers. You will be surprised by how helpful they will be without any type of hiding interest or retribution.

It should be local, it's better to start locally and grow from there instead of jump directly into national or international events. It doesn't matter your size. People are connected. When you go to an international conference, the organizers will have local contacts and they will ask so it's better if you make your homework first. Everything will be easier.

Also, choose your first community carefully. It should be related to the technologies you are using and also non-profit. Most of the Tech communities are great and there aren't hidden interests but it isn't always the case, especially if they aren't related only to Technology (entrepreneurship, blockchain, etc.). They aren't bad but they aren't a good start because someone may take advantage and have her own interests. If they aren't helpful or just ask for money, jump to the next one.

You will have time in the future to come back a start a deeper collaboration once you know who is who in the community (and no, sadly Twitter and popularity doesn't help on that).

Should we organize our own group/event?

Some companies like to start with their own group or conference. It usually doesn't work well in the short-term. My advice is to start contributing before to create something from scratch. Again, it isn't about your size or expertise, it takes time to do things well so start small and grow from there. Think about what's better for your interests. The ego never helps.

It's a lot better if you name some of your engineers as ambassadors in the Tech community. It's a partial-time role. His mission is to establish the link between both words: help the communities from the company and promote the community inside. Make sure they can decide and you are listening when they give their opinion. If a possible sponsorship is evaluated only by HR, you are missing important information.

What can we do?

Once you have a connection with the organizers they will start to propose different types of collaboration. If they are good organizers, not only for their own community, for others too. Don't be surprised if the Java guys ask for sponsorship in a PHP conference ;-)

The easiest thing is event sponsorship but most of the companies are doing it wrong. It isn't about giving money for a list of services (a talk slot, publish your logo, etc.). Those things are ok but they aren't enough.

If your company is going to be a sponsor of a conference, there are things you should do:

One of the best things in a conference it's sending some of your engineers to make a talk and share their experiences. Everybody loves that, people will provide great real feedback and will get interested. It's a win-win and quite easy.

Social media and blogs

If you don't show something to the world, it doesn't exist. Social media is important. Most of the HR departments are quite familiar with Linkedin, but most of the engineers receive their news from Twitter. So start to promote your projects, events, communities, etc. and show a more human view of your company. But be careful: in case of doubt, don't publish it. Nobody wants to deal with trolls.

If you don't want to pollute your Social Media mixing messages for engineers and customers, create a new account specifically for that. It would help a lot but make sure you keep it alive!.

There are companies also launching an Engineering blog. It's a great idea which helps to promote your brand, but also to create some type of shared identity in your company and gives deserved credit to your engineers. The only problem: it takes time. If you do it, plan it carefully for the long-term.

Open Source

Open source is another good way to collaborate with the community. Just open a GitHub organization and let your engineers know they can publish software there. It would need some reviewing and validation process but it's a great way, especially if they start to work in the open, not just publish the final outcome.

Another way is contribute to open source projects. Part of the dedication of some of your engineers can go to fix bugs, create new features, documentation, etc.

Not only will help to collaborate with the community, but it would also have a positive impact on the company improving quality, performance and talent retention. That deserves another blog post.

Summary

There are a lot of ways and reasons to collaborate with the community. Ask other companies: worth it. But it isn't as easy as you may think. So start small and ask people with experience and good intentions. They will help. And remember, your engineers are the best ambassadors you may have in the Tech community. Empower them!.