18 December 2014

Soft Skills

Making software is a profoundly human activity. Successfully produced software is made:
  • by teams.
  • for people to use.
Interpersonal communication and mindset are increasingly important for developers.

An overlooked lesson from the Agile movement is:
Producing software products doesn't need or require projects or managers. Successfully produced software is laser-focused on People, Products, and Teams.
Another overlooked lesson is the growing demand for a mental shift. Successfully producing teams have adopted:
A state-of-mind over a set of PMO rules.
Producing software is a creative act more than a prescriptive act. Often developers must discover the right balance between generative thinking and evaluative thinking:
  • What could the product do? and
  • What should the product do?
We have learned that good things happen when we make a pact to:
Discover & adapt, rather than robotically design & implement.
Humility trumps ego. Make a practice of approaching your teammates and products with Beginner's Mind. Everyone aspires to mastery, but no one becomes the expert.

Practice listening.
"We have two ears and one mouth so that we can listen twice as much as we speak."
Epictetus
Practice being a good teammate. Introspection helps. Ask how-can-I questions.
Ask How can I:
  • be more helpful?
  • become a better teacher?
  • become unflappable?
  • become non-judgmental?
  • make people laugh?

“There is nothing noble in being superior to your fellow man; true nobility is being superior to your former self.”
Ernest Hemingway