Yesterday’s traditional software development practices, architectures, organization structures, and leadership styles are a poor fit for today’s new digital reality. Cloud, Mobile Apps, and Social Media are radically reshaping entire industries and are also a game changer for software development.

While the new digital reality is driven by technology, it is actually people and teams who learn how to leverage this technology through software that are able to define a version of this new reality that benefits their customers and business.

Knowledge is the currency of the information-age. In the race to thrive or survive, whoever can create knowledge the quickest, most cheaply and to the best fidelity will win. - Barry O’Reilly


What I Am Known For

I am a seasoned pragmatic software development leader with years of experience leading teams from 10-100 talented people and a track record of successful delivery of multiple large complex products.

Most importantly, I create the conditions for teams to succeed by getting the right people in the right place, provide clarity on desired outcomes, growing team capacity to continuously experiment, learn, grow, think big, act small, and enable them lead themselves by getting out of their way.

I leverage a deep working knowledge of Lean, Agile, Continuous Delivery, DevOps, and Cloud Native engineering approaches and apply these modern approaches to enable teams to improve their velocity, quality, agility, and ultimately business outcomes.

Build authentic relationships with key leaders, stakeholders, up and downstream dependencies to connect the dots to business objectives, expedite communication, creating shared context, anticipate issues, manage expectations, avoid surprises, and keep things moving in the right direction.

Resilient, adaptable, and resourceful problem solver since change and obstacles are inevitable. Skilled at quickly getting the problem clearly articulated, getting multiple points of view, researching prior solutions, identifying and evaluating options, risks, costs, constraints, dependencies, and quickly experimenting to find a viable solution.


How I Got Here

Born and raised in Texas, served four years in the US Navy, earned a bachelor’s degree in Computer Science, my first job was at IBM as a software system tester. That first role as a tester instilled a deep quality mindset that I’ve carried into all my other roles in software and I’ve had quite a few.

I’ve been a system tester, a developer for many years, function tester and test lead, software architect, customer support engineer (that was really hard), lead build engineer, Scrum Master, Agile-DevOps-Cloud Native transformation coach (that was a lot of fun), development manager, and up-line development manager. Along the way I earned my Master’s Degree in Software Engineering while working full time.

Many of my peers were surprised when I took my first software development management job some years ago as I absolutely loved writing code and solving technical challenges. While I was making an impact as a developer, I knew I could amplify my impact as “enabler” by fixing, improving, and getting rid of all the things that were slowing me and my team down. I still solve hard technical problems, its just not always through code as much as it used to be. I have made a a difference in all my leadership roles but, it was always much more difficult than I ever imagined.

In my early years as a development manager, my “Leadership Credo” emerged, inspired by the wise words of Peter Drucker, and has been a timeless constant in every role I’ve held.

My Leadership Credo is to continuously:

  1. Provide mission, direction, purpose, and clarity
  2. Enable productivity
  3. Be authentic and honest, earn trust, and give respect

Things I’ve Learned So far

In no particular order…

  • There is no coasting in this profession - you are either learning continuously to stay current or you are falling behind and at risk of being marginalized and putting your livelihood at risk. I read a lot, and you should too.

  • Take care of the people around you both those above you, your peers, and those more junior to you. Be nice, helpful, honest, and respectful as you never know who you may work for or need their help in the future. People and relationships matter a great deal - don’t burn any bridges. “Take this job and shove it” only works in country songs or if you win the lottery.

  • Be competent in multiple things and deep in a few. The more varied your skills and abilities, the more adaptable, resilient and valuable you are.

  • Hire for attitude, enthusiasm, willingness to learn, and culture fit over GPA, school, experience or questionable interview tests.

  • Beware of clinging to yesterday’s best practices or blindly following best practices of others. Best practices are usually a counter measure to something and relevant in some context. As Neal Ford said at Thoughtworks (paraphrased from memory): “Yesterday’s best practices are tomorrow’s anti-patterns…” - something like that. Seek to understand principles first then best practices.

  • Get your hands dirty, experiment, actually try things even if you don’t know squat about them. Experential learning is humbling and rewarding. Discomfort is part of learning.

  • Expect obstacles, set backs, resistance, interruptions, politics, and other unsavory things you wished you didn’t have to deal with. I don’t think I have ever seen anything worthwhile happen go according to plan. Adapt, adjust, and move on.

  • There is never enough time, people, or resources. Remove distractions, constantly seek clarity on desired outcomes, prioritize ruthlessly, manage expectations, be honest and realistic and firm when you must, don’t promise what you can’t deliver but don’t be afraid to stretch.

  • Taking the initiative, resourcefulness, and persistence will help you succeed.

  • Your health is your greatest asset. Take care of yourself, make it a priority.

Again, please see my Experience page on this site for more details on my professional experience highlights, education, skills and such.