What is a master builder?

In Master Builder I mentioned that I want to be one. I didn't write what makes a master builder of software. The vision I have is of someone who thoroughly understands, through experience and study, all the problems a group of people building software face.

I say "understand" because it my mind, to understand is more than having mere knowledge, which can be gained through a reading. I think to understand is have an intellectual, emotional and physical comprehension of the situation.

I think intellectual and emotional comprehension, most people will get. Intellectual comprehension is being able to accurately articulate the technical details. The technical details can include aspects of the business, like the software's place in the marketplace. Emotional comprehension is more than just what you or other people are feeling. It has to do with emotional intelligence. It has to do with an understanding that people do things because they feel like it and if they feel like doing it they can come up with reasons.

Physical comprehension requires more explanation. Physical comprehension of situation includes the physical space we are all(in person or remote), the physical relationships between people(ie, the spatial relationship in a meeting), the power relationships between people. How does information move from person to person? How does power move?

So what does a master builder of software do? It is a person who understands the business, how to use software to solve business problems, and how to persuade people to use software to solve business problems.

A master builder of buildings and houses was expected to design solutions with the strength and limitations of the materials to be used and what was possible in that particular physical location in mind. The materials in building software are computers and software tools. However, the materials also include the people building the software, the people paying to have the software built(either through their own money or their approval for money) and the people using the software. The physical location of software is the business context. The business context includes things like regulations of the software has to satisfy, the market and competitors. It also includes the stage of the business(startup vs established). The master builder of software designs software within the constraints of the people, the tools and the business.

Next I want to talk about what it would take to actually become a master builder of software.