Recently I read the The Five Dysfunctions of a Team: A Leadership Fable book by Patrick Lencioni. It's a book on team leadership and management that I would recommend to you regardless if you are a team leader, manager or just a developer working in a team.
The book is written in fable-like format, based on a situation in a team that goes like this: no one is accepting responsibility, deadlines are being missed, and morale is very low. Even if that's not the situation you are in, this book addresses the core problems that prevent a team to get better and improve.
Here I will briefly review the five dysfunction of a team.
Dysfunction 1: Absence of Trust (Invulnerability)
Trust does not mean being able to predict behaviour of others based on their past experience. It just means that everyone on the team should be vulnerable, allowing their weaknesses, mistakes, lack of skills and help requests to be clearly evident to others without any politic games and preserving face.
Dysfunction 2: Fear of Conflict (Artificial Harmony)
Conflicts are there to produce a solution for a problem and they are encouraged if the discussion is about ideas and not personal issues. Unfortunately, they are often avoided within teams lacking trust in order to prevent hurting other people's feelings.
Dysfunction 3: Lack of Commitment (Ambiguity)
"No decisions" is the main reason that prevents commitment. Any decision is better than no decision in a situation when it is needed and team leader does not decide or no consensus can be achieved. You can always make new decision in future based on past experience. You just need to move forward with clarity around directions and priorities.
Dysfunction 4: Avoidance of Accountability (Low Standards)
Members avoid to call others on performance or behaviour in order to prevent interpersonal discomfort. That just encourages mediocrity and does not pressure poor performers to improve.
Dysfunction 5: Inattention to Results (Status and Ego)
Focusing on collective results instead of personal results can be very difficult, especially when team members are on "different frequencies". But, how do you plan to defeat your competitors if your team does not have focused goal!?