How to achieve your software career objectives
Many of us work for an employer to do the thing we like most: developing or designing software. We don’t have to worry about finding and managing clients; we don’t have to chase payments and they handle most of the administration for us. Because we like our job, we put more effort into it and try to exceed expectations. The company recognizes us for this by giving us praise and prestigious company awards, combined with a fancy new title and a small raise. When it’s time for the yearly evaluation, the company selects a target for us for the upcoming year (e.g. get a certificate in technology X), which of course we try to achieve so that we might get that long-awaited big jump in pay.
Next year comes around, and turns out that “big jump” turned out to be a small jump. This is a big letdown. We also notice new hires start at a higher pay scale than us, even though their skills are the same. And we ask ourselves…
Wasn’t loyalty going to pay?
You and your business
When you’re self-employed, it’s quite clear that you are a business where you’re responsible for deciding your own path. As an employee, not so much…
But let’s go to the basics of what it means to work for a company. When you are working as an employee for a company, you are in a business-to-business relationship. Yes, you are your own business, even if you’re an employee. You are delivering your services to the company, and in return, you get compensated. Over time, your value to the company can or will increase, so naturally you can negotiate a new salary. You and only you are responsible for your own business, so it’s up to you to watch your value for your employer and take initiative. If they are happy with your services and your salary works out for them, and you are happy with that salary and enjoy the other perks that come with the job (training, holidays, …), then basically you have a successful two-way business-to-business relationship. If either party is not happy anymore with the services or associated salary, then it’s time to part ways.
Be Your Own Business
Have a vision
Do think about what your career objectives are as a software engineer and what your career can do for you. Is it fame and glory, money, impact, personal freedom, …? Come up with a vision for your own business. It will help you determine what companies to work for and which projects to work on. Also, have your salary package reflect your business’ vision. Maybe you want more personal freedom and gladly trade money for more vacation days, or maybe you want fame and glory and rather have your name and achievements etched in a granite stone for all to watch! Make it your choice.
A healthy relationship with your employer
When you work for an employer for a long period, it’s easy to forget that you are in a business relationship. You build friendly relationships with your co-workers and even superiors, and some others at the company even call it a family.
This is when you are the most vulnerable, because reality might hit you one day with no raise when you expected it, or even layoffs you didn’t see coming. Also, getting too friendly might cause you to back off from asking for a raise, because you’re afraid that it might impact the friendly relationship.
Therefore, always keep in mind that you are in a business relationship. You represent your own personal business with your own interests, and the company you work for will also have its own interests. So negotiating is an important and normal part of aligning those interests. It’s also a relationship that might end or go sideways at any point in time, for reasons which seem just or totally random. So don’t have the illusion that you can sit on your job until you retire, there is no guarantee.
Career Tip: The Company you work for isn’t a family, it’s a business.
However, with all this said, invest in good, friendly relationships with those you encounter in your job. It makes the job so much more fun, makes working together much more efficient, it widens your network of interesting people and having those connections might come in handy one day.
Does loyalty pay?
Loyalty can open doors that otherwise won’t open, can give opportunities which otherwise wouldn’t arise and might make it easier climbing up the ladder at your company. It can also help keep a commercial relationship together when either side has a rougher time. But loyalty alone is probably the worst strategy for building a successful career, because it can and will work against you.
Career Tip: Loyalty should be the perceived consequence of a successful two-way business-to-business relationship, where both parties enjoy working with each other over a longer period. But loyalty itself should not be the driving factor.
So no, loyalty does not pay. But a successful business-to-business relationship where both parties benefit does pay.
Do awards and praise matter?
Non (or low)-monetary awards, titles and praise are the easiest for a company to give. It costs them almost nothing and people will feel good when they get one (because, hey; they get recognized!). When you get one, you might even feel so good about it you lose sight of your actual value to the company.
So, as being your own business, let’s think about these rationally and ask yourself the following questions about the title, award, or praise you got:
- does it have any relevance outside the company you’re currently working for, so that it has a lasting effect even if you (have to) leave the company?
- if it’s a title, does it come with more responsibility? And if so, are you compensated more for it?
- if it’s an award or praise, does it translate over a relatively short time to a better compensation package or a significant onetime bonus?
Don’t deceive yourself when it doesn’t check either of these boxes. Kindly accept it (because they might give it with good intent), but don’t see it as anything meaningful.
Performance reviews
Yearly performance reviews are typically when you sit together with your employer to discuss your progress, your current and new objectives and potentially a promotion, raise, or bonus. Many of us go into these evaluations rather unprepared, and leave these meetings with objectives set by the employer and maybe less-then-expected results in terms of a raise or bonus.
However, this is really a moment you should be properly prepared for! As your own business, you want to set the narrative and get the initiative. Try to do a performance self-review and integrate objectives that help both your personal business and the company. Come up with arguments and evidence on why you deserve that (higher) raise/bonus. Argument why you’ve reached the next level in your developer track and ask for the promotion yourself. Do you need company resources to reach that next level? Then try to come up with suggestions or the right questions to ask.
Example of a performance self-review
Assume you currently have the junior back-end engineer title, but your personal aim is to one day build your own small SaaS product. Anyway, back to the current reality, your yearly review. So you make an evaluation of how you’ve done during the past year. Technically, you evolved a lot and during the past half year your work didn’t require the help of a more senior developer anymore. Code reviews didn’t require multiple iterations, and you even contributed to the design of a new feature. Based on these criteria, you feel you are ready for a promotion to mid-level software engineer, which should come with a raise. Now that you have that solid back-end foundation, you want to spread your wings to full-stack development (SaaS projects need a UI you know!). You’ve noticed that the company you work for is having a hard time attracting front-end developers, so this might make a nice alignment of goals. So let’s see how we can define this in a performance review example.
Review of past year
- able to work independently on assignments within the team (ref: assignment X completed successfully)
- able to gather requirements and bring up issues proactively
- able to help on design of new features (ref: feature X)
- ready for promotion to mid-level engineer
Objectives for next year
- Become a certified developer in FrontendFrameworkX
- Help the front-end team make better use of back-end APIs (become the glue between teams)
Resources (required to achieve objectives)
- Follow company-payed course on front-end fundamentals and best-practices
- Book about FrontendFrameworkX
Career Tip: Be in control of your career path and plan steps for improvement.
Invest in yourself
Ideally, your daytime job should be in line with what you want out of your career. This alignment is something to aim for, because it makes your job an investment for the present and the future. It also allows you to use company resources (trainings, books, …) to improve yourself, because it will benefit both you and your employer.
But sometimes your goals and those of the company won’t line up exactly, meaning that you can’t make use of company resources to achieve some of your own goals. So you’re stuck, right? No.
If there’s a major mismatch between your own goals and how your employer fits into that picture, then it’s probably time to change jobs. If that’s possible in the short term, then it will cause a quick boost of your own goals. But that’s not always an option. Maybe your target is to specialize in a different field within the software industry, for which you need to learn completely new skills. This means you’ll have to allocate your own time and budget to improve these skills. Don’t think twice about paying for a good book or course that will advance your career. Time is the most valuable commodity, so if it means you have to invest less time to achieve the same goal, then paying for it is an easy decision. Yes, you can struggle your way through it, but that’s not a good way to operate your own personal business.