Historically, I've not really given much thought to my job title. I'm a good software developer. I know it. My employers have known it. My CV speaks for itself.
In the previous team I was one of four software developers. These were very senior, very experienced, very talented developers. A crack team. And each person's job title was "Software Developer". I liked this; our team had no hierarchy and the job titles reflected this.
All too often a job title gives a false impression of your importance or significance to the organisation. Or a faux job-title change is given in lieu of a payrise to keep a developer happy. Too often, job titles lead to silly political games.
But now I'm on my own. I am the software team. And I've pushed for a job title change. I'm now a "Principal Software Developer". Why did I push for this change?
- It describes what I'm doing better. My working responsibility hasn't changed much. I'm still responsible for coding, for architecture and design, for integration, for the build system, for planning. However, I'm now the only one responsible for it.
- It lets others in my organisation (they're primarily in the US) know who I am and what I'm doing a little better. It makes my role clearer to them.
- It lets others I meet professionally know what I do better.
- When the job situation was getting complex, I got job offers with this title. This is what other companies would be calling me. If I want to change jobs in the future, having this job title now will help potential employers understand my current level of seniority.
- I specifically chose not to be a "Principal Software Engineer". I think the whole "Engineer" job title for a programmer is a bit of a minefield.
- Vanity. Hey, it does sound like a promotion. And it sounds kinda nice, doesn't it?