Dan Leach Resume
Total Page:16
File Type:pdf, Size:1020Kb
This document can be found at http://alum.mit.edu/www/dan.leach/resume/dan_leach_t7.docx and http://alum.mit.edu/www/dan.leach/resume/dan_leach_t7.html Other versions of my resume and other materials can be found at http://alum.mit.edu/www/dan.leach/resume/ DAN LEACH [email protected] 138 York Street Corry, PA 16407 Skype ID danleach0508 US Citizen (814) 572-9941 (cell) EDUCATION Massachusetts Institute of Technology B. S. in Computer Science and Engineering, June, 1980 SKILL SUMMARY C++, C, C#, JAVA; other languages used include JAVASCRIPT, Visual Basic, LISP Windows, .net framework for Windows, and UNIX / LINUX / AIX Taught courses at a number of universities, including Northeastern University, University of Massachusetts, University of Lowell (see appointment letter to graduate faculty), and Boston University. Courses taught included "Advanced C++", "Advanced C", "Analysis of Algorithms", "Data Structures", "Computer Language Theory", "Design and Construction of Compilers", "Expert Systems", "Artificial Intelligence", and "Organization of Programming Languages". C++, C, C#, JAVA; other languages used include JAVASCRIPT, Visual Basic, LISP Windows, .net framework for Windows, and UNIX / LINUX / AIX / HPUX / RTOS / and other OS’s C++: Microsoft Visual Studio 2015 (C++11) on Windows 10; TI’s Code Composer Studio 6.2.0.00050 for Ubuntu 14.04 LTS; gcc and g++ (C++11) on Ubuntu; gcc and g++ (C++11) on Centos; gcc and g++ on Red Hat Linux (cross compiler for Toshiba’s Linux CE); CodeWarrior from Metrowerks on Windows for VRTX; XLC on AIX (VisualAge C++ Professional / C for AIX Compiler, Version 6); Microsoft Visual C++ (MSVC 1.0 to MSVS 2015 (C++11)); Borland 5.5 on DOS; C++ (CFRONT) on ATT UNIX System V; MS C++ on MS DOS; Glockenspiel C++ on MS DOS; Glockenspiel C++ on ATT UNIX System V; gcc and g++ on MS Windows; gcc and g++ on MS DOS; C++ on HP-UX; C++ on AIX; C++ on Wang 42X; gcc and g++ on various versions of linux C: Microsoft Visual Studio 2015 (C99) on Windows 7; TI’s Code Composer Studio 6.2.0.00050 for Ubuntu 14.04 LTS; XLC on AIX (VisualAge C++ Professional / C for AIX Compiler, Version 6); Microsoft Visual C (MSVC 1.0 to MSVS 2015); Borland 5.5 on DOS; MS C on MS DOS (MS DOS (all public releases) to MS DOS boxes on Windows 1.0 to Windows 10); CC on ATT UNIX System V; C on Berkley Unix; C on Wang 42X Miscellaneous: .RS232, UART, NET Framework 4.6; TFS, SCRUM, Jira, ClearCase, XML, Coverity, Siebel, STL, Visual Studio, Metrowerks, git, Visual Source Safe, Perforce, Subversion (SVN), StarTeam, CruiseControl.NET, Embedded SQL (from C, C++, and C#), Oracle, DB2, InstallSheild, SDLC (software development life cycle), OOA, OOD, OOP, SQL for Oracle, TSQL for MS SQL Server, UDB for DB2 on AIX, .NET 4.6, boost in C++11, multithreading, nant, make, gmake, mmake, cmake, imake, UML PROFESSIONAL EXPERIENCE 3/21 – present: ASRC Federal through Data Intelligence Moorestown, NJ Software Engineer IV (Consultant) Fixing bugs for Lockheed Martin in legacy C++. Using GNU/Linux 2.6, g++ 4.9.2, clearquest 9.0.1, clearcase 9.0.1, gears 7.4.0, cmake 3.11.2, gedit. SECRET clearance. 11/19: Wabtec through Resolvit Erie, PA Software Engineer (consultant) Worked on fixing and optimizing Wabtec/GE Transportation tool software for building and loading embedded software for locomotives. 4/19 – 7/19: Nokomis through Mon-Valley Employment and Labor Services, Inc. Software Engineer (consultant) Pittsburgh, PA Worked on embedded tuner control software in C and C++ for an arm processor running a linux core with BusyBox. The build tool set is the Xilinx SDK on Windows 7. As the version of boost that we were using did not contain PropertyTree functionality, I implemented a subset of PropertyTree using the STL for reading, using, and constructing ini files. Some work using gcc, g++, make, and MSVC 2015. Source control was done using git. 8/18 – 12/18: General Motors through JDM Consulting Warren, MI Embedded Software Engineer III (consultant) Embedded work on Super Cruise using g++11 on SDV (Software Defined Vehicle). Porting new version to Adaptive AUTOSAR running on ubuntu. It was all embedded object oriented g++. 2/18 – 3/18: Bombardier Transportation Pittsburgh, PA Senior Software Engineer Worked on simulators for testing software for self-driving trains written in C# (w/ some C and C++). 12/17 – 1/18: Surface Mount Technology through American Contract Group Appleton, WI Software Engineer (consultant) Embedded work to control a gas range using C with TI’s Code Composer Studio 7.3.0 and HalCoGen 4.7.0 using Windows 10 for the TI Hercules RM42. 5/17 – 8/17: Astrobotic through System One Pittsburgh, PA Lead Flight Software Engineer (Consultant) Helped design flight software to control a space robot (the Peregine Lander). Initial port (proof of concept) was done using C and C++ with TI’s Code Composer Studio 6.2.0.00050 for Ubuntu 14.04 LTS. We were porting NASA’s cFE (core flight executive) and OSAL (operating system abstraction layer) to run on freeRTOS on the TI Hercules RM57L843ZWT. 4/16 – 12/16: General Dynamics through Beacon Hill Staffing, Fort Wayne, IN Software Engineer (consultant) Design, development, and maintenance primarily in C++11 using MSVS 2015 for Windows 7 for a Common Battlefield Application Toolset (ComBAT) for the British Ministry of Defence. Constructed white box units tests using the Google C++ Test Framework (Google Test). Tools used included boost as part of C++11, Team Foundation Server (MS TFS), and Qt; work was done on Windows 7 using SCRUM. 2/16: Sensaphone, Aston, PA Software Engineer Design, development, and maintenance primarily in g++11 for Ubuntu precise (12.04.5 LTS) for remote monitoring and control systems. Tools used include git, automake and g++ 4.6. Development was done thru putty for Windows 7 using SDLC. 11/15 – 12/15: Saab Sensis Corporation, East Syracuse, NY Software Engineer (consultant) Design, development, and maintenance primarily in g++11 and git for CentOS for a radar system (CRUMBS -- Common Radar Upgrade Modular Building blocks) for the Indian Navy. Tools used include JIRA, subversion, coverity, g++, cmake, Confluence, and Jenkins. Development was done thru TigerVCN for Windows 7 using SCRUM. 2/15 – 6/15: GE Transportation, Erie, PA Staff Software Engineer Design, development, and maintenance primarily in 68010 assembler, C, and PASCAL for embedded software for GE locomotives. Tools used include ClearQuest and VirtualBox (NetBSD 6.1.5). 1/15 – 2/15: Zodiac Inflight Innovations, Brea, CA Software Engineer (consultant) Design, development, and maintenance primarily in C++11 for an embedded Ubuntu platform for inflight entertainment. Tools used included JIRA, subversion, coverity, g++, gmake, Confluence, and Jenkins. Development was done on VirtualBox running under Windows 7 using SCRUM. Embedded system used both OOD and design patterns. 5/13 – 7/13: Hewlett-Packard, Nashville, TN Systems Engineer (consultant) Design, development, and maintenance primarily in Pro*C/C/C++ and scripting (sh, csh, ksh, and perl) on UNIX (SunOS 5.10 for SPARC-Enterprise) using Oracle to help solve issues and process claims and payments for TennCare. 2 10/12 – 4/13: PathGroup, Brentwood, TN Software Developer (consultant) Design, development, and maintenance primarily in C++ (MSVC 2012) for the .net framework on Windows 7 using SCRUM. Ported PathGroup applications from MSVS6 to MSVS2012. Data stored in MS SQL Server. Researched adding molecular genetic reporting in HTML5 (from GenoSpace) to our reports to aid in personalized medicine. Application used MFC, OOA, OOD, OOP, and design patterns. 6/12 – 9/12: Emdeon, Nashville, TN Application Programming Analyst / Programmer IV (consultant) Design, development, and maintenance primarily in Pro*C/C for AIX of processing CMS-1500/CMS-1501, 997/999 (Functional Group Acknowledgement/Implementation Acknowledgement) reporting (for insurance claims clearing), and HL7. Built new wrapper for archive software (records must be kept for a number of years (varies from state to state) and Emdeon currently has petabytes worth of them stored at its data center; so far, Emdeon has never deleted anything, just moved it to slower forms of storage as it gets older). Data stored in Oracle. Some JAVA, perl, and shell scripting. 4/08 – 3/12: Intergraph, Huntsville, AL Software Scientist Design and development in C++ and C# on the .net framework on Windows using Visual Studio for Intergraph’s Computer Aided Dispatch system as it relates to InService’s Outage Management System and Mobile Worforce Management. Design and development of DLL’s in C++ (e.g., OMSAlarmManager) for interop with C# and GUI’s (in C# (e.g., OMSStyleConfiguration tool) and C++ (e.g., OMSDisplayOptions)) using dynamic redundant SQL (an extention of t-sql) for Oracle and MS SQL Server. Some MQSeries Messaging. Configuration management and build management – built releases, service packs, and patches of OMS and MWM to ship to QA, coordinating the activities of developers in the United States and India using SCRUM. Applications used MFC, OOA, OOD, OOP, and design patterns. Source Control was being migrated from Visual Source Safe to SVN. 7/03 – 3/08: Consultant/Contractor Some work as an independent, the rest through other firms. Clients included Motorola (I developed for cable set top boxes and hosts for cable cards) and QVC (I worked in Enterprise Data Services). Development in C++ and C, some development in JAVA, JAVASCRIPT, VB, and C#; for UNIX (including xlC on AIX, gcc on Linux, and Metrowerks CodeWarrior on Windows for VRTX) and the .net framework on Windows (using Visual Studio); used SQL for DB2 and SQL Server; used XML for doing data exchange.