Auto REM
Designed and implemented a C# assembly for interfacing with multiple COM driven Auto REM devices.
- Created an architecture extensible enough to provide a single service interface with different internal implementers for each device.
- Integration with existing software components proved the design valid by allowing additional implementations without modifying existing code.
- Made use of null object, state, factory, facade and bridge patterns to provide a consistent abstraction to clients of the module.
- Used dependency inversion and mocking to allow for over 90% code coverage.
Sound Effects Control
Implemented a module for setting the notification beeps on a hearing aid.
- Reworked a "Smart UI", code-behind-heavy application to use MVVM.
- Achieved 100% test coverage of business logic.
- Satisfied all requirement of original implementation in a fraction of the time.
Ear to Ear
Implemented hearing instrument streaming configuration software.
- Designed solution across all vertical application layers.
- Setup reading of information from devices and configuration files.
- Created user experience in accordance with current best practices.
WPF User Controls
Designed a series of reusable user controls for a feature-rich desktop application.
- Designed controls extensible enough for broad reuse by other developers.
- Made use of dependency properties and XAML binding to allow maximum flexibility for client code.
- Overrode control templates or wrapped existing controls in user controls as situation dictated.
- Delivered ahead of schedule, allowing me to provide assistance to clients in how to use.
Tinnitus Sound Generator
Designed and implemented a module for hearing aid fitting software to support tinnitus sound generation.
- Designed and implemented new functionality for an existing application with minimized mutual dependencies.
- Created a testable, dependency injected design with over 80% code coverage.
- Introduced a conceptual service layer to an application that was formerly binding GUI elements directly to domain objects.
- Implemented object communication and validation schemes that served as a template for minimizing coupling elsewhere in the code.