My Resume


A forward-thinking software engineer with 18 years of professional experience across highly-regulated industries including commercial software, defense, and education.  Excellent written and verbal communication skills.  Adept research and problem solving abilities.  Award-winning teacher and avid speaker.  Three-time Microsoft MVP.  Small business owner.

Technical Qualifications

  • C#
  • Powershell
  • C++
  • SQL
  • Python
  • MSIL
  • Assembler
  • XML
  • JavaScript
  • HTML
  • Java
  • Visual Basic
  • .NET, Mono, CLI
  • Powershell, Cmdlets, Providers
  • Automation Design
  • Cryptographic Systems / PKI
  • Relational and Document Databases
  • Web Services
  • Build Systems
  • Device Drivers
  • Embedded Systems
  • Systems Integration

Code Owls LLC

3/2010 – Present

Provide software engineering consultation and project management services.  Manage open source projects.  Publish private commercial software projects.

  • Created a cloud-based "plain paper" assessment system capable of using commodity scanners and printers to produce and process standardized assessment forms.
  • Developed Windows client software integrate wireless classroom input devices into a service-oriented online assessment framework.
  • Incorporated Scantrontm hardware scanners with client software, enabling teachers to upload the results of student assessments to a cloud-based learning management system.  Solution is currently used by several large school districts to digitize all standardized testing results.
  • Created StudioShell - an open source PowerShell automation environment for Visual Studio.
  • Integrated disparate technologies with Microsoft PowerShell - Entity Framework, Redis, MongoDB, ASP.NET Membership, SQLite, OData, etc.
  • Created SeeShell - a data visualization module for PowerShell environments.
  • Speaker at Southeast User Groups and developer conferences, discussing PowerShell development, software processes, various maker projects, and teaching kids how to program.
  • Organizer and host of the Iron Scripter! public scripting competitions.

PokerTek, Inc.

Senior Software Engineer
9/2005 – 3/2010

Responsible for the specification, design, implementation, testing, and support of applications and systems to run automated electronic poker rooms in the highly-regulated gaming industry.  Acting SCM, build master, and Scrum master.

  • Surpassed regulatory compliance for application security by creating a federated application integrity validation system using C#, Public Key Cryptography, SQL, Remoting, and TCP/IP.
  • Enabled regulatory product approval by implementing security and instrumentation services that comply with established regulatory protocols and standards (e.g., GAT3) using C#, Remoting, and Powershell.
  • Development of WDF and DDK Windows device drivers for control of proprietary hardware using C++, and assembler.
  • Shortened regulatory product approval cycles by creating a system for correlating source code to a compiled binary using reverse engineering techniques.
  • As Scrum master, successfully guided the software team to achieve project milestones on-time during unexpected layoffs and subsequent team attrition.
  • Established pragmatic development methodologies and project management techniques including Scrum, unit testing, test-driven development, user stories, planning poker, iterative and incremental development cycles, automated builds, and continuous integration.

LearningStation, Inc.
Senior Architect
7/2002 – 9/2005

Directed all systems integration of third-party vendor applications into the LearningStation Education Desktop™. Created and supported new web applications targeting the education market. Maintained legacy applications.

  • Simplified security systems integration by creating an identity federation service based on SAML v2.0 using C#, ASP.NET, SQL, Web Services, PHP, XML, and Public Key Cryptography.
  • Effected a 37% decrease in user-level support incidents by implementing an audit system to log changes to key database entities.
  • Improved reliability and maintainability of systems integration failure points by refactoring manual data migration systems into a single, automated, and audited process.

Convey Systems, Inc.

Software Engineer
2/2001 – 7/2002

Responsible for design, implementation, testing, and support of distributed Internet communication and collaboration applications using C++, ATL, WTL, COM, Java, Visual Basic, Javascript, VBScript, ASP, ADO, XML, and SQL.

  • Successfully ported highly integrated browser host application from Internet Explorer to AOL, Netscape Navigator, and Mozilla two months ahead of schedule.
  • Maximized support team responsiveness with a proactive system that logs field incidents to a central service in real-time using XML, ASP, ADO, SQL, and C++.
  • Accelerated component development by creating a software factory that ports ActiveX controls to Java libraries and Netscape Plug-ins.
  • Increased team productivity by creating a documentation system that generates HTMLHelp for an ActiveX component using ATL, Javascript, ADO, and Windows Script Components.

Compuware Corporation

Professional Staff
5/2000 – 2/2001

Provided consulting services for software development, web development, quality control, and documentation projects for various clients.

  • The majority of this time was spent as a consultant to Convey Systems, Inc.

Breault Research Organization, Inc.
Windows / Internet Software Developer 1/1998 – 2/2000

Responsible for design, implementation, and testing of modules for optical engineering applications using Visual C++, MFC, ATL, and Perl; website development using JavaScript, Perl, VBScript; software and web quality control and maintenance.

  • Maintained a Secret security clearance.
  • Realized a 3 to 8 minute increase in Customer Support incident responsiveness (a 26% increase in total incident capacity) by creating Internet-enabled application support modules.
  • Maximized team efficiency by standardizing UI development into a simple text-based framework.
  • Increased website traffic by 112% through long-term content strategies for the vertical optical engineering market.


“Strange Things for PowerShell: the Entity Shell and Polaris Projects”  Florida Virtual PowerShell User Group.  April 2013.

“PowerShell For Developers”  Roanoke .NET User Group.  Roanoke, VA.  April 2013.

“What a Good PowerShell Tool Should Look Like”  Charlotte IT Pro User Group.  Charlotte, NC.  March 2013.

“PowerShell Gotchas!”  Charlotte IT Pro User Group.  Charlotte, NC.  March 2013.

"Everyday PowerShell for Developers."  Pluralsight course.  November 2012.

“PowerShell For Developers”  Raleigh Code Camp.  Raleigh, NC.  November 2012.

“Fun with Lilypad!”  MADExpo.  Hampton, VA.  June 2012.

“Extending PowerShell with Cmdlets.”  CodeStock.  Nashville TN.  June 2012.

“Raising the Next Generation of Geeks.”  CodeStock.  Nashville TN.  June 2012.

“Stupid PowerShell Tricks for .NET Developers.” Carolina Code Camp.  Charlotte, NC.  May 2012.

“PowerShell Modules you should Know About.”  SQL Saturday #111.  Atlanta, GA.  April 2012.

“Stupid PowerShell Tricks for .NET Developers.” CodePaLOUSa.  Louisville, KY.  March 2012.

“Data Visualization with PowerShell.” ALT.NET Charlotte.  Charlotte, NC, January 2012.

“Extending Visual Studio with StudioShell.” Triangle .NET Users Group.  Raleigh NC, November 2011.

“PowerShell for Developers: Build, Test, and Code.” Triad Developer’s Guild.  Greensboro NC, September 2011.

“Stupid PowerShell Tricks.” SQL Saturday #89.  Atlanta GA, September 2011.

“Extending SSMS with StudioShell.” SQL Saturday #89.  Atlanta GA, September 2011.

“PowerShell for Developers: Build, Test, and Code.” WNC .NET Developer’s Guild.  Asheville NC, September 2011.

“Extending Visual Studio with StudioShell.” DEVLink.  Chattanooga TN, August 2011.

“Extending Visual Studio with StudioShell.” MADExpo.  Hampton VA, June 2011.

“PowerShell for Developers.” Atlanta Code Camp. Atlana GA, June 2011.

“Extending Visual Studio with StudioShell.” CodeStock.  Nashville TN, June 2011.

“Extending Visual Studio with StudioShell.” Carolina Code Camp.  Charlotte NC, April 2011.

“PowerShell for Developers.” Carolina Code Camp.  Charlotte NC, April 2011.

“Introducing StudioShell.” Charlotte ALT.NET.  Charlotte NC, Feb 2011.

“PowerShell for Developers.” Columbia Enterprise Guild.  Columbia SC, Jan 2011.

“PowerShell as a Tools Platform.” Richmond Code Camp.  Richmond VA, October 2010.

“PowerShell as a Tools Platform.” AlamoCoders.  San Antonio TX, July 2010.

“Getting Started with Arduino.” CodeStock.  Nashville TN, June 2010.

“PowerShell as a Tools Platform.” CodeStock.  Nashville TN, June 2010.

“Distributed Version Control with Mercurial” ALT.NET Charlotte NC, May 2010.

“Go Use PowerShell.”  MSDN Southern Fried Road Show, Charlotte NC, May 2009.

“PowerShell as a Tools Platform.” ALT.NET Charlotte NC, April 2009.

"Extending the Windows Scripting Environment." Windows Developer's Journal. October, 2001.


  • Microsoft MVP - PowerShell Development 2010-2014
  • Finalist, Blue Diamond Technology Award, Charlotte Chamber of Commerce, Spring 2002.
  • Favorite Faculty Member, University of Arizona, Fall 1997.



University of Arizona, Dept. of Psychology

MA Cognitive Psychology
8/1995 – 1/1998
Tucson, AZ
  • Development of QUAVER perception experiment engine library in C++.
  • Specialization in human perception and behavioral statistics.

Trinity University, Dept. of Psychology

BA Psychology
8/1991 – 5/1995
San Antonio, TX
  • 3.7 GPA