Post Job Free

Resume

Sign in

Electronic and software engineer

Location:
Washington, PA
Posted:
January 18, 2024

Contact this candidate

Resume:

Ronald Alan Harding

ad2vr0@r.postjobfree.com

Summary:

Ronald A. Harding is an experienced software and hardware engineer with expertise in various programming languages such as C, C++, C#, Python, and Assembly. He has worked on a range of projects involving the development and evaluation of electronic devices, modules, and prototypes. Ronald has experience with embedded systems, IoT, RF circuits, and RF antennas. He has worked with tools like Microsoft Visual Studio, GCC, GDB, Virtual Box, and MongoDB. Ronald has also worked on test automation, firmware development, and software troubleshooting. He holds a Bachelor's degree in Electronic Engineering Technology and has received additional training in MCSD.net.

Skills

C,C++, C#, Python 2.7,Python 3.9,Assembly, BASIC

SCPI(GPIB),TCL,DFU,SATA,NVME,BLE,WIFI,USB,VCP,SPI,I2C,REST,MFC, SerDes,.net serial port 2.0, zyserial by zylsoft.

GCC toolchain, make file kits

Virtual Box 6 from Oracle to call different Linux variants when needed for end device communications

Experience with Continuous Confidential (CI)/Deployment(CD) tools like Cruise Control.

Devices

68HC11A8, 68HC11F1, 68332, 68360, C8051F,ARM7TDMI,ARM CORTEX M4,AVR,NRF52,

C compiler for Microchip PIC devices; PIC16F877A, PIC12F675 (PICC compiler)

Microchip basic STAMP

Nrf52840 nordic device

Linux

Redhat(2), Fedora(2), Ubuntu(3), Debian(3)

Some on laptop others on devices such as Beagle Bone Black and Pocket Beagle devices.

work linux on wrappers as well such as JSLinux on the city mission computers.

RTOS

Ecos RTOS

Open RTOS

Electronic circuits

Designed/built electronic interface between a battery charger Device Under Test(DUT) placed between a factory PC for automation.

Designed/built serial interface as FTDI device using proprietary packet passing protocol where I signed NDA for Kenwood Two way radio control.

Education

WWU, Bachelors of Science of Electronic Engineering Technology, 1994

NW Technical College, MCSD.net training, 2004, Lynnwood, WA

Experience

City Mission, Washington, PA

Computer center worker, Sept 2023 to Nov 2023(2 months)

I provide assistance and guidance on computers in the lab.

Keysight Electronics Everett, WA

C#, python and electronics engineer, May 2022 to June 2022 (1 month)

I provided automated test system design and build services for client. This was quick turn around as they required my unique skills to solve their problems. I used python and c++ to design, build tools for test of their systems in house.

Optronic Laboratories, Inc. Orlando, Florida

C/C++ Software Engineer August 2020 – November 2020 (3 months)

At Optronics lab I worked on a silabs c8051f based product that is precision scientific instrument that outputs light. This was a reverse engineering role largely. They had product come back from customer with a very specific failure mode; I discovered late in the game that the silabs processor USB HID interface was failing intermittently. My work to detect the problem was to write some firmware to inject specific packet stream in both directions in the firmware and use the existing USB diagnostic utility to detect bit patterns for starters. Then manipulate the existing usb hid code to tune in on problem.

Provided troubleshooting services on two product lines

one product used the C8051F Silicon Laboratories device.

CRUD : Creating, Reading and Updating Data in MongoDB.

Developed SOAP web services for order and trade related information to display on UI. Used proprietary MQ to subscribe to order and trade updates.

Migrated applications, which were in C/C++, Java, Perl and shell scripts from Solaris Platform to Linux platform.

I worked on USB HID device driver issue that exists after release of the product

Involved in understanding the big data ecosystem of Apache Spark to integrate the library with the data from the Apache Spark.

Track Change Requests in a Kanban framework using an Atlassian JIRA software.

I used the Keil IDE in C. I can discuss specifics if needed.

Nokomis Charleroi, Pennsylvania

C/C++ Software Engineer November 2019 – February 2020 (4 months)

At Nokomis in Charleroi PA I worked for client in team of 4 people on C# windows form application that was under contract with the U.S. Air Force. This software complex graphing functions built in with interface to a hardware that together were used to sense counterfeit electronics.

Reverse engineer existing c# application in team

Tool usage 'OxyPlot' free ware windows form signal plotting software.

I added functionality in the code as assigned daily; i.e. oxyplot graphics, and windows 7 form application details. The system controlled a hardware that provided the client with the ability to detect electronic counterfeits.

Experience with Source control in Subversion with AnthillPro under Teamforge, Git, GitHub, Stash now called Bitbucket and Atlassian tools like JIRA & Confluence.

Used Java Servlets, RESTful, and SOAP for client server communications. And used XML and JSON stream parsers.

Wrote Perl scripts to edit source code in bulk to facilitate porting source code from Solaris platform to Linux.

Experience build CI/CD pipelines for application and service delivery into Cloud Foundry via Jenkins - build and release with GIT and Artifactory.

I used C# on MS Visual Studio I can discuss specifics if needed.

RealTime – Plano, Texas

C/C++ Embedded and Software Engineer, August 2019 – Oct 2019 (2 months)

At RealTime in Plano Texas, i replaced the development system for one product with on that uses Virtual Box 6 on windows 10 machine with an embedded run of UBUNTU. That system used Segger’s JLink probe to test 1” square pcb touch sense health watch product. That health watch used a Nordic Semiconductor Nrf52 series device Blue Tooth Low Energy (BLE) device. today i use the STM32 Nucleo, about $13 off of ebay to work test development of ARM Cortex based devices. I used that together with VisualGDB plug in i bought for $100 on MS Visual Studio.

WPF DateTimePicker application for TimePicker implementation

provided for test and debug tools for mobile watch product.

Compile and download firmware using D.F.U. Nordic semiconductor tool.

Device usage Chip nRF52840 BLE by Nordic Semiconductor built

around ARM cortex M4 CPU running @ 64MHz.

Tool usage 'Virtual Box' 6.0 running Ubuntu on Windows.

Tool usage 'SEGGER J-link debugger tools for same.

Used C++ and C in the coding here with GCC toolchain. Can discuss if needed.

Micron – Boise, Idaho

Test Software Engineer, January 2019 – July 2019 (7 months)

At Micron in Boise I also used Python in their lab to write python test scripts on two new SSD device variants; one SSD intended to be deployed as multi media in automobiles and the other in server farms. my tools provided testing of these devices in environmental chambers. I used Keysight gear while using the PyVISA tools for test equipment remote control and i used the python Multiprocessing class to run python and other processes on available pc cores asynchronously. this approach proved to be more effective than multi-threaded approach in that case.

Create test suite and test cases for new Solid State Drives on the Nitro and Falcon product lines in Python 2.7

Created Python script that controls SMU electronic test equipment to both

monitor power usage and to provide pulsed mode power to the SSD device under test.

Used TCL scripting to adjust the internal power rails of the SSD device under

test for tolerance device testing.

I used 'multiprocessing' class to run each process asynchronously on different PC cores.

Provide functionality for SATA and NVME

TCL scripting tool specific. Python 2.7 was used for device. I can discuss implementation if needed.

American Amplifier Technologies - (remote) Boise, Idaho

Embedded Engineer July 2017 - July 2018 (12 months)

Design/build embedded software in C/C++ for SNMP protocol implementation on Arduino

MEGA2560 embedded in RF VSWR meter product.

Design / build user manual for RF VSWR power meter.

Upgrade documentation for amplifier user manuals

Design / build manufacturing instructions for RF VSWR power meter.

Use MultiSIM software for circuit design, simulation and circuit layout.

Evaluated Matlab on board client laptop. (I have used MathCAD since WWU in 1992 in design and build of math based formulae. While at T-mobile I used mathCAD for a math based equation using an arbitrary waveform generator.

Design/build tool to assess problem with SNMP in RF VSWR power meter project

Design Ethernet shield interrupt driven software modules for serving up webpage on port 80 and SNMP via UDP.

I can discuss the C coding used on the MEGA2560 Arduino device if needed.

Hewlett-Packard - Boise Idaho 83714

C++ Engineer October 2015 - May 2017 (31 months)

At Hewlett Packard i worked on their new WIFI printer products with Unit tests that i designed in Python. That was my first experience with GitHUB running in house with redhat. HP is a member of the WIFI Alliance. I was tasked to to testing that is confidential to the world. I learned much about making unit tests in python there. I did learn i had to keep my GitHub repository up to date else you run into problems.

Designed/built manual test for new dual band wifi printer product with test on redhat linux laptop.

Designed/built python tools for automation and manual testing of dual band wifi printer product lines( Broadcom Ulysses dual port WIFI chip fo r 2.4GHz and 5GHz WIFI bands)

Python used here was version 2.6.7 on RHEL 6.2 license.

I can discuss Python coding here if needed.

IoT Startup (no name given)

Engineer November 2014 - June 2015 (18 months)

This role involved much initial research as to what the client was looking for to meet their specification requirements.

Created product proposal plan for system to be deployed to South Africa for the purpose of protecting farmers and animals from poachers.

Evaluated SigFox, Ultra Narrow Band technology, and 802.11p as tools to deploy in drone aircraft, towers and small repeater sites.

tasked to create a better protocol than existing IoT protocols as of time frame stated here.

I can discuss the protocols with you if needed.

Seatel Cobham - Concord, CA 94565

Software Engineer Sept 2014 - November 2014 (3 months)

At Seatel Cobham, I worked on tracking satellite antennas. Main client was Princess Cruise lines. The deliverable that they required was a test framework that targeted the embedded developers on the team. The embedded device based web pages were C++ / CLI based. I made examples so they could automate testing of the web pages using SELENIUM. I used a plug in called 'fireplug' to Firefox web browser to customize 'XPATH' statements so each web control could be automated.

Created test harness tools for embedded developers on the software team; description is next.

Created automation tools that provided connectivity, programming firmware and control of the various products over RS232, USB,NMEA, and LAN, using TFTP, internal tool called TFTPC, Zmodem, Telnet, all using C# automation.

Created automation tools using Selenium and Firefox/Firebug to pro-grammatically navigate webpage for firmware upgrade on product(test framework)

I can discuss the Test Framework I designed in C#, and C# serial, lan and other connections to the device under test.

Laird Technologies - Grand Blanc, MI

Software Engineer June 2012 - April 2013 (10 months)

At Laird in Michigan when I came on board there were significant problems in the GPS tracker test system. I was tasked to repair those problems. one of the problems had to deal with the Cellular modem as it failed to connect to the local cellular service reliably. Using hardware modem data sheets and coding practices I fixed this issue and others by using what is known as 'Facade design pattern'. I used this pattern to make a replacement test system by incrementally putting together puzzle pieces(functional code modules) until a full system could replace the crippled test system that we continued to use in parallel to keep product test going. Further, I was on team there to design and build the next generation of GPSI tracking devices. We provided product and test system to manufacturing in China on two variants of products; low cost GPS tracker and the mid range GPS tracker; production run of about 2 million units each.

Designed / built NMEA GPS parser utility for new product release. This was deployed in EOL production test in China.

Upgraded battery test system with new functionality by using Team-viewer in Mexico. This involved EEPROM programming using C#.

MCAL API for testing and development of OBD2 devices at Laird together with ISO 26262

Corrected/improved and reverse engineered existing GPSI(GPS Interface) test system, primarily used for registration test including POSTGRESQL database.

Provided test specification for developing system requirements on two new M2M products for various vehicle functions(VFs) using design patterns and model based development.

Used test specifications to develop c# test engine, electronic test fixture to program and the two M2M products. This work involved I2C and SPI test as well.

deployed to China for production test.

Provided repair services on products, electronic test fixtures, and associated c# control applications.

Intermec Technologies - Everett, WA

Senior Software Engineer Oct 2011 - Dec 2011(3 months)

At Intermec I provided testing of a new cell phone that provides barcode scanning capabilities that used CISCO extensions to WIFI. Main lesson learned here was the fact that under secure roaming in factory environments with multiple WIFI access points EAP, PEAP, LEAP CISCO authentication are superior in performance as compared to WEP/WPA/WPA2 MS authentication.

Provide 802.11 security testing of product prototypes consisting of both non-authenticated and authentication connections using both Microsoft and Cisco supplicants.

Used IXIA/Chariot and RADIUS servers in this work.

Used Lua scripting for testing IP with Intermec product prototypes.

Microsoft Xbox – Redmond, WA

Software Engineer May 2009 - July 2009(3 months)

At Microsoft Xbox I fixed and upgraded xbox 360 game pad controller production test software in c#. Another work of mine was reverse engineering of existing test system and upgrade from being outdated for 4 years. That consisted of Labview software, NI Hardware and electronic test fixture.

* Responsible for one production release of Xbox WIFI peripheral product

* Upgraded existing C# .NET software for production test of gamepad controllers for Xbox. The controller was upgraded over network using SQL and MS Access. This application is now used on the production line in China.

* Reverse engineered existing National Instruments PXI test station to build new test fixture and associated test software in LabView and c#. The documentation was later used to design a new production test line.

T-Mobile – Bellevue, WA

Test Development Engineer Feb 2007 - Dec 2008 (22 months)

At T-Mobile corporate over 2 years I developed serial port based smart terminal emulator tools to test OEM cell phones and wifi routers for functionality to evaluate wifi and the associated switch between cellular(2G, 3G) and wifi (VoIP) ;. This includes the following implemented tools Battery Life, Current Drain, Blue Tooth, Wifi packet field parsing using wireshark and other tools, After T-mobile added their 'code on top' i did the work in their validation engineering lab there. Deliverable i created were used to create device specifications for vendors of the T-mobile phones. My logs generated from my test applications were used for this purpose.

Designed control software to perform validation testing of T-Mobile hotspot at home products. This software provided for lab automation, and it also provided the test engineers the ability to test more OEM connected handset prototypes in the field as well.

Device Bluetooth test, new cellphone prototypes with provided API for state machine access and interfaced test fixture to test over the air audio Quality of Service Test

Desktop and desktop - device integration applications developed

I upgraded C++ /MFC code device driver to map new device I was working with to c# device.

WIFI Cellular phone handset - test automation developed using AT commands over serial port to data acquisition session of collecting the measurement data over the test session. The data acquisition session was done using an Agilent 66319D GPIB to USB adapter. SCPI(GPIB) scripting was used to make the data acquisition of performance data over battery life of li-ion ce phone batteries under the load of wifi radio usage scenarios.

Airpcap sniffer - wifi packet sniffing and data parsing, remote control of Airpcap(i.e. change channels programmatically, ect) by data-marshaling

Microchip Basic stamp with TTL outputs, BASIC programming - programmable RF attenuator control in c# applications;

oRF blackout,

oHand-IN/Hand-OUT,

odual attenuator Hand-IN/Hand-OUT,

single server/multiple client for synchronous measurement of GSM RSSI of multiple connected cellular handsets.

Tshark command line used extensively in c# applications for data logging and test applications(redirected streams to windows)

Fedora Linux via Ethernet remote control for wifi packet sniffing using Ethernet/WIFI and Labview

WIFI Access Point - automated power cycling code; measure delta time from power ON to first AP ping. This also used a c# server to LabView client remote control connection to provide additional control.

WIFI Access Point - automated power cycling code; measure delta time from power ON to first AP BEACON packet detection. This also used a C# DLL used to packet sniff the beacon packet.

C++ for un-managed DLL access to functionality for use in .NET (Data-marshaling / Platform invoke)

C# projects and for desktop-micro-controller/prog. device integration. Project to build a WIFI RF detector.

Elektrobit EB PropSim C8 - multichannel MIMO for multi-channel emulator – initial

CoCo Communications

Hardware Test Development Engineer Sept 2006 - Dec 2006 (4 months)

At CoCo comm, downtown Seattle, I developed c# winform app and electronic test fixture to test two way radio gateway using Kenwood radio's proprietary packet passing protocol. Part of this test I measured Total Harmonic Distortion (THD) to test the audio DSP on board the DUT in both record and playback. this included verification of radio protocol implementation and verification of the device under test in both MANUAL and AUTO modes.

Design hardware and associated control software for test of a two way radio control product.

Successfully designed and implemented a DLPdesign USB digital bit bang interface in c# and made modifications to c++ driver to be able to do bit-bang. This provided the interface for testing the parallel port version of the two way radio control product.

used Kenwood radios proprietary packet passing protocol, I developed C# code to look and act like a two way radio to the product under test.

RS232 serial control interface using the .NET 2.0 Serial port class, and implemented threading for it. This provided the interface for testing the serial port version of the two way radio control product.

Built test procedures with screen shots, and traveler documentation to go along with the units. This provided the instructions needed by two way radio technicians to test the two way radio control product line.

Manufacturing Validation and associated Verification documentation for new product introduction ramp up into manufacturing from development-internal processes for all new product lines.

Mackie / LOUD Technologies

Repair Technician April 2005 - June 2006 (15 months)

At LOUD / Mackie in Woodenville, I tested and repaired to component level a portable 24 channel Mixer board that used AES 24 bit digital audio / i2s. I performed BERT / SINAD test on this gear using Audio Precision test gear. Also I used the 'PADS' software for the microscope component level troubleshooting. I used precision soldering and rework gear on the large mixed signal pcbs. Also I earned a SMD soldering certification while there.

Test, troubleshoot and repair studio quality digital and analog audio mixer boards

Designed and built troubleshooting guides for Chinese service technicians

Designed and built test procedures for Chinese service technicians

Zetron Inc.

Manufacturing Test Engineer 1996 – 2004 (48 months)

Zetron Inc -- developed test plans, electronic test fixtures and test procedures for new products in manufacturing / production test (96 -04). Much of the product was designed to control two way radios. I authored/built several electronic test fixtures, procedures and plans over the 8 years that i was there. Zetron purchased a company that sold two way radio repair equipment, that was named ‘Helper Instruments’. I was on team to reverse engineer and create new test procedures in our manufacturing facilities. This work included making test of SWR meter and SINAD meter.

Engineered use of JTAG/Boundary scan on one production line dense packed PCB high pin count devices to program / test the DUT. This was using Altera ByteBlaster, Quartus 2, and xilinx IDE webpack.

Redesigned and built Test Procedures, Test Fixtures and completed documentation

Provide mentoring in troubleshooting end-product to the test technicians in the troubleshooting

process using standard lab test equipment (DSO, DMM, Function Generators, and Power Supplies).

Provided new master firmware / file setup for the production line Data IO 2900 device programmers.

Provided Hy-Pot test system calibration, upgrade and repair -- certified in High Pot Safety procedures.

Troubleshoot and repaired both Analog and Digital oscilloscopes.

Participated in new product design reviews, and created new fixtures and procedures

Created and developed automatic test software for 2 products.

Corrected and improved production test software in LabView language in 2 products

Corrected PIC production test software in C language and automated test software in QBASIC across multiple products

Fixture documentation per ISO 9000 compliance requirements.

Created Production Test Procedure & fixtures per ISO 9000 guidelines.

Created an Excel spreadsheet for calibration of production floor test fixtures

Reverse engineered, corrected software and hardware problems in SCADA based automated test system over a 1 year period.

After Zetron acquired an RF test instruments company, Helper Instruments, I reverse engineered the products and created electronic test fixtures, and production test procedures.

US Air Force Europe(USAFE)

Command and Control Specialist, AFSC 274X0 1985 -1989

flight followed aircraft, submitted mission status reports, kept commanders and key staff abreast of ongoing situations. Learned about all procedures and processes concerning Command Control and Communications(C3)

Tools

Microsoft visual studio

Visual GDB – MS visual studio plug in that sets up the GDB tool chains with my hardware toolsets.

Virtual Box 6.0 by Oracle

MongoDB 4.0

on Beagle Bone Black(BBB)

IoT Debian Linux (BUSTER) build on BBB uSD flash card

GCC/GDB c, c++

Python 2.7

python 3.5

Node.js, node-red

Gdbserver (to log on to MS Visual Studio via SSH to BBB)

Libraries

pyVISA, python based OEM test equipment remote control(Using SCPI scripting)

multiprocessing class – used to take advantage of multiple PC cores for asynchronous processing,

process queue for processing and parsing single and multiple variables over time.

Laboratory algorithms

C# serial port application development

used .net serial port class 2.0 in application development

used virtual com port USB devices for serial port to communicate with the DUT

create instance of serial port and initialize as needed.

use std-in/std-out/std-err streams to pass commands to the device and to parse out return data from the device in windows and linux.

Implemented multi-threaded c# winform code using delegates to ensure stability of c# code.

Parsing done in different approaches such as using a string tokenizer class instance.

String-builder appended container used to capture the output from the serial port data received event handler.

Used two level / multi level queues to handle variables as they change value over time.

used python to make 'four corners' test to evaluate temperature extremes of SSD devices in environmental chamber;

measure HI/LOW temperature on SSD device with python script of onboard RTD/thermistor device using SMU device in SCPI script in python using SCPI script(MUX)

make power measurement of SSD device using SMU device in SCPI script(MUX)



Contact this candidate