- Freelance Software Developer2015 - 2015Otogenetics Corporation (via Toptal)
- Created a command line utility for batch processing to adjust the frequency spectra of audio files according to desired parameters.
- Set up a version control repository for the project.
- Wrote a user's manual and developer guide for the utility.
- Senior Software Engineer2013 - 2015Alidyne Consulting
Technologies: C, C++, Python, C#, Bash, Make, Sed, OpenCV, Docker, 0MQ, Linux kernel module
- Developed testing processes for inboard control software of the Sunjammer solar sail project (www.sunjammermission.com).
- Created custom test tools for the Sunjammer IPC bus using Python 2.7 and C++.
- Wrote half of a custom Linux kernel module performing scrubbing of ECC memory, including the user -> kernel space communication code. Kernel code in C. User code in C++.
- Led a small team of developers in implementing a multi-process simulation system for verification of Sunjammer solar sail deployment and maneuvering algorithms and control code. The simulation system was implemented on Windows in C# and Matlab, with 0MQ 4.0 for IPC.
- Prototyped an image processing back-end for a new web application product offering in C++ with OpenCV 2.4. Containerized the processing server using Docker.
- Developed feature improvements to sensor data acquisition and telemetry downlink software for remote sensor platform on dsPIC33 in C.
- Contract Software Developer2012 - 2013Harris Corporation: RF Communications Division
Technologies: C++, Make, GCC, QNX, PIM
- Contributed significantly to a small development team integrating a third-party Protocol Independent Multicast implementation with Harris-RFCD’s Falcon III network radio platform.
- Developed an understanding of a complex third-party PIM implementation and integrated PIM code into an existing platform build.
- Provided analysis and debugging of PIM operation and identified low-level network stack issues.
- Developed code in C++ and C for QNX 6.4 OS. The build system used GNU Make and GCC.
- Senior Software Engineer2010 - 2012The Software Specialists, Inc.
- Designed and developed a .NET 3.5 app using WPF with C# and XAML on Windows XP for control of custom ARINC 429 test hardware. The application met or exceeded all requirements during qualification testing and is now used by Rockwell-Collins as a more capable replacement for more expensive hardware.
- Designed and implemented an autonomous control and navigation system for a prototype Unmanned Sea Vehicle in Java on Windows XP. Created diagnostic tools in Clojure. The prototype system was marketed to and generated much interest from the US Navy, Special Forces, and DARPA.
- Designed SIP ALG for Falcon III NAT and was integral to its implementation and debugging. Developed with CORBA IDL, C++, and C and deployed on QNX 6.4 OS. Delivered software in time to meet Prime's schedule and with no defects identified.
- Contributed significantly to a small team integrating a third-party NAT implementation with Harris-RFCD’s Falcon III network radio platform.
- Software Engineer 22004 - 2010Harris Corporation: Government Communications Systems Division
- IR&D developing GUI in Java 1.4 & Jython 2.1 for a distributed computing work server.
- Created real-time image processing SW for high performance embedded platform. Optimized mission-critical algorithms in C++ with Altivec SIMD compiler intrinsics. Misc. prototyping and tool creation in Matlab, Java, Win32 C++, & Perl. Participated in the project from preliminary design to field testing. The success of the initial implementation led to a multi-million dollar follow-on.
- Assisted in the implementation of a modeling and simulation framework in IDL 6.1 and ENVI 4.2 for IR&D.
- Prototyped calibration of raw Geo-Spatial sensor data using C++ for IR&D.
- Prototyped applications for smart-phones using .NET Compact Framework 2.0 and C# on Windows Mobile 5.
- Developed configuration and control GUI apps with Python 2.5 and WxWidgets 2.8 on Windows XP for driving multiple HF radio types via serial port. Designed, implemented, tested, and delivered on time to meet a stringent 6-week schedule.