Owner, Principal Consultant2018 - PRESENTSentian Software Engineering
Technologies: AWS Lambda, DynamoDB and API Gateway, Google Cloud Platform (storage, networking, compute, big data), Python, Node.js, Kubernetes, Docker, Redis, MongoDB, MySQL, DynamoDB
- Set up an ESP 8266 to sense temperature, humidity and monitor with IBM Cloud (Bluemix IoT Platform) via Node RED; set up to control LED emitter from Node RED.
- Implemented a RESTful app back-end.
- Improved the predictability of taxi driving load by several percent via machine learning models.
- Translated foreign language traffic signals.
- Set up a VPN and security for a Google Cloud note-taking application.
- Improved Redis deployment for high availability.
- Correlated airport delays with demographics.
- Migrated a legacy web application to Google Cloud Platform.
- Automated the deployment so downtime was almost 0 when upgrading, and deployment occurred only if all tests passed.
- Architected the migration to achieve scalability via load balancing and replica sets.
- Created performance tests to catch performance regressions.
- Migrated Node.js code to use MySQL, and set up automated daily backups of DB using Docker container.
- Designed and implemented Docker and Kubernetes configuration files to support scalable architecture, automated regression testing, and automated deployment.
- Set up a virtual Ubuntu development environment to handle Google cloud tasks.
- Featured in recent book publication “Python Interviews: Discussions with Python Experts,” Packt 2018 by Mike Driscoll, based on my open-source work.
Senior Consultant2005 - 2017CAE, Inc.
Technologies: Python, C++, C#, Lua, Windows, SQLite, PyQT, TCP, SOAP, GenesisRT, USB, Vega Prime, Boost, Pub/Sub, HLA, Networking, Projection, RPyC, TLS/SSL, XML, RelaxNG, MySQL, Java, OpenSceneGraph
- Led the development of a visual programming environment for business process modeling, managing a team of about five people. Created a GUI testing module that I put on GitHub, for visual regression testing in Qt and PyQt.
- Created C++ and Lua components for crew communications and graphics-based target recognition controlled via joystick. Wrote a design document for a portable simulator of a CH149 helicopter mission rehearsal.
- Built a distributed, multi-display virtual reality training environment for aircraft threats. I designed the physical workstation, leading a team of three, wrote the management GUI, and debugged the C++ Vega Prime graphics renderer.
- Developed a cluster deployment automation framework.
- Developed a GUI application representing the control station of a search-and-rescue aircraft.
- Spearheaded a team of three to build a multithreaded, event-driven virtual reality avionics troubleshooting application that simulated the databus of a modern military aircraft.
Visualization Software Developer1998 - 2005National Research Council
Technologies: C++, Fortran, Immersive Displays, Motion Tracking, Inter-process Communication, Networking, Unix
- Developed a real-time image processing utility to use a laser pointer as a mouse.
- Developed a crane operation training system.