Here are the principles I use when leading teams
- Reduce a problem to its lowest sensible abstraction
Framing a problem in its lowest sensible abstraction helps you understand and develop accurate solutions to a problem.
- Make the invisible, visible
Make the hidden principles, ideas and behaviors which make up a technology organization understood and explicit
- Separate core logic from the framework
Core logic that is related to solving a business or domain problem should exist outside of a framework.