Agile Coaching Academy – Ideas

I have a dream of opening Agile Coaching Academy at some point. Some of my early thoughts are:

Agile is evolving. Though people are getting familiar with Scrum practices, however when it comes to ideal agile mindset, I think industry still has a long way to go. This is where Academy can help to nurture the agile mindset at grass root level and also at experienced corporate level. Academy can run workshops ranging from 3 hours to 3 weeks customised for type of audience where we will run them through a project (dummy but close to real), let them exercise agile practices and tune mindset towards agile. While doing so, naturally they will encounter many issues be in terms of Agile practice, people and their behaviour, engineering practices (e.g. TDD, CI, CD, automation, one click deployment, cloud ready etc.) and so. We as specialist tell them how to solve them in the best possible manner. In this process, they will be groomed and become agile ready for their respective organisations.

  • Specialised courses for students. Knowing technically they are at early stage and have no/very less experience in industry but we make them agile specialist. Agile could be like a virtually non-programming technology of the future
  • Customised courses for senior management and CXO level people how to transform their thinking and style of work into Agile and inculcate paradigm shift of mind. People at this level are the most difficult to understand agile and adopt to it. They don’t want to lose the control
  • After the course, we can have exam/test also. This can be at two levels. (a) checking specific agile skills (2) checking behavioural attributes and reading psychology of the people and assessing them. There will be no pass/fail but people will be rated on rank say scale 1 to 10 and given practical and constructive feedback how to bring paradigm shift in thinking
  • Sending monthly newsletter to industry highlighting candidates who got rating more than 5 in our test. This will give them instant visibility to the industry and potential chances to secure a job or raise
  • Tie up with universities and also with enterprises. These organisations are always willing to invest in these initiatives. It will give them branding also
  • Tie up with companies offering agile tools.

…..This is just beginning……

Advertisements

Attributes of Successful Scrum Masters / Iteration Managers

Scrum Masters, Iteration Managers should be very good in knowing and implementing scrum practices. The following are some of the essentials skills, they should have.

  • Make sure Scrum practices add value
  • Transparency of team’s work in terms of status, backlog, progress etc.
  • Backlog grooming and Technical readiness of stories
  • Own blockers, impediments, either resolve or find timely work around
  • Ability to see hidden and unspoken impediments
  • Engage stakeholders esp. PM, PO/business
  • Planning well and planning ahead
  • Analytical skills

Besides Scrum, I think it is equally important to have essential soft skills and personality traits which will surely help scrum masters in a big way. In fact, these attributes are applicable to any role (Business Analyst, PM etc.) that deals with stakeholders, teams.

Personality Traits:

  • Be confident
  • Look energetic
  • Respond positively
  • Constructive interactions
  • Helping outlook

I would also touch base some of the following professional attributes which are important for these roles.

  • Communication Skills
  • Business outlook – Customer Perspective
  • Empathy and Emotional Quotient
  • Stakeholder Management
  • Strategic Outlook and Analytical Abilities
  • Manage expectations

Communication

The way you communicate and carry yourself is the gateway of your perception in the minds of people. Some tips:

Verbal:

  • Be a good and active LISTENER
  • Ask right questions which leads towards resolving the complexity or ambiguity of the issue
  • Analyse in your mind why this person is saying so? Ask yourself questions – is he worried, does he need information, does he expect some decision, wants and needs, try to understand his intent and read emotions
  • Tailor your response in such a way that is emotionally well articulated and solution oriented, showing empathy is important

Written (email tips):

  • Email should be positive, don’t forget to appreciate someone if you can
  • Known primary and secondary recipient –to, cc
  • Subject clearly summarising the contents (often people changes the topic of discussion but subject remains same)
  • Clear and crisp – language clearly understandable by recipient (no room for ambiguity or misinterpretation)
  • Acknowledge emails ASAP, even if actual reply may take couple of days
  • Your stakeholder may be sitting miles away, how s/he will perceive your response given s/he may be from different background and different role
  • Try to rule out any scope of misinterpretation of your message
  • Use the lingo and terminology of the customer as far as possible – this will make him feel that you are someone like him, it will make the relation stronger and help in winning trust
  • Give attention while writing customer name – do not misspell

Emotional Quotient and Self Organisation

Cool and Calm in times of adversity [it is always about us, not you or me]

  • Don’t get overwhelmed by number of issues or complexity of issues, there is always a way out
  • Break down the problem into small units which can be discussed independently and identify impact of each
  • Prioritise and plan accordingly, think like devil’s advocate and see what all can go wrong (at times, withdraw and avoid are good strategies in the heat of the moment)

Work Management

  • Clarity of work
  • Know expectations clearly from your stakeholders and also articulate your expectations clearly
  • Do self-measurement at regular intervals and validate it with constant feedback
  • Do the same for the team you are managing – define clear and crisp definition of done with objective & measurable parameters as much as possible. Evaluate and give constructive feedback
  • Remember the golden rule “Under Commitment and Over Delivery”. Everyone feels happy to get more than expected
  •  Habit of introspecting (spend some time alone) and take feedback (formally/informally)

Business Outlook – Customer Perspective

  • Understand why customer has given this project to you or to your organization– is it domain competency, cost effectiveness, technological excellence, known for quality, high productivity, Agile ways of working or anything else – it can be a combination of many things – find out and make sure that your team delivers that
  • Some customers love metrics and some hate, learn his preferences and produce metrics accordingly which are meaningful (e.g. try to produce data showing how we are progressing towards objective goals set in the beginning as a part of success criteria)
  • Understand the difference between happy and delighted customer

Perfection – strive for perfection, no room for error (e.g. accuracy of data, precise and concise information, good and right use of colours, logo, terminology etc.)

Stakeholder Management

Show your stakeholders – you are with him, stand by with him. Show them his success is precious to you, his pain is your pain, strive to secure high reliability index. Your customer/stakeholders should rely on you, trust you. This is built over period of time.

  • Build relation – there is no substitute of building excellent relation. You may be 100% all right, and give perfect solution but until unless you have good relation – your credibility will not be established. Even perfect solution will not be very effective in the absence of good relation. Consider good relation as fuel that runs the car. Purpose of any solution is to remove worry. Worry cannot be removed if he has no confidence in you. Good relation is the first stepping stone to gain Confidence. Even an average solution can remove all of the worry in the mind of the stakeholder if you have good relation with him.
  • Winning the trust is half the job done. Good solution will take care of the other half.
  • As a good professional attribute, don’t let your stakeholders follow up you, respond on time and respond proactively  before someone asks
  • Learn art of saying ‘no’. Always try to give feeling that I will do everything to make you and your business a success. Don’t let him feel that you are trying to run away.

Connect with team, develop your people

Know your people very well,  analyse 2 kinds of skills – Technical skills to do the job and Soft skills

  • Identify skill level in each area of your team (may not be on paper but at least in your mind)
  • People with high skills in both areas should be given higher responsibility
  • People with moderate skill in each area may need short term coaching, training and fine tuning of skills, online courses, self-reading
  • People having low skill in any area should be given sufficient support such as assigning a buddy with them, pair programming, community of practice, short term and long term plan to help them improve skill, certifications, class room training etc.

Useful links:

Eight Tips to Become the Scrum Master Your Team Needs

Characteristics of a Great Scrum Master

Qualities of Highly Effective Scrum Masters

 

Distributed Agile Teams – Recipe of Successful Collaboration

 

In today’s global village, it is common to have teams spread across geographies. When this happens, it’s a real test of skills for the management team to make sure that the distributed model works. It’s even a bigger challenge when Agile is the execution methodology because agile demands high degree of collaboration. I am sharing my experiences how I managed Agile deliveries when multiple teams were sitting miles away yet have common goal. Such an engagement should be managed at two levels. First, at process level where everybody must agree and adhere to certain disciplines. Second, at leadership level where top management must embrace this challenge and do certain things.

At Process and Agile discipline Level:

    1. Frequent collocation of international team members – across teams and also between Product owner (PO) and teams – must allocate some budget at the beginning of the project to take care of travel expenses.
    2. Daily distributed stand up meeting.
    3. Daily status mails sent to every member with this format what we did today, plan for tomorrow and impediments, the status can also be updated on shared platform e.g. wiki instead of mail – idea here is to record the status somewhere.
    4. Enforce distributed pair programming – when and with whom – this should be chosen carefully, here role of mature scrum master becomes really important:Fingers crossed Distributed pair programming between developers across teams separated geographicallyHigh five  Distributed pair programming across skills e.g. tester and
      developer, developer and UI designer, tester and UI
      designer
    5. Mature tester – tester is the eyes of the product owner:

Light bulbtester(s) must take ownership of the entire product and not
the just the pieces being developed in the same room

Light bulbhe must work closely with all teams, and not just with the
team sitting next to him

Light bulbif teams are large, it is highly recommended to have 1 tester
per team

  1. All international team members must have shared vision, shared responsibility and collective ownership.
  2. Take help of advance technology for distributed stuff e.g. technical discussions, pair programming, demo, planning etc. use screen sharing and have best quality of audio and video.
  3. Enforce discipline – Agile meetings e.g. planning meeting, demo, retrospectives must be participated by every member unless there are serious and unavoidable reasons, and when someone misses any of these important meetings, someone in the team must update the absentee ASAP.
  4. Maintain electronic dashboard to track status anytime anywhere e.g. Jira with GreenHopper.
  5. Product owner must be available to all teams across geographies, if he is too busy he should appoint proxy product owner but team must always get full support from this role of PO.
  6. Have scrum of scrums at regular frequency.

At Leadership Level:

  1. Mature leadership:a. Leadership must accept this as challenge, believe in this philosophy of global teams and committed for the success of this.
    b. In such a large and distributed set up, leadership plays a very important role for the success of this model, can’t leave up to developers and architects only
  2. Must gather knowledge of cross culture and find ways to groom teams with each other’s sensitive quotient, e.motional quotient, choice of words etc. to ensure absolute harmony.
  3. Identify strengths and skills of each team, each member and allocate tasks accordingly, it needs due diligence, visionary outlook and experienced.
  4. Take away any hidden emotions such as:Sad smile  fear of job security
    Sad smile superiority complex
    Sad smile feeling of running away with all the credit
  5. Inculcate highest collaboration and team spirit:Left hugRight huga. Total team work, one team feeling – individual heroism is second to none
    b.  Your problem is my problem too
    c.  Every team member brings certain competency, his skills are precious and his suggestions are valuable
    d. It’s always about “WE” and never about you and
    e. Compassion and cooperation with fellow colleagues is the key to success
  6. Have smart people only: Agile and specially distributed agile cannot work with just ordinary developers – team must have a basic minimum level of maturity, professionalism and hence smartness.
  7. Resolve dependencies quickly – leadership must develop an informal model to first discover dependencies (usually hidden) quickly and then resolve ASAP without impacting the sprint goals.
  8. Strong Emphasis on the following and must facilitate it:Thumbs up Less documentation, more communication
    Star Less process, more trust and relations
    Soccer ball Shared responsibility and collective ownership
  9. Celebrating success together: It has been observed that when it comes to celebrations – teams does it locally within closed circle. It’s but natural for teams to go this way but Leadership must ensure the fruits of celebrations reach every corner of the global teams.
  10. Set expectations right away: Define roadmap to success of the project in the beginning; set team objectives clearly and deduce individual performance criteria from these bigger goals. Now ‘the highest team collaboration’ must be in the appraisal feedback parameters of every team member and must have significant weight assigned to this parameter. This ensures that if anyone does not understand the language of collaboration (either intentionally or lack of awareness) – s/he must learn it quickly otherwise it will hit his appraisal thereby adversely impacting salary hike and promotion.
  11. No complacency: This is an ongoing process that never stops. A slight laid back attitude here would impact the global collaboration adversely. Think it like an active volcano which can explode any time. Leadership must watch this volcano every minute and must keep it quiet every second without fail. Although it is natural human behavior to camp with local colleagues but over the period of time, it may result into invisible ganging where team in one location starts dominating over others. It’s very dangerous for the interest of the project and defeats the purpose of having global international teams. Leadership must watch this carefully, guard against building up of local lobbies, act upon immediately on slight discovery of such notions and nip the evil in the bud. To address this, leaders should demonstrate artistic touch to have a healthy blend of soft skills (motivation, cultural incubation) and slight flavor of authority as and when needed.

Life in a Corporate -4 Quality, a Way of Life

In IT industry, every company talks about Quality. I think there is widespread misperception among IT professionals that quality means quality of the software only. This is not true completely. In my opinion, quality is a way of life. Anything that you do in office should be of the top quality. Quality should be practiced every minute in every small thing that you do. Besides programming, quality is also equally important in the following.

  1. The way we speak
  2. The way we write
  3. Our behavior
  4. Personality (e.g. dressing sense, body language)
  5. The way we eat

I have seen technical people who do great in everything but there are such people also who give less importance to anything which is non-technical and hence end up doing poor communication, bad in building relationship, pathetic in email writing. IT is a technology driven industry. Having great ability to write top quality code may fetch you compliments like ‘great developer”, ‘good programmer’ ‘develops high quality software’ etc. But it may not invite comments like ‘a true professional’, ‘an asset to organization’, ‘top quality professional’, ‘privilege to work with’ etc. To be a true professional, you really have to be top class in everything and not just limited to quality coding. Quality should be like the blood flowing from top to bottom every minute.

In my experience, many people usually give less importance to writing emails. Email is the virtual face of you. The choice of words, tone, knowledge of target audience and clarity reflects your personality. We must take email writing very seriously and strive for perfection in this skill as well. Though definition of Quality is not limited to what is explained in the following diagram, but this diagram explains some of the key attributes of office life where Quality must be practiced.

Art of Corporate Relations

Human relations in corporate world are as important as in personal life. Success is always a team event. Having excellent and healthy relations is the foundation of any team. The word ‘team’ is a noun that represents a set of individuals working in absolute harmony with common goals. No two individuals can work together until unless they have humane relations. In this article, I would like to share my thoughts about what it takes to build relations in the corporate world. Relation between two human beings can be as simple as you want and as complex as you want.

Before publishing this article, I was thinking what would be the right title of this article. I thought of a few ones that may fit into the subject like – “When Manager becomes Leader” or “Where Managers Fail”. I finally settled for “Art of corporate relations.” Intended audience here is anyone who has a team to manage and those professionals aspiring to be managers and entrepreneurs.

There are 3 basic building blocks between any two human relations.

1. Respect
– pious and prestigious

2. Trust
– beautiful but hard earned

3. Honesty
– as rare as cool breeze in dessert

We must have read and heard these 3 words, thousand times in our life. On first look, it may seem very simple and almost everyone would say that “yeah, I know it well and always follow as well”. But trust me; there are very few people who know real essence of these three gems (respect, trust and honesty). In my humble opinion, some of the old fashioned and traditional managers especially in hierarchical communities who believe in authority and consider being manager as luxury, do not understand the science behind these 3 building blocks of relations. That’s where team starts maintaining distance from them and starts looking at them as evil. When this happens, you as manager has failed. Another way of saying is a manager becomes a leader when he understands this beautiful art of managing relations. Leader is not a title given my companies but it is a state of mind of your team members where:

• They start looking forward to their manager for all their problems

• Strong belief that this man has to be right even though I don’t understand his reasoning very well but I am sure my career is in safe hands and if I follow him, I will be good and protected

• Willing to do anything for him

When the above happens, manager becomes leader. It happens if and only if you show highest level of respect, utmost trust and honesty to your team. Let me explain my perspective of these qualities.

Respect

It means you treat the other person with utmost dignity as you want to be treated by others. You consider other person on equal footing at par as you yourself. You understand the emotions of the person equally good as the person himself. You give due respect to the feelings of the person. You acknowledge the competency of the person and give highest value to it. You are excited when he is happy and you feel bad when he is sad. You are worried when he is in trouble. Show compassion to the human being and believe everyone is a divine creation of God as you are yourself. His happiness is precious to you. When this happens, it is respect in real sense.

On the contrary, I have seen managers showing authority, killing people’s emotions with disdain, treating people like commodities and focused upon to please their own bosses. This way, you will always remain manager. In this process, you will draw people’s anger and anguish along with curse. Believe me; curse of a distressed and honest person never goes waste. It is going to come back and come back very hard directly and indirectly to you one day. Do not be manager to achieve targets set by your boss only. If you are leader, targets will be achieved anyway but more effectively and efficiently.

Trust

It means you believe that your team is doing everything right with right intention. It may be the case that team does not have enough experience to handle a situation or may not have a particular competency to achieve highest business results (no one is perfect) – but then a competent manager should help them succeed by adding his own experience, holding hands of team members and taking them to the ladder of success along with you. It also means that if you have different opinion, you still (as a first step) appreciate the actions and thoughts of him. Then explain your perspective as someone who is refining his ideas, coaching him on missing aspects (if any) and giving him a sure shot recipe of success. Also show him that you as manager stand behind him in every scenario and will be there to protect and support in every situation. When I say show, I don’t mean show-off but you should really mean it. These things cannot be borrowed or pretended superficially but it is inherent to good managers (leaders) and comes naturally to them.

Unfortunately, traditional managers just impose things on subordinates. Such managers always try to prove in front of team that “I know better than you, you don’t know anything, you are wrong, just follow me because I am your manager” anyway. This is not trust but sheer authority exhibited in an autocratic way.

Honesty

Be very transparent in your intentions, be very open in communication explaining everything why you want a particular thing to happen the way you want – what benefits team would have if they follow you as manager and how it will help the team to succeed. Your words, body language, and emotions – everything should be pious and truthful. Create an atmosphere where team can open their mind, speak from heart, and talk freely and fearlessly in front of you. A good manager must inculcate the honesty as religion in his life and thereby inspire team also to believe in honesty. First you have to be honest to yourself, only then you can expect your team to be honest. You lie and believe me you will be caught one day or sooner. Now a days, people of new generation are smart enough to find the truth and then gossiping makes it even tougher for you to hide a fact. Honesty is still the best policy and would always remain. In front of customers, you can be politically correct but again, no hiding facts, no lies.

Where relations go sour

1. Bad intentions : In the pursuit of quick bucks, sometimes people follow short-cuts, too focused on appraisals and do everything to please the boss, start playing politics and back biting, stealing credits of other people around etc. In this process, they compromise with basic principles of life. There are primarily 2 root causes why people have bad intentions. Everything else revolves around these.

a. Incompetency : In my opinion, competent people rarely have bad intentions

b. Super ambitious : Desire to achieve something and achieve as quickly as possible makes you follow short cuts

Incompetency and being highly ambitious is a deadly combination. I have analyzed why this happens. It is because people want to achieve primarily 2 things in their life – Money and Authority. There is nothing wrong in it. But for talented and competent people, money and authority is the natural outcome and they are bound to get sooner or later. Problem starts when instead of focusing on developing skills, they focus day and night on money and authority. It makes them lose focus on competency and instead try to find quick and crooked ways to achieve this. It is here people enter the dragon of corporate evils (politics, lie, deception, flattery, yes boss etc.). At this stage, relation takes a back seat and you can never have good relations with your team.

2. Poor communication : Sometimes even though intentions are good but your communication is not mature and skilled enough to convey your true message. Remember the golden rule; you are as good as you can communicate. Probably I will write another blog on art of communication.

First make relations with your inner strength. Be honest to yourself, trust your skills and respect your life and your moments of joy – be a leader of yourself. Always remember to apply these 3 principles with other forms of life. If you are there, people will like you can be leader of masses.

Product Backlog of Successful Engagement

I think, a successful engagement needs successful completion of all the stories given in the following backlog.

  1. Programming – knowledge of technology
  2. Customer management – this is a niche skill
  3. Communication – this is a soft skill, communication becomes very sensitive as you start interacting with various stakeholders
  4. Building relation with various stakeholders – does not come naturally to everyone
  5. Consultancy beyond programming – proactive approach
  6. Finding repeat business and explore more business opportunities – need vision and business outlook
  7. Foresee risks and handling escalations – typical management areas
  8. Resourcing decisions and resource movements – need to have companywide resourcing perspective and vision, knowledge of the contract
  9. Bailing project out of crisis when in serious trouble – out of box thinking, crisis management experience

I wonder how many items of the above backlog a technical team along with scrum master can pick up. The software development team who is too focused (team must be focused) in development, playing with technology every minute – it’s hard for them to focus in all of the above mentioned areas. I am not saying it is impossible. There are teams who have done this. But this is something which is not possible for every individual and every team to follow successfully. First of all – it needs good amount of time which a team focused on technology and feature development cannot find it too easily. Then it needs all together different perspective. It does need experience and niche skills. Teams may have all of these but at times, may not at that level and to that extent where it is required. That’s why you need someone who can pick non-technical stories from the above backlog and help team’s effort align with these. You don’t want to call this role as manager, absolutely fine (I know some of the Agile practitioners are allergic to the word ‘manager’) but there needs to be someone for sure. I think it is over ambitious to expect from a technical team to pick up all of the above mentioned 9 stories. Although the non-technical stories are relevant in any scenarios, they become even more important when development is done in distributed mode.

Life in a Corporate -5, Importance of Professional Character

In my opinion, the following professional traits (positive traits) are very important in corporate life.

Positive Traits: Honesty and truthfulness, polite and courteous, down to earth, ownership and accountability, self-organized and self-dependent

I give a lot of emphasis to the above mentioned traits. I believe the above mentioned traits define your professional character. And if you have the highest quality of professional character, sky is the limit and you can do any work with ease. One of the fundamental differences between these behavioral characteristics and technical skills is that – these traits are inherent and cannot be taught to large extent. One can try to inspire a person to follow the path of honesty but only to a certain extent. If the person’s natural wiring of mind is such that it knows only vicious intentions then even best of the teacher’s can’t do much.  On the other hand, technical competency is a science which can always be learnt provided one has the aptitude to know and work with technology. Technical knowledge of respective job function (be it programming skill or any other skill like HR, sales, project management) can always be developed easily if someone has right attitude and ability to learn.  IMO, working in IT industry is not a rocket science. But still people fail, people get terminated, people develop poor quality software and develop poor relations – all of this because they miss one or more of the above mentioned positive traits.  People become so much focused on impressing the boss that they stop learning, stop developing skills, take short-cuts using below mentioned negative traits. Continue reading