The Friendly Coder

On software development and technology

6 Reasons Efficient Build Masters Aren’t Effective

So, like most build masters, you likely have a background in programming and as such are trained to make all your machines work as efficiently as possible. The problem with applying that same level of thinking to your role as build master is that much of your work now involves working with people. Read on to find out why people who try to be efficient build masters tend not to be as effective as you think…

1. Building Trust Takes Time

One key factor in the success of a build master is how well they can convince people (developers, managers, testers, etc.) of the benifits (and dare I say the necessity) of build systems, automation and continuous integration. Without buy-in from these key people in the company you will constantly be fighting an up-hill battle. One key factor with achieving such buy-in is to develop a relationship of trust between different teams and individuals, often with varying backgrounds. This trust-building is not something you can achieve over-night. It takes time to develop.

2. Building a Reputation Takes Time

Managing change and building trust is most effectively achieved through experience. One key component of building this reputation is ensuring that changes and improvements are handled with care and that at each stage the system remains stable and reliable. Such work and experience takes time, both to develop and to prove. If something works for the first week, then people may begin to develop confidence in the system. But it’s not until they have used it for an extended period that they will truly gain confidence it it – and by extension in you and your work.

3. Developing New Skills Takes Time

Although being an effective build master heavily depends on your technical knowledge, it is much more than that. You have to serve as visionary, leader, salesman, teacher and many other roles. For example, you need to be able to sell business-minded managers on the benefits of a change when those benefits are highly technical and not always directly related to customers requirements. Your success as build master will be limited or accelerated based on your ability to develop these “soft skills”.

4. Taking Time To Teach

Confucious, the Chinese philosopher said “I hear and I forget. I see and I remember. I do and I understand.”

I have found that even with the best build and automation system, if people don’t know how to use it or understand (even if just at a high level) what it does, it will not be as effective as it should be. Involving people in the development and continuous improvement process, and subsequently training people on how to use the system when completed, are key factors to the effectiveness of the automation system. This “hand holding” takes time and is often seen as unnecessary, but the more invested the people using the system are in this process the more likely they will be to adopt it’s use.

5. Understanding The Requirements

As a developer you are given requirements and priorities and you are expected to deliver functionality as efficiently as possible. As build master you will need to extend your knowledge to include an understanding of the company as a whole. Understanding customer and business needs is key, and understanding how the different people and departments need to work together to deliver on those needs should be key inputs to the design of the build and automation systems. Developing this knowledge and understanding can take a significant investment of time.

6. Incremental Change

Sometimes the shortest distance between two points is a curvy line that loops back on itself from time-to-time. For a number of reasons, mostly embodied by the agile manifesto, it is often more efficient to make many smaller, incremental enhancements and improvements to the automated system rather than trying to make giant leaps. For example, to satisfy some of the previous key points, you may have to make adjustments to the system that aren’t directly in-line with your end vision for an improvement but allow a change to be created and tested with minimal short-term investment of time and money and with minimal short-term impact. This often frustrates first-time build masters because they want to just jump to the end and roll out the most efficient solution possible right away. It has been my experience that this strategy is not as effective at managing change than a more incremental approach.

Summary

Experience with different management and leadership roles has shown me that it is generally better to leave the efficient processes to the machines and computers but to be truly effective with your dealings with people you sometimes have to take a less efficient route to your goal. A great primer describing this process is “The 7 Habits of Highly Effective People” – a book I highly recommend for anyone in a management or leadership position.

I encourage you to comment on this thread. Do you have any other examples of how being efficient with people is counter-productive to your efforts? Perhaps you disagree with these assessments – if so I would love to see some examples.

Leave a Reply