“One Team One Dream” vs “Another Day Another Dollar”
The reality of IT team morale is often far from IT executives’ slogans. The most effective way to reduce the gap: Continuous Testing.
I worked/consulted for many software projects, and have heard/seen some slogans created by executives. A common one is “One Team, One Dream”. Leading a ‘dream team’ certainly shows leadership quality. However, the attitude of the staff, from my observation, was more like “Another Day, Another Dollar”.
To form a dream team, the members must take pride in their work and feel satisfied from doing good work.
Being software engineers in a team, 100+ defects in the defect tracking system surely will take some of their pride away. However, apart from stressing the team members, there is really no need for defect tracking, as I wrote in the article “Why Don’t I Use Defect Tracking? No Need, I do real Continuous Testing.”
In my opinion, Continuous Testing is the key to gluing the team together. The morale of a real Agile Team with a successful CT process is completely different from a ‘so-called agile’ project whose team members spend most of the time on ‘so-called agile ceremonies’. I will just highlight one difference here: the team members in a real Agile team are very focused; they share the same goal: implementing new business features and making sure all regression (automated end-to-end) tests pass on the CT server, so that the team can push the updates to the production on a daily (or even hourly) basis. That is pretty close to “One Team, One Dream”, right?
Lisa Crispin, co-author of the ‘Agile Testing’ book wrote this on her blog :
“If I had to pick one reason our team has been so successful the past 7 years, our CI process is it. It’s the pulse of our team, and if it stops (as it did a few weeks back — see Tony’s blog post!), we all just about have a heart attack! When it’s ticking along, we feel healthy and happy.”
I will clarify the term CI used in Lisa’s article which was written in 2010. The CI she meant was Continuous Execution of Functional Tests (not unit tests. She works on functional testing). It was more like nowadays’ Continuous Testing (CT). Also, please note the word ‘happy’, with a solid CT process (as the safety net), team members are much happier. For more on that, please read the “Benefits of Continuous Testing” series.
Many software managers and tech leads will probably agree on CT’s importance. However, they don’t usually respond with actions, but with meetings 😞.
“If you aren’t doing continuous integration now, go back to your office and drop everything and get your CI going. It isn’t hard to do, …, A programmer can do it in a matter of days or less. There’s no excuse to not do CI.” — Lisa Crispin
An inspired IT Executive may wonder “How”. Implementing a successful CT process that enables your teams to push software updates daily to production, like Facebook/Google, might take some time. But getting started with CT that provides real value to the software teams only takes “a matter of days or less” (as Lisa pointed out).
While the company lacks the skills/experience in CT, the executives should know that the technical part is not hard: seeking external help just like Google (getting Simon Stewart, the creator of WebDriver), Facebook (getting Charley Baker, a Watir’s developer), and Linked (‘lured’ Kevin Scott). The real challenge is the human factor that tests an executive's leadership.
“For browser-based testing of our Web code, we use the Watir framework. In fact, we just hired Charley Baker, one of Watir’s lead developers ” — http://allfacebook.com/how-facebook-automatically-tests-code-phpunit-watir_b15369 (the link is no longer exists)
Here is a relevant answer Charley posted on Quora, “What languages and frameworks are used at Facebook ?”
Continuous Testing will greatly enhance the team’s productivity and make software development transparent to all. This means a big change and human beings generally don’t like changes. Here is where real leadership comes, like LinkedIn’s CEO did (see below).
“It was Scott and his team of programmers who completely overhauled how LinkedIn develops and ships new updates to its website and apps, taking a system that required a full month to release new features and turning it into one that pushes out updates multiple times per day.”
“Newly-added code is subjected to an elaborate series of automated tests designed to weed out any bugs.”
- “The Software Revolution Behind LinkedIn’s Gushing Profits” by Wired