Motivation in Software Engineering
Motivation plays an important role in keeping people proactive, and obtaining a productive role from a person. However, motivation is by no means the only factor involved.
In the last twenty years, an increasing number of productivity studies were conducted about how software engineers work, the productivity studies shown that individuals vary in their performance.
What are the needs identiﬁed in Maslow’s hierarchy that applies for software engineers?
- Stability and security: Maslow shows that there is a basic need for stability and security, a need whose breach can lead to stress. Providing stability in a software engineering context could be about ensuring that there is a robust process for handling changes to requirements so that people are not faced with trying to achieve goals that change unpredictably. Security of employment is also important and, as long as demand for software engineering skills remains high, this can be found in freelance contracting.
- Belonging: ensure good communication so that everyone feels involved at every level, and where people work in teams make sure that the teams ‘gel’.
- Self-respect and the respect of others: it’s important that everyone feels competent and that an individual’s competence is recognised by colleagues, so people should not be challenged to the degree that they are led into failure (but they do need to be challenged enough that they can achieve self-fulﬁlment); ensure adequate training. Additionally, competition between individuals and teams has to be carefully managed by recognising achievements in an equitable way.
- Self-actualisation: ensure that everyone has the opportunity to extend their knowledge and learn new things, and then apply that knowledge. Some people ﬁnd software beautiful. Others gain aesthetic pleasure from good human–computer interfaces. Various personal management methods encourage people to set themselves objectives and to regularly review whether they have met those personal targets.
People are motivated by opportunities for self-development and social interaction and contribution to their organisation and society.
The better the software development community becomes at creating software, the more software the world seems to demand. The relationship between people and their work may vary considerably between communities and countries, and it would be risky to try to transfer certain organisational structures and processes unchanged.
Organisations tend to hire expertise to resolve a problem, which will lead to knowledge for the organisation. To achieve a successful working team we need to focus on hiring engineers which has the expertise & innovative at the same time. On the other hand has the discipline to keep the focus on the business value of the organisation.
The discipline of expertise and innovation:
Marian Petre has spent many years studying expert engineers in order to uncover how they work and consistently create innovative solutions. She has discovered (Petre, 2004) that innovative expert teams and individuals:
– Acquire knowledge systematically from undertaking patent searches, reading relevant journals and books, attending conferences, monitoring legislation changes and monitoring the competition.
– Habitually solve problems and store the solutions for later use.
– Keep records of all work they do.
– Reﬂect on newly completed and related projects, and general themes as they emerge.
– Reuse and reapply recent innovations.
– Identify barriers to what is wanted, and remove them.
– Focus on conﬂicts between competing requirements and analyse these.
– Regularly brainstorm to generate new ideas.
– Look for gaps in knowledge and understanding, seeking to ﬁnd new possibilities.
– Work through scenarios to explore the consequences of design proposals.
– Abstract away from real problems to focus on the essence of the problem.
– Explore constraints on a design and aim to reduce these.
– Play with toys as a way of discovering solutions to real problems.
– Follow online courses to keep the knowledge up to date. For example (www.coursera.org/, www.pluralsight.com, www.lynda.com, www.udemy.com)
From this we can see that experts are highly disciplined individuals who do not sit around waiting for inspiration, but systematically develop their capabilities and seek out that inspiration.
How does the preceding discussion of human motivation and the need for actualisation relate to learning organisations?
In order for an organisation to learn, the people within the organisation needs to learn, and through that the organisation business process can change and evolve. People are motivated by opportunities for personal development and growth, learning forms an important part of this. Thus there is a powerful willingness for people to learn along with the organisation that employs them. We can extend this argument a little further and conjecture that a learning organisation constitutes a “community of practice” within which the development and growth of that organisation and its employees can take place to mutual beneﬁt.
An engineer without enough motivation can turn into legacy, as organisation and engineers we should keep focusing on motivation. The benefits are priceless on personal and organisation level.