Tuesday, July 4, 2017

Basics of 'escalation'

This will be probably my shortest post ever!

Every project that you handle - there is an escalation mechanism /  matrix defined.  Many of us either do not use it in the fear of conflict,  some overdo this , and many of us do it wrong!

Escalating a problem at the right time, to the right person with the adequate amount of information is the key for successful projects!

My observation:

  • Excessive escalation can cause stakeholders and sponsors to get numb - hope you remember the 'cry wolf' story :)
  • Not doing it with the fear of conflict is a sign of sheer un-professionalism!!
  • Doing it with a business continuity aspect in mind is what gets praised!

Regarding #how to do it right -

The golden rule is -  "Escalate to the right person who can unblock you!" -  and that person need not have to be a leader.

While DACI  is an effective model for decision-making , role clarity, and communications   - crisis management is a whole different game! 

Hope this helps!

Sunday, July 2, 2017

Wear your 'TIE' for a great conversation!!

This is NOT a post about how to 'Tie a Tie'.  Rather , just an effort to remember a few fundamentals before we strike a conversation with someone. 

Too often, a conversation results in wasted time.  'TIE' -   I am using here as a ref. to help us remember these fundamentals which can help add meaning to your conversations and ensure  effective outcomes.

  T I E ,  Let's break it down:  

      T= Time and Timing.
      I=  Interest and Information
      E= Energy and Emphasize

Time and Timing ( T ): 

Devoting genuine and sincere 'time' for any conversation is key to ensure a good two way dialogue.

At the same time opening up on a topic requires certain atmosphere or frame of mind which I am referring here as 'timing'.

Interest and Information (I): 

Good conversation is never one-sided.  When we talk to someone , our brain is unconsciously but constantly searching for -  where the individual's interests lies. Think of a Venn diagram. When you find these intersections of interests , these conversations flows with great intensity and becomes very lively. We like people who are like us! 

Some other tips would be -  asking genuine questions in between ,  keep asking yourself how you can add value into this ongoing conversation, endear them!

I personally believe that  -  before going for any planned meeting,  we should always arm ourselves with the topic. The Information element.   And if we could  not - we can just support the ongoing  discussion. For. ex. say “I don’t know a lot, but I do know that…”

Never try yo  dominate a conversation.  Conversational Narcissism is bad!  Really bad!  On the other hand we should NOT be a non-contributor either.

Don’t overshare  - don't  be someone who pours out his life story as soon as you meet him. Within couple of  minutes you know why his girlfriend dumped him..etc. etc.

Energy and Emphasize (E):

By 'energy' I do not mean exercising extremes in autonomy or to dominate a conversation ,  BUT a well balance mix of -  effective body language , gesture , stance , pitch and pace.

This is NOT about exerting overuse of energy which might add noise to the conversation , rather bringing your  'whole being'  into the conversation.

We also must 'emphasize' the important words and effectively underline important points during such conversations.

Above all these ,  let's also remember the saying - "the key to the art of conversation is not in the talking, but in the listening"

Well , that's it for now!  Wear this 'TIE' to add meaning to your  next conversation ,  and see if it helps! :))   Don't forget to share your experience.

Saturday, March 11, 2017

CICD Assessment

( A story on -  how we formulated a process around measuring and achieving CICD, and  how these journey lines has now become a means to cherish and celebrate our collective achievement as 'one team', with a very transparent and clearly defined objectives )

CICD is the automation of Agile!

Last year we had setup a dedicated team to improve the CICD abilities for various teams across our organization.  The overall objective was to - 'Improve the speed of software delivery by implementing CICD practices and processes".

Primarily we focused on :
  • Implementing repeatable and reliable software release and deployment processes
  • Automate testing(s), builds, and deployments
  • Get everything in source control (not just code! Including config and control files)
  • No post deployment manual steps!  (Enables one click rollback when needed)
  • Software is NOT Done until “released and accepted”
  • And all these , with a shared vision that  - all stakeholders  (i.e. Dev, QE, OPS, RM, RE) will demonstration  equal responsibility for the release process!

When we set out on this  transforming  journey ,  we also wanted to measure this progress for various teams. My friend  'Alison Gabriel-Reilly' reminded of this phrase  : “You don’t know when you’ve arrived, if you don’t know your destination”

We looked around and could not find any such tool which we could use  to measure this CICD initiative  and also to capture  this progressive journey line for diff teams.

Essentially , our  need was : 

  • We should have a comprehensive list of all applications , which has an active SDLC track. ( worthy to mention  - we are an IT organization and many apps are in contained mode or waiting for sunset )
  • Consistent, holistic view of the initial overall status of various  applications for CICD
  • An ongoing means to measure and its subsequent improvement ( Continuous Improvement)

We quickly designed and exposed an evaluation URL , basically an internal tool ,  with an underlying  process defined , that -- as soon as we take up any of such CICD implementation work for any team or app , starting point would be to assess the current state.

Now talking about this tool, this is what the initial screen looks like:

[ Landing page ]

With this flow , once an app is selected from the drop down , we render an expanded view of four key pillars of CICD i.e. 'Continuous integration' , 'Test Automation' , 'Continuous Deployment' and 'Continuous Monitoring'.

Many people debated -  how can monitoring be an integral  part of CICD. The answer was simple:  if my Pre-Prod is down , my build pipeline is stuck.  And frankly , not many organization pay a focused attention on monitoring their Pre-Prod environments ; and CICD pipeline primarily encompasses your  Pre-prod.  When we have a final production ready release candidate , its a 'release' or  a 'release program charter'  , which solicits  all party approvals for a go/ no-go!  Which is decision driven, rather than an automated build & deployment flow.

Again , coming back to the tool , these compositions are nothing but some very fundamental, inherent elements aligned to those broader individual CICD aspects as said above. And for teams -  this now becomes  clearly defined objective(s) to strive and then achieve them progressively towards that big  uber goal of CICD.

The composition screen looks like this:

[ Calculate CICD score ]

We also introduced a very fun and exciting  element in this whole process , that -   you potentially can earn a 'badge' based on where you stand. and we display it at the organization level.

[ Badges as per the CICD score range ]

We also have a quarter wise QlikView dashboard , which the leaders of respective group(s) can keep a track of  their own team's CICD status , their progressive journey line, and continue to encourage them further.. 

[ Org level view ]

[ Journey line graph - Quarter wise , for individual app ]

Here I wish to mention that -  this entire thing has now become a proven and well established process for our entire org towards an ongoing means to measure and then take up the subsequent improvement steps for those teams/apps -  who has been aspiring to be on the CICD orbit ( i.e. Continuous Integration , Continuous Delivery )

With this tool,  and with these underlying scores  , it is really allowing us to understand -     the current CICD status of those teams or apps  ,  clearly envision the end state, track the ongoing progress in the CICD  journey and collectively agree on ( and act!)  -  where to focus our time and effort  towards enabling these team(s) to achieve complete CICD.

With this established process , these CICD journey lines has now become a means to cherish and celebrate our collective achievement as 'one team',  with a very transparent and clearly defined objective.

Be agile , deliver continuously! 
 Thank you!!

Basics of 'escalation'

This will be probably my shortest post ever! Every project that you handle - there is an escalation mechanism /  matrix defined.  Many of...