Over 15 years of experience in software engineering. Experience leading and evaluating other software engineers. Able to communicate effectively with customers, management, engineers, and end users.
Experience
2022 — Now
2011 — 2022
2006 — 2011
2006 — 2011
Led teams of up to five engineers to design, develop and test software for the U.S. Army in support of simulation experiments and field operations. Participated in planning and execution of experiments to simulate and test joint and multinational system interoperability. Conducted performance evaluations of other engineers.
Designed and developed a variety of software, including:
• Multi-threaded, real-time tactical radio simulator, written in C++ and using CORBA
• Message translator for tactical communications networks, written in Java
• Gateway for translating data between CORBA and HLA environments, written in C++ and using wxWidgets
• Web services for disseminating tactical data, written in C++ and Java using SOAP/HTTP protocol
• Extensible framework for integrating command-line tools with graphical interface, written in XML Schema with data binding using JAXB and output processing using regular expressions
• Graphical interfaces for signals intelligence, written in Java with SWT and JFace
• Graphical interface for psychological operations, written in Python using wxPython
• Graphical interface for information warfare, written in C++ with Qt
• Thread-safe native library for signals intelligence, written in C++ using JNI
• Tools for collecting signals intelligence, written in C and C++
Collaborated with experiment planners to define requirements for data collection and analysis. Designed and created databases using MySQL, PostgreSQL, HSQLDB, and Apache Derby. Developed tools for updating and querying these databases using JDBC. Analyzed experiment data using SQL.
Performed administration on Ubuntu, Red Hat, CentOS and Backtrack Linux servers. Installed and configured Subversion repositories, Apache HTTP servers, and Apache Axis SOAP servers. Installed and configured corporate knowledge base using MediaWiki, PHP, and MySQL.
Conducted laboratory and field testing of a variety of signals-intelligence hardware and software.
2000 — 2006
Led teams of up to six engineers to design, develop and test software for the U.S. Army Communications-Electronics Command (CECOM). Acted as primary point of contact with customers. Worked with customers to define software requirements, provide technical support, receive feedback and ensure customer satisfaction. Produced time, labor, and cost estimates and software development schedules. Coordinated efforts between in-house engineers and subcontractors. Developed software specifications for subcontractors and tested software for compliance. Trained other engineers in programming languages, modeling and simulation technologies, and Linux system administration.
Designed and developed a variety of software, including:
• Distributed, multi-threaded, faster-than-real-time tactical radio simulator, written in C++ with inter-process communication using TCP and UDP sockets, HLA, and DIS
• Faster-than-real-time network performance and security training simulator, written in C and C++
• Information warfare simulator, developed with Microsoft Visual C++ with graphical interface using Microsoft Foundation Classes
• Data processing and analysis tools written in C++, awk, and bash
Conducted informational briefings on current and future software capabilities. Conducted marketing briefings and developed marketing materials for potential customers.
Designed MySQL database to store data on internet attack techniques, vulnerabilities, effects, and defenses. Analyzed data from simulation experiments and produced reports on findings.
Wrote software documentation, including design documents, release notes, user manuals, software interface definitions, standard operating procedures, and test plans.
Performed administration on Red Hat Linux servers.
1999 — 2000
1999 — 2000
Developed Oracle database reports for Arbor/BP and Clarify using Oracle Developer/2000, SQL, and PL/SQL. Optimized reports to ensure adequate performance for large databases.
Developed data analysis tools using C++, awk, and Unix shell.
Provided guidance and instruction to engineers to develop reports using Developer/2000 and write queries for Arbor/BP and Clarify. Evaluated reports produced by junior engineers.
Provided technical support to customers on execution of reports.
Education
Harvard University
1988 — 1992