Software engineers do an extremely important job. They can also cost a company a lot of money. If you are looking for an engineer with enough experience and knowledge, you cannot afford to skimp when it comes to payment. Matching the market rate is not enough when trying to land a skillful engineer. Many companies are starting to offer salaries way above market rate and some even include extra incentives like gym memberships or free parking to make the job offers more appealing.
The ugly truth is that at one point or another these companies fail miserably at staff retention. Naturally, these strategies might lure a few employees at the beginning but will it make them stay? All of this special treatment shown towards engineers might create resentment throughout the rest of the staff. This type of negativity can hurt productivity and performance because employees may start thinking that they are being treated unfairly. Not only are you wasting money in trying to retain engineers that may or may not stay, but also hurting other parts of the organization.
The best way to approach this problem is to understand the average engineer in today’s working environment.
Supernatural worker or average Joe?
Engineers often have difficult tasks that they need to complete and they can be put under severe pressure. One day they might be praised for completing a simple task but the next day they can be reprimanded for not fixing something ‘simple’. These types of reactions often result in a lack of understanding between a layperson and a software engineer. Engineers can also be criticized for not wanting to make certain changes even if these changes will destabilize an entire system.
In reality, software engineers are just like everyone else. Some tend to be more introverted than others. This it is largely due to the technical and often difficult nature of their work. It takes a lot of concentration and focus to code. It also requires a lot of studying and practice in a quiet environment. Anyone determined and willing to develop their problem-solving and analytical skills can become an engineer. More importantly, you don’t need a special type of magic to convince them to work for you. You just need to know what their needs are and appeal to them. You could trade a gym membership for a free pass to an Apple convention, for example.
Performance and Reward
On the topic of rewards, how would you go about linking performance and rewards in such a way that it appeals to the engineer? Studies have shown that monetary rewards do not often lead to increased performance especially not if it includes complex cognitive skills and creative thinking. It may even lead to poor work performance. The goal is to get to the reward and not deliver a high standard of work. The same study has also proven that monetary rewards seldom leads to increased job satisfaction.
Daniel H. Pink’s study, Drive, is regarded as one of the most successful studies in the area of performance and reward. He identifies three factors that can lead to retaining employees: the opportunity to be self-directed, improving in the job, and having a purpose in one’s endeavors. It shows that once a person’s financial needs have been met, money becomes irrelevant when it comes to job satisfaction. Keeping engineers motivated and engaged makes a bigger difference than paying them a salary above market rate. This is the next criteria to consider.
No two people are the same but engineers do share common traits that can be applied to most of them. Many of them are curious and they are excellent problem-solvers. They enjoy challenges and they welcome the opportunity to solve the unsolvable. For some, this can be expressed as improving an already working system and for others, it could mean building new software from scratch. At the end of the day, engineers want their art to be excellent by going narrow and deep into a specialization or by going shallow and wide across a range of disciplines.
This means that the manager must build a structure where learning and self-growth are possible. More importantly, it demands the utmost respect for the intricacies of software engineering. The manager should be sensitive to aspects such as sensible time frames and the quality of the final product. Even if this type of structure is in place, it is still not guaranteed that the team will find the work exciting. An example is a legacy project. The team will want to work on a newer project, and they still have to maintain the old one.
The manager is then in a position where they can strike a balance between the work done on the old project and work done on the new project. There can be a rotational basis, where members of the team get to explore the exciting parts of the new project while still maintaining the old one. For this strategy to work, the manager will have to understand the goals of every engineer. It goes beyond simply understanding the software, rather creating a working environment that is conducive to the needs and desires of the software engineer.
The working environment of the engineer is the most important aspect that managers should be aware of. Pitch the opportunities that your company can offer the engineer. This will make it easier when discussing salaries and benefits when closing the deal. As soon as the desired engineers are on board, make sure that they know of these opportunities and that they can learn from them. This strategy will not eliminate any competition. You are always going to have to compete for top talent. This will ensure that your company creates a learning-friendly environment for potential employees.
Rabbollini, Omar: Builtin, 17 June 2020.