In the past, he has held senior technical positions: software developer, senior QA, build/release engineer and release manager. This varied experience allows him to view a software product from the perspective of all the different roles engaged in the development process.