Made in NYC with ❤️
#KnowYourDev: How to Evolve as a Developer Without Becoming a Manager
The next topic that we tackled with Mario was the evolution of being a developer. Once you become a qualified developer, what is next for you? What is the next step? After being in the field for over 12 years, Mario says that most developers are comfortable being where they are. “80% of developers just want to code; they don’t want to manage,” he says.
When we pressed him for why this is, he explains that salaries for developers are really good. It is usually not even worth taking more responsibility on as a developer. In fact, working up to a management position in a developers department does not really increase the salary exponentially. The gap is not big enough to make it worth it for them. Developers also tend to like to work alone and keep to themselves as a rule of thumb, so managing can be somewhat intimidating. We asked him what developers can then do to evolve. He gave the following advice.
Generalist vs. Specialist
When you’re a developer you usually tend to have 2 ways to evolve. “Either you become a specialist or a generalist” says Mario. As we touched on in the previous article, a specialist is familiar with one language and works exclusively in that whereas a generalist has learnt more than one language to work in. There are pros and cons that come with both paths, especially if you decide to work in a start-up environment as opposed to a large corporate.
If you decide to take the specialist path, you can opt to become a mentor for new junior developers or to continue on your own career path. Being a generalist also provides you the choice of being either, however, being a specialist does provide you with more opportunity to develop exclusively in your chosen path. If you don't want to be a developer lead or manager, Mario highly recommends taking the career of being a specialist in your specific language or platform and working your way up from there.
Working Your Way Up the Ladder
Here, you can turn into a team lead. Being a team lead is the next stage for developers who don’t mind managing people and more scope outside of just the language. At this stage, you don’t have a ton of knowledge and experience, but you can build that up as you go along. In this chosen path, you can also learn other managerial skills like budgeting, delegation and task allocation.
From the starting-point of being an iOS developer, you can also choose to branch off into becoming an iOS Architect. In this role, you will be digging deeper into the more defining components of an app, and how they will communicate with each other. This role is more of a supervisory role as you will need to develop an in-depth knowledge of how each component works. Others in your team will be doing the actual coding, while you, as the architect will only supervise the architecture. It is your role in this to make nobody strays too far from the definition and basis of the project. It is worthwhile to note that only big projects will offer a capacity for this role.