About Me
I am a software engineer with over 20 years of software development experience who enjoys learning new things. I am currently employed at Barracuda Networks building a next-generation platform for our backup products.
I am passionate about software craftsmanship and building software that can easily be maintained and extended. I believe that following SOLID design principles and writing automated tests (unit tests as well as integration and functional tests) is critical in achieving these goals.
I also enjoy thinking about the business side of the software I build. One reason for this is just that I am personally interested in business as well as software. However, another reason is that understanding the business also allows me to make better technical decisions that may affect how easy it is to evolve the software in a particular direction in the future.
To balance business progress and technical progress, I aways seek to break work down into smaller tasks that can be released as soon as they are completed. This allows me to get real-world feedback on my work as soon as possible so that I can continue on to the next task working with facts and not assumptions.
I enjoy working on a team with folks with a wide variety of skill levels, skill sets and personal backgrounds because it means we can all learn from each other. Whether I am teach or learning, I alway seek to answer the question “why?” I believe that understanding why is critical in enabling the person who is learning something today to be able to teach it to someone else tomorrow.