Discipline is perceived to be much harder than suffering ill effects of indisciplined work

I was very surprised when I moved to ThoughtWorks to see the kind of workload people were able to handle. What used to be done by a 40 member team was done by a 14 member team when I made the shift and there were no odd hours and weekend hours which was very normal in the industry.

Our team had 4 pairs of developers, a pair of QA, a pair of BA, a PM and a UI specialist. In my previous teams I have never worked closely with a QA on a day to day basis. If I have to make a change in the db I have to raise a change request to a DBA, if I have to checkin code I have to call my TL for a review, if the QA has to test then I have to work with the build master to ask for an env to deploy my code and test. I also forgot to mention about branching and merging, it was an everyday nightmare. War rooms were required to take things to higher environments and pray for the best.

Photo by Mark Duffel on Unsplash

At ThoughtWorks rules were very simple but stringent. Everyone develops on trunk, pair programming & test driven development was the norm, post commit mob reviews once in a few days, dev huddle if stuck for more than an hour of no progress as a pair; automated build, deploy and migrations, breaking a build is a taboo.

Going live was a non event leave alone promoting between environments, no one flinches, it was merely ribbon cutting ceremony. A few simple non negotiable rules makes a good system that can deliver continuously and ready to go live in a flip of a switch yet I don’t see why many people in the industry fail to follow this. May be discipline is perceived to be much harder compared to ill effects of indisciplined work.