For over a decade, I have been associated with a world leader in consumer software products’ company, whose name starts with ‘M’ and is known for its ‘not so soft’ stand on its competitors.
The time when this company adopted Agile methodologies, I was working with a specific product group of this company that had a customer base of more than 150 million users worldwide. To say that, without this product it is not possible to imagine IT as we experience it today, will not be an understatement.
With increasingly complex workflows within the product to introduce new features every year, security fixes every month that supported more than 10 form factors, more than 50 OEMs [Original equipment manufacturers] and the level of scrutiny that could lead to [and did lead to on few occasions] huge financial penalties; it was becoming non-sustainable to keep working in the classic waterfall model that this company and the whole product group was so accustomed to.
Releasing a new version every 5 years and new features every 12 -14 months was an unwritten unspoken agreement that kept getting hit by competition with ever increasing frequency.
When the call was taken to move to Agile methodology and shift the focus to deliver early, deliver often; it received mixed response. While the management was all excited about it [not too sure, even today, if it was genuine or feigned to save their own jobs]; Engineers on other hand were aghast with the decision; as they feared it will take away their focus on quality by forcing them to write poor quality code in order to deliver early and often.
In execution, the journey was not an easy one as it entailed giving up on the most logical way of working i.e. sequential order of working and adopt a more spontaneous and iterative approach requiring good amount of code re-hash every sprint.
After few failed and not so well received releases, the group got it right when they delivered a widely successful version of the product in 2010 adopted by more 200 million customers and still powers devices across the world.
I can go on and on about the stories of this journey but in the interest of time, I would share following learnings with you. These gems of learnings will be useful for the team that executes on ground but also to the management that wants its teams to adopt this methodology sooner than later:
- Patience: Adoption of Agile will not be as quick as the name suggests. It will require step by step adoption of best practices. It will not happen overnight as old habits die hard.
- Calm: Be prepared to play the referee; as conflicts will arise for sure and can get out of control if not handled in a timely manner. Hence, effective communication along with interpersonal skills are a must have to achieve successful adoption of Agile.
- Agile is not Gospel: Never assume, think or imagine that Agile is your solution to improved market share and it will solve all that is wrong with your delivery chain. To fix those problems, you will need to adopt latest frameworks such as DevOps, latest tools and invest in training your developers to write better code and testers to test effectively.
- Make each penny count: Agile does not lead to poor quality code; poor quality developers do. Just because of less focus on manual testing, it will not cause your team to write bad code. Agile wants you to use your expensive manual labor to produce worthier output and delegate less important or repeated tasks to machines.
- Agile needs its weaponry: Agile, if clubbed with frameworks like DevOPS, Combined engineering where Developers play the role of testers as well, innovative methods like creating user stories, re-planning the project plan, re-baselining the backlog before embarking on next sprint, could do wonders for your team and company.
In the end, based on my personal experience, I will say Agile is not only about delivering early and often; but also test early and test often. Otherwise, the feature that you just lit up with much fanfare can blow up your entire Production environment.
Thank you for your time. I will be back soon with next round of servings. Until then, Bon Appetite!