# Development Team Evaluation Explained
May 31, 2018 2 minute readExplanation for the Development Team Evaluation questions.
What is your source control branching strategy?
This is the first question for a very good reason. If the answer is “we don’t have source control” you better run for your life.
Widely adopted patterns such as feature branches or single branch development are generally a sign of maturity.
A team struggling with their branching strategy is clearly in need of technical expertise.
How do you know what is your team working on?
What needs to be done?
What has already been completed?
Mature teams actively track their work -generally with an Issue Tracking software-.
This practice increases productivity. Problems arise when work is not tracked: features are forgotten, employees burn out, chaos reigns.
How do you assign new work?
Sharing is caring. Agile teams with strong engineering practices share responsibilities across their members. No single engineer is responsible for a single product. Multiple engineers collaborate on the same task. This collaboration reduces silos and increases the Bus Factor.
How long does it take you to go from an idea into something your customers can use?
There is not a right answer here. Feature sizes can greatly vary even on the same team.
Shorter cycle times indicate good organizational health.
How frequently do you do deployments?
Frequent deployments indicate a high level of confidence in the release and monitoring process.
How many bugs have you had in the last quarter?
How many of those were regressions?
A mature team will rarely have bugs and NEVER will have regressions.
The absence of bugs indicates strong engineering practices.
What sort of testing do you do?
There is no correct answer for this question either. Mature teams will rely heavily on automated unit tests.
Avoid places that see no value in tests.
When was the last time you reviewed the vulnerabilities of your system?
Security is important for any product in any organization. Mature teams understand this and incorporate security oriented practices into their software development lifecycle.
Do you know whom to contact in case there’s a problem?
A team with strong Operational Integrity will have clearly defined policies and SLAs around incident responses.
When was your last production incident?
Did you resolve it?
How long did it took to get resolved?
A mature team will rarely have production incidents. If there is any sort of problem it will get resolved immediately.