the blog for developers

easyJet – How Not to Manage Problems and Your Software Projects

First let me tell you a tale. Then let us see what we can learn for software development.

Last week I was on honeymoon in Rome. What a wonderful time, perhaps except the time we were cheated by taxi drivers and restaurant owners, a story for another post.

When arriving at the airport for flying back from Rome to Berlin with easyJet, the flight was delayed, for one and a half hours. Hey ho, nothing better than spend some hours of Sunday at the airport I thought. The promised delayed departure time came and went, nothing. No new information for 6 hours. I no longer feared to waste my Sunday at the airport, I feared I wouldn’t get home this day. No official showing up, all having their head in the sand. Rumors spread said the plane had technical problems. Or the pilot hadn’t the correct papers. After six hours we were told due to the volcano flights all over Europe were cancelled. We now feared to not get home for a week – but without any offical information or care, we didn’t know. The volcano information wasn’t given in a proper manner, only to some people randomly. And not by someone from easyJet but from random people at the airport. We wanted to get our luggage back – not possible, as our flight wasn’t cancelled and luggage was already in the machine, and they only return luggage from cancelled flights. We asked when they would decide if the flight was cancelled – they wouldn’t tell. We asked when and if the flight will leave – they woulnd’t tell. And noone from the airport was interested in pursuing this question – and still noone from easyJet showed up. We were promised information updates at specific times, which – you guessed it – never materialized. Then our flight went from delayed to missing, no longer any mention in the system.

After another 4 hours without any information (10 hours in total waiting without clear information, my Sunday wasted, my fears for another week at the airport skyrocketing ), suddenly we should board – at least we assumed we should board now because everyone was running to the gate – there was some chaos, more chaos, people shouting at each other in Italian, more shouts and chaos, but 30min later we were on our way to Berlin. The other two flights to Berlin hadn’t been informed about their fate and were later cancelled.

What can we learn for software development? Software development can easily go wrong. Problems arise out of nowhere, just like volcano ash. Sometimes you can’t prevent those (but you have a proper risk startegy, haven’t you?) from coming after you. But when they arise, and you’re in the heat of handling them, don’t forget to:

  1. Inform early – easyJet never told us what went on, frustration increased as we were kept in the dark. If you software project runs into trouble, inform early. This goes for developers and testers too, not only for ScrumMasters and project managers
  2. Don’t lie – it seems someone lied to us, which made us furious when we suspected this. In the end lies will fail, so don’t invent reasons why the project is failing or you don’t make any progress
  3. Keep your promises – they promised us updates with new information, and then never showed up again. Don’t do this to your stakeholders. Don’t make promises or otherwise keep them. I know it’s hard sometimes, and you can’t keep them for external reasons, but make sure you try as hard as possible
  4. Inform all stake holders – they informed random people, which made as still more furious as we couldn’t get the information we needed. Stake holders will talk to each other and sometimes – as people do – distort information by accident. Have clear communication channels, inform all your stake holders in software projects at once

This was such a pain for me, and easyJet handled the situation in the worst possible manner – it reminded me how I myself can handle those problems in software development better. Perhaps it helps you too.

You can leave a Reply here. Of course, you should follow me on twitter here.

You can share this post!
Do you want to tell others about this article? Use the social bookmark icons to submit this artice to the service of your choice. Thanks.

About the author: Stephan Schmidt has more than 15 years of internet technology experience and 10 years experience in agile. He was head of development, consultant and CTO and is a speaker, author and blog writer. He specializes in organizing and optimizing software development helping companies by increasing productivity with lean software development and agile methodologies. Want to know more? All views are only his own.

10 Tweets

Leave a reply.

Comments

Oh man, what a nightmare. Glad you finally made it home and true true true on your takeaways. Good things for us all to remember, thank you!

@abby: Thanks for the kind words, yes we sometimes forget because it looks easier short time

Buddy Casino

You don’t have to force something to relate to software development, the story is still interesting. The lessons apply to every professional, whether she cuts people’s hair or develops their software.

Leave a Reply

What people wrote somewhere else:

New blog post on CodeMonkeyism: “easyJet – How Not to Manage Problems” http://bit.ly/97BT91 #FAIL #crisismanagment – Please RT

This comment was originally posted on Twitter

RT @codemonkeyism: New blog post on CodeMonkeyism: “easyJet – How Not to Manage Problems” http://bit.ly/97BT91 #FAIL #crisismanagment – …

This comment was originally posted on Twitter

RT @codemonkeyism: New blog post on CodeMonkeyism: “easyJet – How Not to Manage Problems” http://bit.ly/97BT91 #FAIL #crisismanagment – …

This comment was originally posted on Twitter

so true! RT @codemonkeyism New post: “easyJet – How Not to Manage Problems” http://bit.ly/a8Wj36 #FAIL #crisismanagment

This comment was originally posted on Twitter

RT @codemonkeyism: New blog post on CodeMonkeyism: “easyJet – How Not to Manage Problems” http://bit.ly/97BT91 #FAIL #crisismanagment – …

This comment was originally posted on Twitter

RT @codemonkeyism: New blog post on CodeMonkeyism: “easyJet – How Not to Manage Problems” http://bit.ly/97BT91 #FAIL #crisismanagment – …

This comment was originally posted on Twitter

RT @codemonkeyism: New blog post on CodeMonkeyism: “easyJet – How Not to Manage Problems” http://bit.ly/97BT91 #FAIL #crisismanagment – …

This comment was originally posted on Twitter

Stephan Schmidt: easyJet – How Not to Manage Problems http://bit.ly/dBA2c1

This comment was originally posted on Twitter

RT @Tordf: interesting read #Programming #dev | easyJet – How Not to Manage Your Software Projects http://goo.gl/R18v

This comment was originally posted on Twitter

easyJet – How Not to Manage Problems and Your Software Projects – http://su.pr/2TdeEP

This comment was originally posted on Twitter

Additional comments powered by BackType

Guide to CodeMonkeyism

Over the last 4 years I wrote many articles on this blog. To make it easier for you to find the relevant ones, I've organized them into topics.

Top 10

6 reasons why my VC funded startup did fail

Go Ahead: Next Generation Java Programming Style

Java Interview questions: Write a String Reverser

The dark side of NoSQL

7 Bad Signs not to Work for a Software Company or Startup

Is Java dead?

Scala vs. Clojure

Never, never, never use String in Java

No future for functional programming in 2008 – Scala, F# and Nu

Clojure vs Scala, Part 2

Java Developer

Is Java Dead?

Go Ahead: Next Generation Java Programming Style

Be careful with magical code

All variables in Java must be final

Never, never, never use String in Java

Bending Java: More readable code with methods that do nothing?

NoSQL Guy

NoSQL: The Dawn of Polyglot Persistence

The dark side of NoSQL

Essential storage tradeoff: Simple Reads vs. Simple Writes

Sharding destroys the goals of your relational database

The unholy legacy of databases

Startup/CTO

Development Dream Teams

6 reasons why my VC funded startup did fail

American vs. European style of Software Development

12 Things to Reduce Your Lead Time and Time to Market

The high cost of overhead when working in parallel

Essential storage tradeoff: Simple Reads vs. Simple Writes

Job Seeker

Another Good (Java) Interview Question

7 Bad Signs not to Work for a Software Company or Startup

Java Interview questions: Write a String Reverser (and use Recursion!)

Java Interview questions: Multiple Inheritance

As a Manager: What I value in developers

Top 10 Tips (+1) to Get a Pay Raise

Agilist

What Developers Need to Know About Agile

5 Practices Better to Change in Your Scrum Implementation

Scrum is not about engineering practices

ScrumMaster and ZenMaster: The joke of certification

What is Trans-Scrum?