Thursday, September 9, 2010

What is a Build Master

“There is a reason why Garbage Men have a title of Sanitation Engineer…”

For a non-software shop, the function of Build Master is that bridge  from Development to Operations/Infrastructure/Support, build just happens to be the primary function or output that is produced.  Think of it this way, successful projects are ones that deploy on time.  Projects deploy successfully when the software/solution is designed for deployment.  A Build Master is a person that can bring that operational/infrastructural/support perspective into the Development world.

Sounds like lots of fluff, but in reality primary technical resources on projects (Architects/Lead Devs/etc…) have enough on their plate from business/technical requirements, specifics of the technology being used, individual team members interpretation of design, tap dancing for management, that having an individual to be that check point provides a significant value.

Build Masters should be a strong technical resource, with an Application Development background and some Infrastructural Experience.  This is a real tweener role, plugging in gaps based on the strengths/weaknesses of the team. Sometimes you spend most of your time staring at build consoles and sometimes you are building dev and test environments while troubleshooting code.

A Build Master is not just a build script jockey, although a proper automated build (both CI and BigBuild) that exercise Unit testing, packaging, and deployment are vital.

It can be quiet an entertaining position and quiet effective if staffed and positioned correctly.  The best part of this role is that people generally view Development as the only variable part of the project.  Builds and Deploys are viewed like your car, I just put me key in, start it, and go.  The number of times I’ve been in the meetings when things go bad during a (and of course it’s a deployment issue).  There are times where it is an issue with build and deploy, but generally the issue comes to what was provided in either source, process, or documentation.  I get to reintroduce the term GIGO, you get out what you put in.  Part of what makes Build Master successful is that person’s ability to push back on the development teams for a better overall solution.

Ok enough soap box rhetoric, promise for some useful posts around TeamBuild 2010 and all the different ways we can figure out how to copy files. Smile

Here we go….

My name is Andy Wahrenberger, I’m a recovering Application Developer turned Build Master.  I spent the first almost 10 years of my career with head buried in my own troubles.  I then was smart (or stupid based on your perspective) to own up to the ability to write a batch files that could kick off a build.  That had led me down this, the Build Master path.

Caveat:  I am not claiming to be the Build Master supremo, far from it.  I’ve been fortunate enough to have experience a variety of different situations/combinations of technologies that I have been encouraged to start sharing my fun.

My focus has been primarily on the Microsoft stack of technologies, focusing on ALM/Build/Deploy solutions using Team Foundation Server since Beta1 of TFS 2005.  The before time, the libraries of batch files and custom tools, aren’t really so interesting anymore.