The work of a software engineer frequently involves the need for long periods of intense mental focus and concentration. Whether itís designing a new platform, implementing a new framework, fixing a complicated production issue, or learning a new programming language, a software developer is under constant mental taxation. The fast-paced environment can be stressful for many engineers and the rate of employee burnout in the technology industry tends to be quite high.
The type of oneís motivation is often a factor when considering employee burnout and stress. Extrinsically motivated developers may have pursued the profession because it was well paying, or because they perceived it as a glamorous career. However, this type of motivation is difficult to sustain for extended periods of time.
Intrinsically motivated engineers are drawn to the profession because they love to solve challenging problems, they enjoy learning new things, and they are fueled by the numerous opportunities to increase their knowledge and skills. They explore new programming languages and frameworks. They remained mentally engaged and are continually exploring new ways to solve problems. They attend conferences, they have hobby programming projects, and they contribute to open-source. They do all of these things because they find immense joy in each of them.
Extrinsically motivated engineers are less likely to engage in learning activities outside of their normal work day. They donít experience intense satisfaction from solving problems and it is more difficult to keep them motivated. These engineers often do the bare minimum needed to stay employed. They require constant oversight and guidance from management, and tend to negatively affect team dynamics and morale.
Changing the motivation from intrinsic to extrinsic can be extremely damaging. Daniel Pink wrote an entire book on this topic, Drive: The Surprising Truth About What Motivates Us. By changing our motivation from intrinsic to extrinsic, we can actually reduce performance in creative and knowledge workers.
I encountered a situation at one point in my career that illustrated an interesting observation about intrinsic verses extrinsic motivation. I was working for a small software company that had experienced significant growth. During this time, it became evident that the existing business processes werenít scaling well. As a small organization, weíd done significant custom development. Almost every customer had their own code branch. Each branch required separate testing and development effort. As we grew, the operational overhead of prolific customization was taxing the engineering staff.
Through these growing pains, the engineers remained engaged. They were motivated by the numerous challenges we were facing. Many were putting in long hours trying to fix issues and build new functionality. However, the organization was still falling behind. As the situation approached a crisis point, the founders were desperate. However, they werenít sure how the situation should be fixed.
They came up with an interesting strategy. They instituted mandatory ten-hour days for the engineering staff. The solution was to work harder and longer. The great irony of this decision was that many engineers were already working ten or more hours a day.
The resulting behavior was a study in human psychology. The founders inherently changed the motivation from intrinsic to extrinsic. Developers were no longer working ten or more hours a day because they were motivated by the satisfaction of solving extremely challenging problems. They were working ten hours a day because there was a threat of punishment if they chose not to comply.
By changing the motivation type, they unintentionally caused a decrease in production. Engineers began taking significantly longer lunch breaks and were less efficient during the day. They spent more time surfing the internet, or engaged in more casual conversation with co-workers. Anyone who had been working more than ten-hours a day immediately cut their hours to the mandatory ten.
The policy was in place slightly longer than a month. The results were a decrease in overall productivity, while being extremely damaging to organizational morale. Luckily, the founders realized they needed an outside perspective and hired a Chief Technology Officer externally. The new CTO immediately removed the mandatory ten-hour day policy and tackled the scaling problems from the root cause, which was too much customized development.
However, even after the 10-hour-day policy was discontinued, the psychological effects remained. By briefly changing the motivation to extrinsic, a significant amount of intrinsic motivation was lost permanently.
What have you coded most recently? I leverage this question to start a conversation around a candidateís most recent coding experience. Itís not something I necessarily dig deep into, but I started using it after getting a number of candidates who called themselves developers, but whose technology knowledge was a number of years out-of-date. It turns out that most of these candidates had been in non-coding development roles for a while. In some cases, they were architects in an organization where architects donít write code. In others, they were lead engineers who were acting in more of a project management role. In either case, I wasnít interested in someone who had allowed their knowledge to become significantly out-of-date, as thatís usually a signal that they are not passionate about coding and technology. The engineers who are passionate around coding and technology will quickly leave roles where they no longer get to write code, and find roles where they can.
Tell me what you know about [Emerging Technology X]? This is a question that Iíve found particularly useful in vetting out an engineerís passion around learning, discovery, and technical-awareness. As technology evolves, the [emerging technology X] that I ask about changes. But conceptually, the idea still holds. Engineers with a passion for learning seek out emerging technologies. Regardless of whatís trending, those curious and passionate engineers always seem to find time to learn about these new and emerging solutions.
Tell me about the most rewarding project you have worked on? What about it was so rewarding? This question is valuable for learning what specifically motivates an engineer. If you dig into their answers, and prod them for more details, you can usually ferret out what really motivates them. Maybe they learned about something new (learning-mindset). Or they received much satisfaction from accomplishing a difficult task under significant constraints (results-focused, goal-oriented, and problem-solving). Perhaps they enjoyed the camaraderie or their co-workers (teamwork). With enough details, the answer can create a clear picture of what motivates and drives this individual. Another variation of this question could be ĎTell me about the accomplishment of which you are the most proud?í
Tell me about any open-source contributions or software-related hobby projects? This question is specifically focused on an engineerís passion for coding. Iíve interviewed countless engineers who tell me how much they love writing code, but then when I start probing for coding activities they do outside of work, it turns out they donít do any. Itís certainly not a requirement that engineers go home and write more code after theyíve just spent their entire day doing it. However, itís an indication of passion and interest. When I think of the elite engineers that Iíve worked with, every one of them coded outside of work. They spent evenings and weekends building prototypes, contributing to open-source, answering questions on various development forums, working on entrepreneurial side projects, or learning new technologies. Not because they felt obligated to, but because it was entertaining for them!
Tell me the kinds of things you do to stay current in technology? What have technologies have you learned about recently? What specific tactics have you done to learn about this technology? This question is similar to the question about open-source contributions or hobby projects. Almost every candidate I ask will tell me all about the things they do to keep their knowledge and skills up-to-date. Yet, so many of them do nothing more than what theyíve been asked to do on the job. They say they follow various technology blogs. Yet when I ask them which ones, they have difficulty naming some. When I ask them what specific technologies theyíve learned about recently, itís often some not-so-new technology that theyíve had to learn about in their current project. A failure to stay current indicates lack of passion, something I avoid like the plaque when hiring engineers. Technology changes way too fast to hire developers who arenít passionate about learning.
Why are you interested in the position? This is another question that focuses on a candidateís motivation. I am hoping the candidate focuses on intrinsic factors such as the learning opportunities, challenges, etc. Iíve had candidates tell me that theyíre interested because of the shorter commute, more money, flexible work environment, etc. While these are good reasons for being interested in a job, I donít want that to be a candidateís primary motivation.
Attention all leaders of software teams! Are you interested in discovering a consistent framework for evaluating software engineering talent?
The most important responsibility for a leader of a software development team is to hire the right talent. Hiring the right team will make you look good, regardless of whether you have any faults and weakness. However, if you lack the ability to properly assess engineering talent, it is highly likely that you will fail.
This book will help you conduct a complete talent assessment of interviewees without focusing too heavily on a candidate's skills and knowledge and will help you to:
It doesn't matter if you are the best leader in every other way, the universal truth in software engineering is that you can't lead poor talent to do great things!
But with this book you can eliminate having poor talent in the first place and make sure that only the best people work for you. Every time