I’ve talked in previous blogs about the importance of community and how this was an important part of Cake. Cake worked hard throughout its existence to be an active part of the technical community we operated in. In this blog, I’m going to explain the benefits of building and being part of a community regardless of the industry you work in.
Being part of the community that you ply your trade-in can be applied in many scenarios. This doesn’t only apply to technology companies, I believe that as a philosophy it goes further than this.
Joining a community to stand out
There’s more and more competition in most of the areas that people operate in and it’s becoming harder and harder to differentiate yourself and your business. What you don’t necessarily want to do is differentiate yourself purely on price, because then your margins drop and the value that you offer is potentially perceived as lower.
In my experience, you want to differentiate yourself and your business by being seen as experts and if you do this, you can command a higher day rate, product price or licence fee, or however it is that you charge.
As I’ve explained in previous blogs, Cake Solutions was a software development company and we began life specialising in the Java programming language which, at that point, was used by many of the Fortune 500 companies to build their software systems. That meant we had to work hard to differentiate ourselves and there was a lot of competition in that area.
We focused on a new framework that, when we started working on it, hadn’t been released. That enabled us to become part of what was initially a small community building this particular framework, called the Spring Framework.
We were lucky we backed the right horse! The framework grew in popularity and at its peak had a million downloads and became the most commonly used framework in the Java world at that point. The community grew with the technology, as it always does because when technologies become more popular the community naturally grows.
Giving back to the community
It’s very important that to become part of the community you don’t just take from it, you have to give back and ultimately doing so will have a positive impact on your businesses in a number of ways, which I’ll come on to a bit later in the blog.
At Cake, we had a strategy to become part of the community and as a result, we regularly shared expert content. That meant when we were solving problems that were interesting, something that we felt other people could benefit from, and where we weren’t infringing on the IP of our clients, we would talk about the technical side of that problem in a blog. We’d also give conference talks and user group talks which, again, were about us demonstrating our expertise and sharing our knowledge to benefit the technical community.
We also wrote books, which were a really important element of what we were doing at Cake. For me personally, sharing knowledge in this way has become an important part of what I’m doing now. I get to share expertise and give back to the community, although in my case I now focus on the startup community.
Giving back isn’t only about sharing knowledge, it’s also important to give back commercially where you can. In the open-source world people volunteering to contribute to projects with their knowledge and skills is essential, but it’s only one part of the puzzle. These projects also require money.
At Cake, we did both. We contributed to the community through blogs, conference talks and user group talks, but we also sponsored events. The money from these events very often went to the company that was the custodian of this particular open-source technology. In the case of the Spring Framework, it was a company called SpringSource. They required money to operate and therefore pay people to carry on working with this technology, as well as all the other contributors from the open-source world who were doing this in their spare time. This was a mixture of effort, expertise and learning.
Joining a community to build relationships
One of the byproducts of sponsoring these events was that we started to build relationships with other engineers and other companies. Even though quite often these companies were competitors, as I’ve said in previous blogs, there are often real benefits to getting on well with the competition. Of course, when you’re competing, you’re competing, but when you’re not competing there’s no harm in working with them on projects, sharing knowledge or potentially even passing work onto them if you’re too busy. If you trust them then it’s helping your clients and it’s helping them. We had this kind of relationship with a lot of our competition.
We would also run technical user groups. When we started, Manchester University used to lend us a room and we would have 30 to 40 people attending the Spring user group in Manchester each month. This was another way of giving back to the community, demonstrating our expertise and spreading our notoriety. It also helped us build relationships with other engineers who were passionate about the technology we used.
Using open-source projects to benefit you and the community
I touched on this earlier, but we open-sourced some of the work we did for clients. For example, with our more forward-thinking clients we might ask if we could share one part of the project we’d done for them with the wider community because we felt it would be really useful for the whole community as open-source components or library. Nine times out of ten, clients would say yes because what we were asking to share was just a fraction of the work we were doing for them and they also realised the importance of sharing it.
Over the years, we also built a couple of open-source projects that people could take away and develop in any way they wanted. One of these projects was called Muvr and it was built primarily by our CTO at Cake Jan Machacek.
For Jan this was a personal project. He realised there was a problem with apps in the gym in that you effectively had to feed most of the information into them via the keyboard. At this point in time, there was nothing automated about them. He wanted to build an app using machine learning that he could teach to understand when you were doing certain exercises, whether that was push-ups, using the cross trainer, weight lifting or whatever it was. The idea was that this app could use accelerometers and various things in the watch to determine which exercise you were doing with accuracy. Then, within probably five seconds, it had already started picking up the data and would ask you if you were on the cross trainer, for instance. You could say yes and it would carry on. It’s very cool and it was long before this functionality was available on things like the Apple Watch.
These open-source projects are often spotted and the code used by other companies. To give you an example, we gained a large client at Cake in the vehicle tracking world that was interested in the machine learning element of Muvr and how it applied artificial intelligence to come up with suggestions of what you were doing. That’s just a brief example of how the skills from one project were transferable to a totally different scenario and sector.
How being part of a community benefits you
As I’ve explained, at Cake we worked really hard to be an active part of our community, mainly from an expert content perspective but also from a commercial point of view. Why would we do all of this? There are many benefits.
The first is that we became really well known for what we did. Notoriety is definitely one thing that you’ll gain from being active in a community and I think it’s fair to say that we made a lot of noise in our particular niche and community.
As a result, when engineers were asked by commercial entities who they should talk to about getting this kind of work done, we were at the forefront of their minds and they’d say, ‘Cake are clearly experts in this area.’ The notoriety led to sales.
Recruitment was another excellent byproduct of this situation. Notoriety doesn’t just help with sales, it helped attract people who wanted to work either on the types of projects that we were working on or in the technology that we were working with. For us, this would be people with Java experience and then we moved into the Scala world as well. That meant we appealed to people who wanted to do functional programming and saw the same potential in that technology as we did, and therefore they really wanted to work with us.
Ultimately, being an active part of our community indirectly led to the acquisition of the company because, again, our notoriety meant we were followed for quite a long time by some of the acquirer’s team members before they approached us. What that meant was that when these guys had the money and were ready to expand their team quickly with a particular skill set, we were at the front of their minds. It all comes back to notoriety.
There are some real commercial benefits from being part of a community, but it’s also just a cool thing to do and it’s like being part of a club. You get to see quite a few of the same people on a regular basis and you get to know them and build relationships with them. It’s really nice to see new people coming in, who really want to engage with you because they see you as a really important part of the community. They know you’re knowledgeable and they want to come and speak to you to find out what’s going on.
Another benefit to being part of a community is that it helps with retention on your team. Being an integral part of the community is important to a lot of software engineers who almost evangelise the software that is their passion. When you give them a platform to be in this community, have a voice in this community and to be proud of who they’re working for then that really helps with retention and recruitment.
How to join a community
If you’ve got a passion for something, whether that’s technology or something else within your sector, start by going online and doing your research. As you read various blogs you’ll start seeing the same companies or experts on LinkedIn, or wherever they’re publishing their content, and you won’t realise it but you’re becoming part of that community automatically just by following these people and reading that content.
When you get comfortable with that then you should have a voice as well. I would suggest you start by writing a blog on something that you’re really passionate about within that community and publishing it. If you do that on a reasonably regular basis then people start following you. At that point, you’ve become part of the community. You can supplement this by going to user groups or conferences and socialising and networking after those events.