What Is More Important Than Processes?

Every organisation wants to make their productivity more predictable and efficient. In order to do this many processes are created to monitor the productivity, foresee the problems and ultimately bringing quality in the work. And that is an important thing to grow for an organisation. Every company put a huge effort in making the processes run smoothly. But sometimes processes become obstacles in work. And unfortunately the real picture get different from ideal.
In order to ensure the processes work organisation creates more processes to manage and monitor processes. But the story remains the same.

This problem is not with the processes instead with the human factor associated with the processes. Lets try to understand this problem with more interesting example. Suppose I constituted a football team. In my team in order make the game more cleaner and defined I defined the role of each player. I asked defenders not to try to goal and forwarders will only make the goal. The team followed the instructions very sincerely. During the gameplay a situation came when none of players of the rival team was near to the goalpost and one of our defender was having the ball very close to goalpost, there was high probability of goal. As he was instructed not to try for a goal he didn’t tried for goal and passed ball to other players. Ultimately team couldn’t win the match as both teams were having the same score. So what was the problem when everyone was playing his role appropriately. Here the problem was everything situation cannot be predicted and ultimately rules/processes cannot be defined for those situations. If it could be possible to predict the all aspects of human behaviour and situations we can program the whole system. Every rule will get programed and robots will perform all the tasks and there will not be any need of human. And the tasks would be done how it is done on assembly line of a automobile manufacturing company. Then the future will be similar to what is depicted in Terminator movie series.

Fortunately or unfortunately we cannot predicts each and everything. There will always be human factor associated with work always. So we should respect the nature and we should make ourself flexible enough to adapt according to the situation to get the results in our favour. And there the human creativity comes in, we should be creative to figure out new ways to cop up with new situation.

Processes not only become the obstacles in unpredictable situations but also become a tools for poisonous people in the system to defend themselves. Let’s continue with previous example, If someone is a corrupted and is not giving his best no process cannot assess that until game is over and scorecard is in front of you but human eyes can see this.

You might be thinking I am against the processes but I am not.  What I want to say is humans are not machines. Humans are natural creature so should be managed in more natural way. The way I think is collaboration. Collaboration can solve all those those problems which process cannot. That is why in each sport, team spirit is always kept on top, as sports are very unpredictable.

That is why I think the processes should be kept below collaboration. Every time if you are going to build a new process keep in mind two things.

  1. Processes should be created for defining the game(work flow) not for roles. Which means player should be allowed to kick the ball depending on the situation. where is the goalpost should be define.
  2. If process is affecting the collaboration negatively, just abandon it and either look for new process or try to resolve the problem without process by collaboration. If you can see someone is not playing fairly do not wait for the scorecard to prove that. Act accordingly!

Path To Become A Leader In A Software Development Team

It’s been almost five years since I started my first job as a software development trainee. Since than till now a lot has been changed in my career. Now I am managing a team of twelve.

I started with a mindset of developer. At that time I was a nerd and used to think only about the coding. I was more interested in learning different technologies to prove myself as a good developer. The vision was absolutely clear and path was well defined. And most importantly I was responsible for my tasks only. That means I was having full control over my work.

After two years of development suddenly things got changed when I was handed over with a team. As I became responsible for others work(the work of my team members) the control of work was not completely in hands. In such a situation managing work became difficult as each member in the team used to think different, work differently and had different level of skills. Creating a balance in all these things is not well defined in any book unlike programming language where everything is clearly defined. All this management is contextual. It all depends on you conscience how you manage this.

The first and biggest challenge anyone ever face in management is when he is lifted a level up from his peers and he has to prove himself as a leader among his peers. When you are given a team it doesn’t mean that you are a leader. You need to prove yourself as a leader in your team otherwise team might reject you as a leader. Creating such space in team is a difficult job you need to have a lot of patience for this as it takes time. But patience is not the only thing which can make this happen you need to prove yourself in skills(communication, social, technical) also.

People think leadership is all about dominance. But this is completely wrong thought. In today’s software world the team work in collaborative fashion and leader is not the only one who decides the things himself instead he works as a servant leader. Todays role of leader in a software development team is more of a facilitator than dictator. Leader is responsible for foreseeing the things in the path of the development and anticipating the problems but decision making on the solutions is done by the team.

Some people think being technically dominating in a group can make them a successful leader. It is again a myth. This is just one side of the coin you need need be socially acceptable by the team. You make the team get out the problem or you are driving the team technically can make you dominating but cannot build a team spirit. In such a team the project can be accomplished but in team context the team cannot grow as you are limiting its growth. Moreover the moral value of the team will be low. Dependency in such a team would be high and you will be overworked all the time.

To make a really strong team it is very necessary to focus of team spirit and team development. This always starts from the leader itself. Making team more involved and more valued help in this.