I have the privilege of working with some great people. Both our technology team and our business team recruit bright and hardworking folks who care about the clients we serve. As we grow our product expertise and as we look toward launching new offerings in the months to come, I am consistently impressed with the group of people designing, developing, testing, and supporting our software. To quote a movie I enjoy (not the one you’re thinking of), “I would rather work with the people in this company than with the finest people in the world.”
What does it take to attract and retain such a talented group of technology professionals? Lots of factors contribute to making this happen, but there are three that stand out to me.
- Approach product development as a partnership rather than as an outsourced task. The best products don’t come from tossing specification documents over the wall to an IT team that builds a product and then sends it back. The best products are built in collaboration, with developers and business leads partnering together to understand client and market needs and design the best solutions to real market problems. The user interface designers, coders, architects, and testers I work with are as passionate about and committed to deploying excellent software that thrills our clients as the business team members are. Software developers want to deploy code that is lean and clean, making it easier to support and to extend in scalable ways; designers want a user interface that is sharp and interesting to use; and testers want features that have been well tested and thoroughly blanketed by testing suites that minimize the possibility of unexpected errors. Viewing (and therefore treating) the development team as full partners in the task of thrilling clients provides motivation for everyone involved to do work they can be proud of.
- Allow time and freedom for people to innovate. Many of the world’s leading technology companies have embraced the notion that allowing developers specific time to explore interesting and innovative ideas leads to both happier developers and more creative solutions. The experience at my firm bears that out, where regular ‘hack weeks’ have led to many fun projects as well as some great innovations in our production environment. Whether it means exploring open source or commercially available tools, building rapid prototypes of potential applications, or investigating potential approaches to solving problems, these innovation times create opportunities for people to work across teams and to learn about new technologies.
- Acknowledge the crucial contributions of specific individuals. Specific praise to specific people for specific contributions goes a lot further in motivating continued excellence than general affirmations of thanks to, ‘all the other people who helped make this possible.’ Here’s a great example of recognizing the powerful impact one person can have: http://www.youtube.com/watch?v=JTbrIo1p-So In my current role I work with a number of true ‘enchanters’ who work magic in their design, coding, and testing. These great ‘Tims’ make possible the outstanding products that we build and deploy, and I try to recognize these wizards with more specific praise. Specific praise for work well done motivates continued striving for excellence because people like to be noticed for their accomplishments. Vague words of ‘thanks for everyone who helped out on my project’ on the other hand tend to be de-motivating; such general expressions fail to recognize the unique contributions of specific individuals.
So make sure to celebrate the contributions of the “Tims” on your team. Give the technology partners on your team freedom to be creative and generously share the praise with them when things go well. These approaches will help attract, retain, and motivate a strong team of developers who can help produce a powerful set of products. Of course, in truth it’s not that simple.