Characteristics of an efficient engineering team
Characteristics of an efficient engineering team

An efficient engineering team offers a fun and challenging place to work at.
From my personal experience the following mindset forms the basis of such a team.



We truly care about things
Caring means acting
Caring means pushing things forward
Caring means questioning ideas, concepts and decisions
Caring means listening to customer feedback
Caring means answering questions and providing feedback in time
Caring means continually monitoring project progress
We are pragmatic while caring about things


Failures happen, but we are able to quickly analyze, find and fix them
Logging helps us in analyzing and finding bugs quickly (without long-lasting debugging sessions)
Simple and elegant design help us in fixing problems instantly as well as in maintaining and refactoring our code base without fear
Tooling is very important to achieve fast bug fixing turnaround times


We communicate openly
Open communication means keeping others informed
Open communication works like a push system, not like a pull system
Open communication must no result in overstimulation by steady interruptions


To understand is to invent
We keep asking why and question until we understand all the stuff
Understanding all the code and technologies is a prerequisite to quality


Best Practices
Strive for simplicity
Keep an eye out for beauty and aesthetics in your code base no matter if it is about architecture, naming or something else
Reduce risk by integrating early and often
Read code, review code! By reading code one learns so much, both from the good and the bad parts of the code base
Fail fast, but don't give up too easily




