A short comment:
- I'm using the software development area as the most typical applied areas of our computer scientist market. Evidently, not everyone has to like programming. There are other valid career paths where a person can find his vocation. Nonetheless, I want to develop a point that can be applied to any computer technical specialization. -
You start your first job as a programmer. If your muse hasn't abandoned you yet, getting better is your goal. You learn from your co-workers, keep updated in the latest technologies and do all the necessary to improve your technical skills.
Now, becoming a better programmer is not an altruist activity. Even though for some of us programming is like playing intellectual games; solving puzzles we may say (I know some friends that find it relaxing). We don't do this for free. We chose a career with the expectation of finding profitable opportunities, whether we are employed or want to start our own business.
That is the general case of almost every career. Our capitalist impulse moves us to do better in whatever we do for living. And there is nothing wrong with that, we all have responsibilities and want to increase our life quality. Therefore, there's a strong correlation of our professional growth with the increase of our retributions.
But if you have some years working in a software company, you know there's a point where your leadership skills can take you in another direction, a little or big detour from the technical path. It can start by becoming the technical lead of you team. At this point you still have the best of the two worlds. You can still be involved in the technical aspects of the project, and at the same time sharp those soft skills to handle a team and resources. But once you have tasted the sweetness of the management path, it becomes some difficult turning back.
I want to clarify that I don't see any wrong with taking the management career path. A lot of people had envisioned their careers having in mind that the programming or technical work is just a step that they have to take in order to ascend in their professional wroth to become managers of their respective fields. That is fine. In order to be a good professional, you don't have to necessary be a specialist in a technical area. What I do find wrong is the limitations we have in the local market to take a path that some of us find attracting, but that unfortunately, due to our need$, most of the time we are tempted to take the easy path.
Why do I say management is the easy path? I can give you a list of reasons (take in mind I speak in general terms):
- Most of software related companies favor this career path by offering more ascent opportunities with higher salaries than technical positions.
- Although it depends of the kind of work; and mostly personal attitude. A manager can become a lazy person and still accomplish his basic activities. Assign tasks, supervise the daily work, create a presentation, attend meetings, etc.
- The management path has more visibility for the upper management. The technical people is seem as merely ants or engine parts that can relatively easy be replaced. By the other hand, when someone important in high levels of management leaves the company, this is perceived as an important new or great gossip (depending on how this is handled by the company).
Perhaps, I could be wrong at some level on any of my appreciations, but one thing that backs me up is the general opinion of the programmer's community. Grab a group of programmers and ask them how they feel about the recognition they receive compared to the management positions, and most of them will tell you that is very unbalanced. I know this is also an issue in the old continent as I once heard in a podcast from Java Hispano (founded by Spain computer scientists), where very experienced people from this organization who participated in a JavaOne conference, described to the listeners how much they were amazed (jaws touching floor), when they asked, for curiosity, how much a programmer was paid in very important software companies that were participating in the conference. These companies even highlighted the point that their programmers were better paid than those in the management positions.
I don't pretend just to be whining about our “pitiful” situation. I just wanted to do some reflection and come with some ideas. So returning back to my initial statement. What do we do when we feel like we had reached a point where we cannot go any further in our growth inside a company, without abandoning the technical area?
Some ideas:
- Be a rock star. That is, become a super technical guy, a super saya of the programming. When you shine is improbable not to be noticed.
- Be a revolutionary. Try to change things in your company by becoming a leader and defender of the community.
- Join forces. A bit dangerous! Sometimes is hard to serve two masters. But I guess with discipline you can take the management side and at the same time still be involve with the tech world. Maybe do the second outside the office.
- Evaluate moving to another company. A careful-well-thought-required move. If you go to an interview, make sure to ask about the career paths offered in the company.
I suggest not rushing in becoming a manager with a fancy office. Is that something hard?
No comments:
Post a Comment