As I was writing my About blog page and sharing that it is to support readers on their “Journey To Agility”; I decided that my first post should be about my personal Journey To Agility. I have been working with software development teams for over 20 years, which is hard to believe in an of itself, but that is a story for another post! The one constant over these 20 years is change. It seems gradual at first, but when you take a concerted look, it is mind boggling how much has changed in the past 20 years in how we manage technology projects. My Journey to Agility is a lifelong journey filled with victories and failures. The victories have been sweet but I have grown and learned the most from my failures.
I Love Firefighting and Drinkin !
My journey started while working in a shop where developers checked code directly into production. “QA – We don’t need no stinkin QA, it only slows us down.” In comes a CTO, and shortly thereafter command and control waterfall processes which led to my first “AHA” moment: the importance of structure to turning around a chaotic environment. The adrenaline rush from all night fire fighting, saving the day, and then partying like rock stars was very addicting and satisfying. However, after a few years it became very tiring and led me to thinking there must be a better way ! OK, OK I am not the quickest learner but fire fighting is so addicting and the after parties and drinking when you save the day can be lots of fun when you are young and single. In a period of two years I was part of the caravan on a journey to evolve a wild west shop into a disciplined waterfall shop. We adopted a Software Development Lifecycle (SDLC) managed by a home grown Lotus Notes work flow management tool. BTW, I just checked and Lotus Notes is still around, but is now IBM Notes and looks like it has morphed into an email social collaboration tool. A quick looksy and it appears like a tool that no longer gets much love and is bound to be eaten by an upstart like Slack or Atlassian – evolve or die. Next up on the journey was RUP and what I view as iterative waterfall. As I look back on it now it was a significant step on my journey to Agile. Who could argue with breaking work into iterative cycles with the goal of detecting and correcting issues faster? Watching modeling sessions in which requirements were simply gathered in an afternoon vs. the months that it took in waterfall with a client was very impressive. Yet there was still something missing.
Where’s The Humanity ?
In the iterative waterfall approach of command and control, it always felt like there was a humanistic quality lacking in interactions with software development teams. I felt like I was running around getting in the way; asking team members what tasks should be added to the plan and then chasing them down to find out what percentage of the tasks were done. Task estimates were never reliable and it was not uncommon for % complete scenarios to get stuck on 80% done for what felt like eternity. We would make up dates and tell teams they had to hit them. If they pushed back we told them they were not being team players. In my experience this lead to one of two things taking place:
- Teams nodding their head in agreement and telling you what you wanted to hear, then about a week or two prior to your Go Live date a big sticky problem would all of the sudden POP up and the date would be pushed out proportionally depending on the size and importance of your project.
- The team would kill themselves to hit the date but would build sizable technical debt that would cause significant issues down the road. Of course, at the time we didn’t even know what technical debt meant. We would find out along the way as the effort to make simple changes would become increasingly more complex. At times the system was so brittle it was unable to support simple changes. The more command and control you were, the higher the odds were that management was not made aware of these trade-off’s.
Connecting the Agility Dot’s
In 2000 I moved from Connecticut to Silicon Valley, and was exposed to thought leaders and development techniques that at the time were so progressive I was not sure what to make of them. I worked at a startup called Tumbleweed Communications, who purchased a company in Ann Arbor, Michigan that was doing Extreme Programming. I remember visiting this newly acquired company and walking into this big open pen where people were sitting next to each other doing pair programming. It all seemed so different and strange. What intrigued me about this team was that they were kicking out some really cool software that empowered companies to manage print stream workflows (Bank Statements) visually and at an extremely fast pace compared to what I was used to. Years later I would be at an AgileCamp conference where Rich Sheridan was one of the Keynote speakers. I then connected the dots that he was the early adopter force behind the adoption of these radical practices at Tumbleweed Communications. Check out the great work he has gone on to do at Menlo Innovations. I was exposed to Agile concepts early on, but it would take another six or so years before I would go all in on Agile.
I still remember the conversation I had with a former colleague when he mentioned Scrum and I was instantly super intrigued to learn more about this odd sounding project management framework. I went out and bought Agile Project Management With Scrum by Ken Shwaber and my Agile Journey officially began. By reading this book I was able to show that I knew enough about Scrum to get hired by the Disney Internet Group. I would come to learn that understanding how Agile / Scrum works can be done in hours, however perfecting the craft of building awesome teams is a life time journey – my life time journey – with many up’s and down’s while learning what works and more painfully, what does not work.
Throughout this blog, I will share my agility journey and the lessons learned being Developer → Waterfall Project Manager → Startup Founder/Failure → Agile Project Manager → Agile Program Manager → Scrum Master → Agile Coach at Oxford Health Plans → Tumbleweed Communications → McGraw Hill → Disney → Cisco → PayPal → Adobe → Intuit → ?… During my career I have seen the transition from Kaos → Waterfall → RUP → Agile→ Scaled Agile → ? I will also share my thoughts on the direction of Agile as it has crossed the chasm and is no longer the shiny new thing but an established management methodology. Check out this awesome post on Modern Agile by Joshua Kerievsky of Industrial Logic for a taste of the direction I think Agile is headed.
Join me on our journey to build awesome teams. I would love to hear where you are on your agility journey and what you think the next big thing is ?