Developers are wondering very often whether they should specialise in one platform or not. In this post we will discuss why specializing is the better choice.
The generalist is a developer who has knowledge in many different areas. For example, he could have knowledge in iOS, Android and .Net development. He likes to look into new platforms and is always looking for interesting new stuff.
However, he is not trying to dig very deep down into one single area. So he tries to distribute his learning efforts on different areas. The result is that he is not an expert in any area.
The specialist tries to focus his learning efforts into one small single area. It is not enough for him to know just a little bit about an area. Instead, he wants to dig deep down.
That means not that he knows nothing about other areas! But in contrast to the generalist, his knowledge is heavily focused into one area. He is also looking into other areas and have a good knowledge about them, but he has by far the most knowledge in his specialised area.
Why Specialisation Is Better
There are a couple of reasons why specialisation is better:
- We are living in the area of specialisation. There is a drastic tendency to hire people for a very specific area. As a result, the specialist has a much better chances to get the job.
- Things are changing very quickly so that it is very difficult to stay up-to-date in just one area. So if you are operating in a very complicated area like software development, you have to have a clear focus.
- If you are the best one in an area, your reward is multiple higher than the reward of the second one. This is known as Zipf’s Law.
- In the short term it makes fun to change focus regularly and to jump from one area to another area. However, if you persevere to dig deep down into one area, the satisfaction of becoming a master in this area is much higher.
When people hear they should specialise in one area, there is always a lot of resistance going on. Here are the two most common objections:
- What if I specialise in one area that will go away one day? In a sector like computer programming there is of course a lot of change going on. However, the most change is going on within the areas. The areas itself are very stable. So iOS and Android development will change a lot, but it is very likely that these two operating systems will dominate the market for a long time.
- There are not so much potential jobs, if I am specialising in one area. That is true. However, your chances to get a job you are very specialised for is much higher! So it is better to be the big fish in the small pond than to be the small fish in the big pond, isn’t it?
Image: @ Olivier Le Moal / shutterstock.com
Simple Programmer: 7 Mistakes You’re Making In Your Programming Career