Autotask Billing Export
Created an app to transfer information out of Autotask Web API and into a legacy DBC system.
- Designed and implemented a wrapper for consuming Autotask Web Service.
- Created a DBC file generation framework.
- Implemented architecture in such a way that future persistence schemes can be swapped.
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.
Autotask Query Browser
Created open source project that mimics function of "SQL query browser" for Autotask through its Web API
- Layered architecture to allow multiple presentation formats (web/command line/desktop)
- Implemented a parser and defined rules for a language as a subset of TSQL.
- Defined and processed a series of non-query, runnable commands.
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.
Created an open source extension of the Moq utility for easy dependency mocking.
- Used C# extension methods and reflection to extend the native Moq API.
- Made project public on github and accepted any pull requests.
In the process of implementing open source web app to scrape RSS feeds and display them in newspaper-like format.
- Uses ASP MVC, Github and App Harbor.
- A fun pet project for when I have a bit of spare time.
Fluent SQL Generator
Wrote small open source utility as a fluent interface for generating SQL where clauses
- Implemented with fluent, readable semantics in mind.
- Voluntarily used by other developers to replace a more outdated system.
- Was genuinely fun to write and helped me practice use of composite design pattern.
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.
MS Test Report Generator
Architected and implemented a utility to read MS Test XML results files and generate formatted HTML reports.
- Used XDocument model to create a consistent data access abstraction for HTML and XML, allowing fluid translation between persistence formats.
- Created a tiered architecture using data access, domain, and service layers to allow application extension to other storage and reporting formats.
- Made use of IRepository pattern to facilitate persistence ignorance.
- Took advantage of flexible design to provide nearly 100% code coverage with unit tests.
Implemented an open source library in C# for providing the no-throw guarantee.
- Created wrappers for common C# classes and literals that guaranteed no throwing of exceptions.
- Designed classes to supply customizable, sensible defaults for behavior and return values in situations where exceptions would have occurred.
- Designed the implementation to be extensible in that others can build on the no-throw guarantee classes to implement no-throw in more specific situations.
Autotask Project Status
Created a custom app for managing project status in Autotask
- Designed scheme for resolving Autotask "UDF" fields to strongly typed, DTO-capable primitives.
- Created CRUD-mimicking infrastructure for interacting with Autotask web service.
Data Store Editor
Architected, designed, and led implementation of an application meta-data configuration tool.
- Setup architecture, dependency graph, IoC container, source control, and all other project overhead.
- Led and coordinated a team of 8 people in the implementation.
- Sustained 100% unit test coverage and excellent static analysis marks throughout development, keeping defect counts minimal and user story completion on track.
Autotask Ticket Merge
Implemented custom app to allow Autotask tickets to be merged
- Wrapped Autotask web service using repository pattern.
- Abstracted inconsistent API to allow transparent manipulation of different entity types.
- Delivered under budget and ahead of schedule.
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.