TechBeacon, February 2, 2016 by Kevin McGibben
Managing technical teams is more art than science. If you don’t believe me, try to measure productivity of individual software engineers within an agile process!
Through trial and error, reading, and long discussions with technical people, I’ve cobbled together the following five secrets to successfully managing technical teams:
1. Reward problem-solving
Technical people love to solve problems and build stuff. Trying to figure out what incentives can foster this fundamental characteristic can be tough. It’s a far different dynamic than with business people, who are motivated by greed, money, and power. (That’s a joke, for any non-tech people reading this.)
Try organizationally elevating the importance of your company’s desire and ability to build great products. Products are important to your business, so you’re not paying lip service. Rather, you are paying attention. Instill pride in engineers’ efforts through all-hands meetings, group messages, or blogs.
Another thing you can do is compensate technical staff appropriately. It’s rare that technical people will complain about their pay or demand more compensation. It’s far more common, especially in the Bay Area, that they’ll leave for a job with better salary and more recognition.
2. Trust your engineers
Don’t ever prescribe how to achieve technical success. That’s what software engineers know and love best!
Instead, set clear objectives and timelines, from the project level (daily, weekly, monthly) to the team level (sprints, product deadlines, market milestones). Then let them work through how to define and organize the work to meet the objectives. You’ll get more energized, enthusiastic teams and better work as a result.
3. Share customer feedback
Technical people respond well to data. Give your team feedback on how their work is being used. But don’t get stuck on the raw data, such as number of users; let them know how their work benefits customers.
Spend lots of cycles talking to customers and your customer support team to gather this information. Make sure the functional teams (engineering, product, support, sales, etc.) share the feedback.
4. Build a farm system
If you are a baseball fan, you’ll get the metaphor. If not, here’s an explanation: You will build the best technical teams by hiring talent early and in multiple levels in the organization.
As you grow, you can put those who’ve come up through your team into advanced roles, lessening the risk that they’ll fail in their new jobs. For those moving into progressing responsibility, there are huge efficiencies in getting up to speed when they can rely on both institutional as well as tribal knowledge.
Remember, when it comes to technical staff, what they know is way more important than where they learned it! As long as your core group of experienced staff is great, this is a low-risk proposition. The weaker your core team, the riskier this idea becomes, and the more you need to rely on purchased talent.
Commit to training and development for your staff. We do, and it pays big dividends in productivity and likelihood for career advancement. You’ll gain loyalty from the team and better performance across the board.
5. Don’t overcompensate management
Last but not least, create a system where technical staff don’t have to become managers to grow their careers. Most companies pay management the most, on the assumption that managers should have significantly higher salaries than their staff. This greatly overvalues the contribution of managers.
Don’t make that mistake. Managers are important, but fundamentally the value comes from your technical staff. Pay them well to reflect that value.
There is nothing more valuable for technical people than to be able to control their career destiny by being in a committed meritocracy. Develop a technical hierarchy to reward and recognize technical achievement and capabilities. Where better in the entire organization to foster and develop top talent?
Check out the full article on TechBeacon here.