Emergent, Intentional Architecture

Architecture matching the inherent problem to be solved, evolved and documented as the project evolves.

Firmware can quickly and easily become a spaghetti nightmare. Our industry’s past is one of globals, super loops, and 1000-line functions. Modern teams can’t afford to be stuck with the slow speed and low quality resulting from this type of development.

Modern firmware teams understand that building firmware is a craft and a science. Many crafters have catalogued design patterns and techniques to encourage malleable, reliable, maintainable code. They understand that architecture should evolve from the inherent problem to be solved, not a predetermined blueprint.

Code must be refactored as the project evolves. The safety net allowing us to move quickly through refactoring cycles is our tests.