Last week I was able to attend Agile Africa 2015. The most inspiring talk, amongst the many great talks and conversations, was Kent Beck’s closing keynote. He talked about the engineering culture at Facebook and its key overriding value of taking personal responsibility.
At Facebook as Kent Beck described it
The task you pick up is your responsibility to get right. All parts of it. Even when it is the first task you do when joining. There is no one else other than the developer who is responsible for the decisions required to get it done. If you deploy a bug, someone else may see it and will fix it. And they will give you feedback. Everyone is responsible.
When joining Facebook, developers join Facebook Engineering. Developers are not hired into a specific team at Facebook. In the first weeks the new hire chooses which team they will join. They are personally responsible for the choice to ensure that they join the right team and make the most impact in the organisation.
This is a culture that trusts you to know what you should be doing. If you get it wrong, you will receive feedback.
A culture of high focus on impact guides developers to prioritise their time effectively.
A culture of clear, direct and immediate feedback makes sure that there is a feedback loop on responsibility.
A culture of P50 goals drives improvement and striving for new thinking. P50 goals are goals that you aim to hit with 50% probability. Spread them around so that all the 50% probability isn’t in one area – otherwise no goals may be achieved at all! 
This is a culture of high responsibility, but associated with that must be very high trust. And it has scaled to thousands of developers.
Facebook does not claim to be Agile. There are pockets where there are lots of tests. There are even larger pockets where there are none.
What? The inventor of XP works at a non-Agile organisation? What does that mean? Is Agile dead?
However Kent Beck has seen FB turn on a dime. FB is highly successful. Engineers enjoy working there – at least Kent seems to enjoy it immensely. It sounds like a very agile organisation.
The key is leveraging personal responsibility. It is what Kent says he was getting at when he wrote the XP book.
High personal responsibility leads to developers needing coping mechanisms so that they don’t mess up. If you mess up, you own the mess – 100%. If you mess up too much, you won’t last long. If someone sees your mess, they will fix it – because they too are responsible – and you will get clear, direct and immediate feedback to act on for the future.
Personal Responsibility drives behaviours. It may lead you to TDD. It may lead you to lots of acceptance testing. It may lead you to implementing lots of metrics or monitoring a lot and responding as soon as errors are detected. All of these help a developer keep a handle on their work and hence help them to be responsible. There are no ‘the system is the fault’ types of answers to failure.
Personal responsibility leads to developers having to take control of the code base they are working on. It leads to developers being more confident of their work. If they are not, they fail. They will receive clear, direct and immediate feedback. And they must take responsibility for the problem.
XP has been pointing at personal responsibility. It also seems that personal responsibility can point straight back at XP as one of the possible outcomes of dialling personal responsibility to the extreme.
Personal responsibility touches at the heart of much of great software development. It feels like it should be a core value to optimise around. I certainly am going to be thinking harder on what it means in everything I do.
If you weren’t there – watch out for the videos when they are out. It was a really inspiring (and funny) talk.
If you have seen the talk, let me know what you’re thinking as it would be interesting to hear what others will do around this.
 More on P50 goals in Growing Agile’s latest newsletter at http://eepurl.com/bxmJFb.