HOWARD LEE HARKNESS
I am not currently looking for work. I have just started what I expect to be my last job as a software engineer. My current position is not listed on this resume. I do not plan to update this resume in the foreseeable future, since it is no longer relevant for job search.
Non-smoker. I reside in Arizona. The best way to contact me is by email. If you have received a copy of my resume from any other source than this website, it is out of date. Actually, this page is now also obsolete, which is deliberate.
I have written many different types of software, including embedded systems, business applications, and engineering applications on several different types of computers. I also have over 10 years of experience in technical course presentation.
I prefer Linux for most development, although I am comfortable with either Windows or *nix. I have Windows 10 and Ubuntu in my home network, and I recently used MacOS, although it is definitely not my preference for embedded software development. I recently got a Raspberry Pi 4 several Raspberry Pi PICO boards to play with.
C, C++ (over 30 years), C++11/14/17/20, HWIL, Delphi, Lazarus, Python3, Perl, Standard Library, Design Patterns, FORTRAN, Ada, Windows, RTX, Linux (Debian, Suse, RHEL, CentOS, and Ubuntu), Unix, Solaris, HPUX, QNX, Tnix, Make, CMake, Ninja, VSCode, Eclipse, OOA&D, TDD, embedded, ARM, Qt, SQL, Relational Database, XML, Xerces, CygWin, SCRUM, Assembly, Forth, SwiftX, CORBA, MFC, electronics, RS-232, RS-485, SPI, I2C, GPIB, 1553, training, Bash, TCSH.
February 27th, 2023 — March 23rd, 2023
Contract software engineer at L3H in Rockwall, TX. Unfortunately, there was a budget cut in my department, and the position was eliminated.
July 26th, 2022 — February 1st, 2023
Fluidity Technologies, Inc. I worked with realtime embedded software using C++20 on an ARM target. I was the lead software engineer for the company, responsible for development environment choice, architecture, and hardware interface. I am under NDA with this company, so there is very little else that I can say about this position, other than it was exciting, challenging, and fun. Reason for leaving: As a risky high-tech startup, Fluidity experienced some financial problems. The company formally ceased operation in March 2023.
March 8th, 2021 — July 13th, 2022
Under contract to Lockheed-Martin in Grand Prairie, Texas, Missiles & Fire Control Division. I finally got to return to working with Linux (and VxWorks), doing a migration of the Patriot Missile System software from Ada to C++11/14. Also spent time working on the F35 in Ft. Worth, updating Bash scripts for the Linux development environment.
June 8th, 2015 — February 26th, 2021
Flight Safety International, Broken Arrow, Oklahoma. Real-time embedded C/C++ Developer, group Scrum Master. Courseware developer and presenter. I have worked on several internal projects, including SimFrame (the basic framework for FSI simulation software), SimIO (interface routines for the various types of I/O in use), and SimInterOp (implementation of DIS networking). I worked with a combination of Win7, Win10, and RTX to interface with simulation hardware (HWIL). I used C++11 for the first 4 years, then migrated to C++17.
June 25th, 2014 — December 19th, 2014
Embedded C/C++/Linux Developer
Under contract to Qualcomm. Duties included development of tools to be used to assist hardware engineers with setup to test new state-of-the-art multiprocessor system. All development was done using Ubuntu Linux and C++11 using proprietary hardware interface in addition to JTAG. Other technologies used included Git, Gerrit, Qt Creator, JSON, Lauterbach T32 (In-circuit emulator for ARM), and Python.
April 21st, 2014 — April 25th, 2014
Under contract to TekSystems to deliver a one-week C++11 New Features course to a new high-profile client of TekSystems. This was the first presentation of a newly-written course, and it was well-received. I got a 5 out of 5 review from the client.
May 2013 – November 2013
Embedded Systems Software Developer
Under contract to LuminatorUSA. I did a variety of tasks related to modern lighting systems and displays used on mass transit systems.
- Main development environment was Ubuntu
- Support activities that used Windows-based tools (such as the Keil PK51 Development Suite, which is not currently available for Linux), and other specialized IDEs for ARM and PIC processors.
- I used C and C++ (mostly C). My largest project was to migrate a code base from an acquired company into the Luminator process, cleaning it up and fixing bugs. This assignment made use of my electronic technician background as well as my software skills.
- I’ve had the opportunity to become more familiar with JTAG.
- Prepared sign display software written in C++ for a trade show in area with no cellphone reception
October 2012 – January 2013
Embedded Systems Software Developer
Under contract to Scientific Test, Inc.
- Migration of their test equipment control program from MSDOS/286 assembly to Linux (Debian)/C++/Qt.
- Completed Diode Vf module, then handed the project off to their staff. When completed, they will have a system that is much more maintainable than their current one.
August 2011 – October 2012:
Software Engineer 3, Offboard Systems Group.
New York Air Brake Train Dynamic Systems.
- Migrated programs from C to C++
- Designed and implemented software to read and report on locomotive logfiles
- Taught a 7-week internal course on C++ for C programmers.
- Wrote several specification documents
- Used several different versions of Linux – Ubuntu, CentOS, RHEL, and QNX.
- Migrated ad hoc reporting programs to Oracle RDBMS
- Used some of the eXtreme Programming (XP) agile methods.
- Participated in ISO9001 audit (passed).
April 2011 — June 2011:
Texas Advanced Optoelectronics Systems. Short-term contract, writing GUI software in C# for a utility to manage a single-board test system.
July 2008 – February 2011:
Senior Software Developer, PresagisUSA
- Maintenance and enhancement of high-performance multi-platform graphics tools written in C++ used to construct graphics environments including flight simulators, combat simulators, and other systems for previewing and planning high-risk activities in a simulated environment
- Migration of the core toolkit (almost one million lines of code) from VC8 (Visual Studio 2005) to VC9 (Visual Studio 2008). Most of the interim work was tracking down reported bugs in the code base (got a reputation as the go-to guy for memory leak problems and compiler issues)
- Some minor performance improvements in the Vega Scene Graph, and some usability enhancements in their Loki-based small-object memory allocator
- Used Windows XP, Windows 7, Red Hat Enterprise Linux and gcc 4.x
- Other tools used included Qt, Xerces, and CygWin
- Used SCRUM methodology.
August 2006 – July 2008:
Senior Software Developer, Fisacure, Inc. (now part of JP Morgan Chase), a medical information clearinghouse purchased in 2007 by JPMC
- Development and maintenance of applications written in Delphi 6.0
- Wrote T-SQL stored procedures
- Migrated applications to C#
- Used document/EDI (835) formatting, transmission, and parsing
- Analyze and fixed failures in various systems
- Attended C# courses provided by JPMC, and I used C++ for one-off utilities for my own use
August 2005 – July 2006:
CompUSA (Liquidated in 2006).
- Main responsibility was maintenance and enhancement of the system-wide point-of-sale software written in C++ using Qt for the user interface.
- Added sorely needed database lookup to relieve the cashier from re-entering customer information for every transaction.
- Wrote a utility that allowed the QA and Promotions teams to more easily troubleshoot high-level problems with store promotions.
May 2005 – August 2005:
Contract Engineer at General Dynamics, Longview, TX.
Antenna control software written in SwiftX (Forth). I did proof-of-concept verification software for new hardware to test RS-232, RS-485, SPI, I2C, GPIB, and CAN bus interfaces, and helped with hardware troubleshooting.
Experience prior to 2005 has been omitted from this resume, but includes:
- Teaching Technical Short Courses (C++, OOA&D)
- Process Control Software in FORTRAN/RatFOR
- Automotive Applications in C and 680x assembly
- ELINT/ECM/ECCM Electronic Warfare Systems
- Database and Bill of Materials Applications
BA (Computer Science major), University of Texas at Austin. Electives in Electrical Engineering, Chemistry, and Physics
UT Dallas. Two semesters, graduate Computer Science and Accounting
Technical Short Courses I have taught:
- C++/Advanced C++/C++11
- MFC Programming
- Relational Database
- Moderator for the UseNet newsgroup comp.lang.c++.moderated, January 1996-July 2015
- Chairman, C++ SIG of North Texas PC Users Group, June 1997–August 1998
- Programs Coordinator, North Texas PC Users Group
- Board of Directors, NTPCUG 2021 to present
- President, 2008-2009, Plano Early Lions Club. I have held every office in Lions Club up to Zone Chair.
- Teaching technical short courses for several national training companies (10+ years)
- Custom technical course development (Technology Exchange Company, EduCorp, and Sabre)
- Manuscript reviewer for Addison-Wesley-Longman, Prentice-Hall, and Sams Publishing
- Published a series of articles in 68 Micro Journal (1983-1984, award for best article of 1984)
- Public presentations to service organizations on a variety of topics
- Musical performance for churches and non-profit organizations (I returned to NTSO in September 2021)
- Substitute teacher for Austin Independent School District, Austin, Texas
- Violin teacher, with students of all ages
- Telephone system test-equipment technician
- US Navy Electronics Technician, Radar Specialist
- US Navy Reactor Operator