Principal Software Engineer
2016 - PRESENTWebworld Technologies- Built a web application for analyzing and querying geospatial/temporal/graph data. Developed all of the front-end (HTML/CSS/JavaScript) and parts of the back-end (Java/Accumulo).
Technologies: JavaScript, CSS, HTML, Apache Accumulo, JavaSenior Software Engineer
2011 - 2016Invincea- Worked as the primary developer on a machine learning malware detection project. Built the hardware. Wrote all the code for training (Python) and production (C++).
- Worked as the primary developer of a malware analysis server. Wrote all the server code (Python), the front-end code (HTML/CSS/JavaScript) and did the back-end analysis code (Python/C++). Used MongoDB for the database.
- Worked as the primary developer of an endpoint management server. Wrote all the code (HTML/CSS/JavaScript/Python) for the 2.0 version, then served as the tech lead. Used MySQL for the database.
- Developed many core features for our Windows desktop product (C++), including user interfaces (Qt), and did low-level Windows hacking.
- Wrote many of the internal libraries used in our desktop products (C++): networking (HTTP/HTTPS), crash handling/stack tracing, pipes, and threading.
- Developed all parts of our error-reporting framework, including the client (C++), the server (Python), and a robot (Python) to migrate the data into our bug-tracking system (JIRA).
- Wrote several internal tools (JavaScript/HTA/C++). Audited the penetration test results. Wrote automated load tests which used Amazon EC2 to simulate hundreds of clients.
Technologies: MySQL, MongoDB, Keras, Windows API, Qt, Python, C++Consultant
2011 - 2011Deloitte- Worked on a project to replace the Access database with a SharePoint server. Wrote a tool to migrate from Access to the SQL Server (C++). Developed a front-end in SharePoint (HTML/CSS/JavaScript).
- Worked on a project to develop visualizations for healthcare statistics (Flash/ActionScript).
Technologies: JavaScript, CSS, HTML, C++, Flash ActionScript, Flash, SharePointEngineer II
2009 - 2011Overwatch (now Textron Systems)- Developed a tool to ingest satellite images into various databases (Oracle/Microsoft SQL Server), including the user interface (Qt).
- Developed many features of a desktop product (C++), including parts of the user interface (MFC).
- Wrote several internal tools which used scripting engine built into a desktop product (JavaScript).
Technologies: Microsoft SQL Server, Oracle, Microsoft Foundation Class Library (MFC), Qt, C++