Staff Software Engineer
CurrentThe company's focus is to successfully launch rockets with 100% mission success. Specifically, I work with a group who's focus is to develop and maintain a realtime, high fidelity, simulator used for testing flight article software. I have many roles within this group: C++ and OO expert, knowledgeable person with UML and Python, configuration management admin, Linux/IRIX/Solaris system admin.OO Expert:I work to build up my teammates' knowledge in both OO design and implementation. It is very satisfying to know that I helped educate others such that their initial questions, like "how do I cast in C++?", became "How do I implement polymorphism?".C++ Developer:Simulator maintenance and next generation development requires working in a number of different aspects of programming. I developed and maintained software for embedded C/C++ with VxWorks on our VME SBC cards, needed for high speed I/O access. In our next generation simulator, the VME SBC (MVME5100) cards have been replaced through PCIe based bridge expansion technology, allowing us to use the host computer as the SBC, thus eliminating the need for VxWorks. The host system is RedHat Linux, using Concurrent's real-time extensions. I have developed, tested, debugged, and integrated across all aspects of the simulator; drivers, infrastructure, interprocess communication (IPC), logging, parsing input XML files, model base classes, and model development.Python:Most of the Python I have written is for support utilities. Easing the use of Perforce (configuration management (CM) tool), establishing consistent processes for other developers on my team, establishing consistent processes for unit and system level integration testing, and increasing efficiency to identify and debug problems within the simulator. In early development, I typically use Python for prototyping (e.g. XML parsing) to determine proof of concept.