Hi, I'm Phill Kelner.

I'm an Electrical Engineer.

Let's talk.

Photo Credit: Mark Kelner

Who am I?

I'm an electrical engineer with a focus on test engineering, and an interest in systems that will be operating right up to their limits. To that end, I've spent much of my formative years working on racecars and working for companies on the bleeding-edge.


Where did I go to school?


Electrical Engineering, B.S. 2018


Where have I worked?

Amazon | Project Kuiper

Software Development Engineer

Jun 2021 - Present

Initially supporting an internal team building an integration test framework. Write hardware drivers to support ground truth data collection during integrated tests. Own the software that controls the Electrical Ground Support Equipment rack for the satellites. Support Vehicle Integration and Testing team with software support to enable consistent data collection from all test venues.

  • Supported features of the internal testing framework such as DUT Flashers, Data Acquisition drivers, or power supply and signal tower controls.
    • Added a feature to test framework permitting users to develop python test scripts in a docker environment which simplified their development experience without needing to worry about re-implementing a test environment, or rebuilding a Docker image.
    • Implemented a python driver for a data acquisition unit to collect analog input data and push the data into a cloud-based telemetry database.
    • Developed a DUT Flasher python utility allowing users to flash a flight computer as part of a test sequence by simply defining either a local image, or an S3 URI.
  • Independently developed the initial version of the Electrical Ground Support Equipment (EGSE) software to enable testing of an integrated satellite.
    • At first used the existing test framework to run specific instances of the software using drivers which were already impelmented to support testing. Since the rack uses the same data acquisition and power supply, many drivers could be re-used.
    • Quickly separated the EGSE Software from the testing framework so that it could be run independently and without interruption, to support constant monitoring of the satellite state. Created a user CLI in Python as well to allow users to control the EGSE asynchronous of other operations.
    • Supported critical stages of prototype integration testing such as TVAC testing campaigns. Developed quick reprovisioning procedure to allow satellites to be quickly migrated to a new support rack while allowing rack telemetry to still match the correct satellite.
    • Stood up first continuous integration pipeline to build new versions of the EGSE SW using AWS CodeBuild. New releases are automatically built as soon as a git version tag is pushed, and nightly testing is done with latest mainline.
  • Taken on systems administration responsibilities to control user access by implementing an Amazon tool supporting LDAP user access to EC2 instances in AWS using AWS Systems Manager (SSM).
    • Used TypeScript-based AWS Cloud Development Kit (CDK) to implement AWS resources that facilitated the user authentication tooling to work on physical on-prem hosts.
    • Created user scripts that worked system-wide across all Linux users, such as the test framework and EGSE CLI, as well as other test support scripts.
    • Generated a transition procedure template to make sure each host which needed LDAP-based access control could be migrated with a consistent procedure, complete with rollback steps if anything went wrong.

LeoStella

Avionics Test Engineer

Jun 2019 - May 2021

Develop python test libraries and scripts to validate new Satellite Flight Software (FSW) features, device drivers, and bug fixes in various integrated emulation environments. Administer software infrastructure services such as a GitLab Enterprise Edition version control server, a web-based telemetry visualization tool, and a Jenkins CI Server instance with various subordinate worker agents. Maintain and produce various Docker-based services that run in the AWS cloud for the purpose of shared test assets, and can be run locally on developers' workstations.

  • Wrote python system integration test scripts to validate safe operation and failure handling in the first and lasting implementation of propulsion thruster control software.
    • Performed Failure Mode Effects Analysis (FMEA) on thruster unit, and propulsion software.
    • Implemented libraries and test scripts enabling validation of all nominal behaviors and FMEA mitigation mechanisms that were implemented in FSW
    • Validated that in-house developed propulsion unit emulator matched the digital behaviors and ICD of the real unit by executing equivalent tests across virtualized flight computers, partially emulated flight computers, and complete hardware-in-the-loop FlatSat test bench.
    • Later implemented further mitigation mechanisms in FSW based on on-orbit experience, and developed further tests to validate new mitigations.
  • Designed and implemented a Jenkins Continuous Integration pipeline which executes the existing and developing suite of python system tests to check for regressions in new versions of FSW on a nightly basis.
    • Pipeline first builds a Docker image with the full collection of FSW system tests and libraries required to run them, then deploys the latest master or otherwise specified build image of FSW. Once deployed and Docker data collection services are started, pipeline executes the tests using the pre-built Docker image.
    • Wrote test log analysis scripts to automatically summarize the number of tests executed, passed, and failed and produce a list of test failures to further analyze for regressions in FSW. Log summaries are made available via daily automated Slack messages in a test report channel.
  • Consolidated various disparate test utilities such as flight computer emulator, device emulator, and physical environment emulator into a single Docker image that was made available to customers to assist in development of payload firmware.
    • Drove the creation of a new software release framework to support release of flight software releases and emulation software to LeoStella's first external customer by packaging releases as Docker images.
    • New image releases came with documentation packages and a pre-built Dockerized emulator with the new release pre-provisioned for the customer. Packages also included CLI telemetry monitoring and mission command generating test utilities for quickly developing and debugging new mission conops and software tests.
    • Emulator Docker image is now easy to re-package and distribute to further customers without cross-contamination of bespoke flight software builds.

Spectralux

Contract Embedded Software Engineer

Jan 2019 - Jun 2019

Contract software engineering position with a focus on software integration testing to satisfy DO-178C FAA Software Considerations for a Controller-Pilot Data Link Controller (CPDLC) for commercial airplane cockpits. Developed a new software integration testing pipeline ensuring existing software tests were executed on a regular basis, allowing software regressions to be quickly identified and resolved. Also pushed forward development of automated software testing suite in C# and Python to allow easier test scripting for a team of dedicated requirements validation testers.

  • Set up hardware-in-the-loop test systems complete with ARINC 429 to USB conversion units to enable automated testing of Envoy Data Link.
    • Troubleshot issues with ARINC 429 card, identifying a memory issue in C# code of software test suite which prevented full control of GPIO pins.
    • Wrote documentation for interaction with ARINC 429 controllers allowing test scripters to exercise software with fully integrated hardware.
  • Implemented a Jenkins Continuous Integration pipeline which compiled flight software, executed unit tests, then deployed software to hardware and executed integration tests.
    • Wrote scripts to identify contributors to software since last failure in each test to notify developers of potential new regressions.
    • Produced documentation for administration of the new integration pipeline for handoff to new employees.

SpaceX

Associate Engineer - Test Engineering

Aug 2018 - Dec 2018

Post-graduation internship with the Hardware Test Engineering group on the SpaceX satellite internet constellation project. Responsibilities range from developing production-scale test systems, test software development, assistance in Design-For-Test (DFT), and support of on-going Hardware-in-the-Loop test platforms.

  • Designed and assembled first iterations of new Hardware-in-the-Loop test fixtures.
    • Each fixture contained custom circuitry for the fixture's purpose, an NI cRIO, and connector bulkheads for interaction with the vehicle.
    • Used knowledge gained to modify documentation, adjust designs, and prepare assembly notes to hand off further assembly to technicians.
  • Designed numerous PCBs for HITL and production systems to control DUTs, and take relevant measurements for production end-of-line testing.
    • Several boards made to capture voltage and current sensing measurements of multiple DUTs with only one DAQ for the entire system.
    • Several boards to switch power and/or data lines from multiple DUTs.

Tesla

Powerpack System Validation Intern

May 2017 - Aug 2017

Performed tests on new versions of firmware for industrial Powerpack units alongside development of test automation suites. While some tests were being performed manually, significant work was being done to implement test automation on actual hardware as part of a continuous integration scheme.

  • Adapted existing python code from Tesla's Powerwall test suites using Robot Framework to apply for Powerpacks.
  • Wrote hooks in python test suites to permit them to be started via continuous integration, and deposit data to an online store.
  • Planned and executed manual tests with other engineers ensuring timely release of new firmware revisions to all Powerpack customers.
    • Executed several High Voltage tests in person, ensuring safety of all systems during test.
    • Tested new behavior of cooling fans, discovering problems and reporting to Firmware developers.

SpaceX

Avionics Intern

May 2016 - Dec 2016

Designed ground support, test, and production equipment for the Dragon 2 crew capsule. This included the Dragon Support Rack, a server rack consisting of DAQ equipment, power supplies, and ground software servers to interact with and manage the vehicle during integration, test, and launch procedures. Initial bring-up of the first rack was done in parallel with integration on a new Hardware-in-the-loop test table.

  • Completed build-up and design revisions on first Dragon 2 Support Rack.
    • The rack contained servers, power supplies, and DAQs to support hardware-in-the-loop testing.
    • Rack also as vehicle systems integration through-out the production process.
  • Designed a portable device allowing universal system interaction and testing.
    • The device included an NI cDAQ, a relay switchboard to allow for power-cycling of the DUTs and a control PC.
    • Several CAN interfaces, RS-422 interfaces, and ethernet interfaces were available to be able to fully exercise any DUT.
  • Applied subtle redesigns repurposing universal test system so it could be used instead in a production line assembly to perform bare-metal-bring-up of new avionics devices destined for spaceflight.

BorgWarner Morse Systems

Test Engineering Intern

Jan 2015 - Aug 2015

Supported test and development in BorgWarner's engine timing components R&D. Designed and constructed one-off test systems that were installed in engine test cells.

  • Implemented analog multiplexer circuit into a test cell permitting two DAQ unit inputs to measure 4 sensors during only the half-stroke of concern.
  • Designed and built several test cell harnesses to support setup of new test cells meant for development of new variable cam timing products.


What have I done in my own time?

Photo Credit: Alexander Bowman

RIT Formula SAE Racing Team

Aug 2013 - Jul 2018

Most of my spare time during college was spent on the RIT Formula SAE Racing team, tackling various roles and projects over 5 years.

Project Manager

Jul 2017 - Jul 2018

Elected to Project Manager for 2017-'18 season, tasked with managing team's finances, schedule, and relationship with RIT faculty and staff. Successfully led team to design finals with combustion car in all three of its competitions and 2nd Place Overall with electric car.

  • Competition Highlights
    • Formula SAE Michigan 2018 - 16th Overall of 120 Registered Teams
      • Design: 6th
      • Endurance: 17th
    • Formula North Combustion 2018 - 17th of 35 Registered Teams
      • Design: 3rd
      • Skidpad: 3rd
    • Formula North Electric 2018 - 2nd of 13 Registered Teams
      • Efficiency: 1st
      • Endurance: 2nd
    • Formula Student UK 2018 - 28th of 81 Registered Teams
      • Design: 6th
      • Skidpad: 3rd
      • Autocross: 9th

Electrical Engineer

Embedded Systems

Jul 2015 - Jul 2017

Developed embedded systems boards and firmware for use on racecar for purposes of data acquisition and driver display. Developed deep relationship with combustion powertrain group to facilitate facilitate deeper understanding of ECU's behavior and capabilities beyond engine control. This dashboard competed on the 2017 and 2018 cars.

  • Raspberry Pi Dashboard - 2016-2017
    • Developed full hardware and software stack to implement a Raspberry Pi as the driver interface. The controller displayed onto a 5" TFT LCD, showing the driver useful engine parameters and status bars, such as water temp, oil temp, oil pressure, battery voltage, and gear position, with a tachometer across the top.
      • Utilized python for backend interaction with ECU via CAN bus.
      • Frontend developed in Javascript for ease of quick revision.
      • Handled the very time-sensitive operation of shifting control, issuing commands to the power distribution unit and engine control unit to orchestrate a perfect gear shift.
      • Used systemd in Raspbian Lite OS to reduce amount of background processes taking up excessive overhead.
      • Was easily adapted for use on team's first Electric Car to monitor accumulator state-of-charge, temperature, motor current, motor RPM, and much more.
      • Utilized built-in wi-fi to allow for wireless updates and debug.

    The hardware stack for the dashboard.

    The display mounted on the 2017 car during prototyping.

  • Custom Embedded Dashboard - 2015-2016
    • First dashboard used an AT90CAN128 microcontroller on a custom PCB whose schematic and layout were done in EagleCAD PCB Design Software. Board contained many of the same features as the later Raspberry Pi dashboard, albeit with severely limited abilities for flexibility. This board competed on the 2016 car.
      • Contained 10 RGB LEDs for use as shift lights, and 4 more to indicate engine status and/or warning lights.
      • Received data from ECU via CAN. Exposed UART for debugging.
      • Firmware written in C.
      • The car's drivers reported being able to time perfect shifts using shift lights as guide.

    The PCB for the original dashboard.

Electrical Engineer

Wire Harnessing

Jan 2014 - Jul 2015

Designed and assembled wire harnesses that integrated power distribution and data acquisition in an electrical system that at the time lacked integration.

  • Introduced a Data Acquisition system as part of the car's permanent controller network.
  • Implemented wire strain relief and mechanical fasteners to improve harness reliability and maintainence.
  • Designed new wiring schematic from scratch using PTC Creo Schematics.

The primary controller branch for a car's wiring harness.


How can I be reached?

So you want to work with me? Great! Look below for ways to get in touch with me, along with a link to my 1-page Résumé.

E-Mail
LinkedIn
My Resume