Building software is always a task of trying to hit a moving target. The complexity keeps growing on every parameter if not managed well. Projects which build softwares that have to talk to each other are often built by different teams under different managements, leaving less scope to find schedule and contract to match for smooth integration. Many times I have observed that there is so much of dependency on each other that the projects look like they are progressing so well until they hit a dead lock on integration.

rocking-horseIn my view such projects are like rocking horses, for a child it gives an illusion that s/he is in control of the horse and its movements but there is no real progress, it is just moving not progressing. The illusion of movement in a project is formed when developers implement the requirements which is neither validated nor integrated but just added to growing source code, followed by an all out big bang effort to integrate and push it to production. The result of rework and last mile dash leaves the teams burnt out and demotivated that there is hardly enough energy to move on to the next work.

Research say that we have two kinds of thinking which I encountered in the book ‘The Pragmatic Programmer’, it says that people who work with the brain (knowledge workers) need to make use of both focussed and diffused modes of thinking which is mentioned as L-mode and R-mode in the book. Procrastination is the key to R-mode as it props up the answers we are looking for, at a moment when we are not thinking about it. It has worked for me very well as I have observed that I get great ideas in shower, while driving, while having coffee staring outside the office window.

Sadly management is trained to look at people furiously typing at their computers for long hours as work and any thinking time saharais deemed as a luxury. This problem gets compounded when management in the guise of agile leaving out all the people aspects behind; which help in looking back, taking stock of situation and plan well but use it solely for micromanagement. People if lost will usually walk in circles, it is a proven fact that people lost in a desert in the night time or an overcast condition without the direction markers will walk in circles, more about it in this link from Nat Geo.

Directionless movement is just a movement for the sake of movement like a rocking horse, there is no real progress.

Few years ago one of my friends suggested that I read the book “Maverick” by Ricardo Semler. In this book, the owner of Semco corporation in Brazil details out on how he transformed an ailing company which he inherited, into a successful and profitable one. He did this by redefining the rules of management and empowering employees at all levels. One of my favourite moves was to remove the traditional hierarchical designations and introduce roles which explain the nature of the job. Roles like Associates, Partners, Coordinators & Counsellors removed the perceived hierarchy and brought titles closer to what people do, instead of who is the boss of whom. Taking few leaves out of the book I tried the following in teams which were adopting agile.

  • Introducing new roles; associates, coordinators and facilitators.
  • Separating leadership and management

Roles

  • Associates: Any one part of the team who writes code, tests, creates requirements, builds & deploys is an associate. Irrespective of the experience and skill level every one who contributes to the day to day activities are associates. 
  • Coordinators: They are the representatives of a particular discipline of work and are usually the external point of contact for the team. As the name suggest they are responsible for coordinating several activities in the project. For example a technical coordinator spends some part of their time every week to ensure that the engineering practices are up to the mark and take up the task of keeping all the associates in same page. 
  • Facilitators: These are the people who help the team set their goals and makes sure they are able to achieve by collaboration. They remove the hurdles in the team and ensure smoother journey towards the goals. They also ensure traction to the plan and help the team identify and mitigate potential risks.

Both the coordinators and facilitators can be rotated from the pool of associates in the team. Each team’s associates together comprise of all the skill sets needed for achieving the goal or in the course acquire them.

Teamwork

Leadership and Management

Like a football team each team needs to have a separation of leadership and management, leadership is always on the ground working with the team; management takes care of the team’s needs, sets expectations and vision for the future. In a hierarchical setup, leadership and management either meant the same or leadership was synonymous with senior management, leaders were always seen as someone whom people report to but not as an expert who works along with the team. It is essential that there are people who can provide technical and thought leadership in the team.

What are the benefits? When people don’t perceive hierarchy within their team, they were able to own things collectively. Irrespective of the seniority & experience, I have observed healthy debates in the team which has contributed to good work. People become comfortable with each other when the perception of hierarchy is taken out which helps in easy retrospection and one to one feedback also gets better as people consider every one in the team as peers.

Introducing these roles (associates, coordinators and facilitators) in the team does not need any structural changes in the hierarchy of an organisation, these are just titles in the team for people to identify themselves with the nature of work they do and remove the perception of hierarchy.

Image courtesy of [Sweet Crisis] / FreeDigitalPhotos.net

In the book Pragmatic thinking and learning, the author while explaining about Dreyfus model introduces the martial arts term Shu Ha Ri to help learn something new and become an expert.

Shu – Copy and imitate exactly like how it is taught. Follow a recipe and practice by just copying. This helps to get introduced to new terms & concepts; imitating something means we are doing it the right way. In this phase it is more important to be right than be original, just like an artist learning brush strokes with various brush tips or a musician trying to play every note in her instrument. The advantage of imitating something is that brain subconsciously develops motor memory for the given task, it will soon proceed to a state where the instincts take over the conscience for the same task.

Ha – As a result of learning by imitation the motor memory could have become strong enough such that the new tasks are performed with less mental energy. This gives rooms to experiment with newer settings, like a new cook trying to tweak the recipe to her needs. Changes from the recipes in smaller increments greatly enhances the visibility of the subject and promotes more deeper understanding. Deliberate practice to understand the shortcomings and great areas will widen the scope of experiments.

Ri – This is the stage where one becomes the master or the practitioner of the art. If the skill involved is non verbal then almost no thinking would be involved in performing a task. Top sportspersons, artists, musicians fall into this place; as mentioned by Malcolm Gladwell in the book Outliers people would have spent considerable time practicing the task to become a master or an outlier.

Keep in mind these simple steps Shu-Ha-Ri when beginning to learn new things. It will help us bring focus to our learning and cut out the fear of failure.