Loading Events

« All Events

  • This event has passed.

Onion Architecture with TDD – Getting Started (tccodes)

January 30 @ 5:30 pm - 7:30 pm EST

Onion Architecture combined with a guerilla style TDD approach is an extremely effective pattern designed to manage change.

Architecting software to weather change is difficult at best. Implementing architecture that your development team can utilize effectively can be an impossible task. In this introductory session we’ll cover two core concepts: Onion Architecture & Test-Driven Development. Utilizing Jeffery Palermo’s Onion Architecture combined with guerilla style TDD approaches has been extremely effective at Emphasys. I’ll share some of our learnings, while providing a launching pad for you to delve into this pattern and practice.

The Stable Dependencies Principle as defined by R. Martin, states that your architecture should focus dependencies in the direction of stability. Jeffrey Palermo utilizes this approach as a core concept with Onion. At its heart, Onion is focused on centralizing core interfaces and classes that are fundamentally stable. Conversely, pushing out infrastructure level concerns such as user interface and database interfaces that do have more natural churn. Layering a health dose of Dependency Inversion, this Architecture provides the foundation for well-maintained and testable applications.

Additionally, utilizing “dirty” TDD approaches to implementing new features in the Onion stack provides a greater understanding of how and why the architecture works well. Join Ryan in a coding session where you’ll code new tests and functions across the Onion stack. Providing an in-depth look at the Architecture and the approach.

This event is hosted by 20Fathoms as part of the tccodes talent development initiative. It is intended for beginning to intermediate software developers. For questions contact keith@20fathoms.org or visit tccodes.org.

About Ryan Beaver

Ryan Beaver is Vice President of Operations for Emphasys Software. At Emphasys he assists in architecture, design, and roadmap development for core Emphasys development teams. Ryan previously held the positions of both Director of Development and Architect at Emphasys Software. Each role providing him with a healthy sense of self-doubt that encouraged an ongoing passion for self-study.

Ryan’s a graduate of NMC and Ferris State University, having spent 20 of the past 22 years in the Traverse City area. Located in Miami Florida, Emphasys Software is 1 of 260 software companies underneath the Constellation Software umbrella.


January 30
5:30 pm - 7:30 pm EST




101 North Park Street
Traverse City, MI 49684 United States
+ Google Map