Application Development#

Let me take your ideas and turn them into an application that works for you. I have a lot of experience working with both engineers and less-technical users. Some of the keys to my success:

  1. Collect requirements with emphasis on understanding most complex usecase

  2. Provide mockups and demos as required to meet customer expectations

  3. Maintain clear communication on progress at each stage

  4. Thorough white and black box testing

Example Projects#

Sphinx2Dita (Python)#

As open source methods grew in popularity within Intel, it became necessary to enable publishing to Intel Developer Zone directly from GitHub source. I created a solution that vastly reduced the complexity of the existing solution and reduced the number of methods needed to be maintained by 50%. Put simply, this extension allowed the user to generate a fully publishable DITA XML book from Sphinx with zero manual steps.

Sphinx-md (Python)#

I saw a need to deliver a method for software teams with large amounts of existing documentation just hanging out in GitHub to be able to publish a full website to improve both the navigation and findability of their docs. As a result, I built this tool to extend the Sphinx documentation generator to fix some of the issues that crop up when cross-linking within GitHub.

reDocs GUI (Python/Tkinter)#

A GUI application that could 100% replace the need for technical writers to use a terminal to build their Sphinx based documentation. It would automatically create a virtual environment and install dependencies for each project and make “build” and “clean” buttons available in the GUI while displaying build output in the window.

Docs CI (Python and GitHub Actions)#

Bootstrapped an end-to-end solution for automatically generating and testing documentation artifacts on a weekly and on-demand basis for more than 20 software projects. Before this only the technical writer associated with a given project knew how to publish each project making it a severe bottleneck.

Automated Validation Environment (C++/.NET)#

I eventually became lead developer focusing on the UI and performance improvements of our in-house automation framework used to perform everything from smoke testing to power failure integrity testing of prototype Intel SSDs.

NANDstats (C++/.NET)#

Low level Windows utility for collecting NAND usage statistics of prototype Intel SSDs attached to the system.

NVMe Performance Calculator (Java Script)#

A Java Script based tool for computing the max NVMe throughput based on various settings. I created it after seeing a colleague’s spreadsheet. I foresaw a lot of demand for the tool and wanted to make sure I could distribute as widely as possible without exposing users to the risk of messing it up or getting a corrupted copy.