Geoffrey Paul, Linux Developer in Huntsville, AL, United States
Geoffrey Paul

Linux Developer in Huntsville, AL, United States

Member since March 21, 2020
Geoffrey is a Linux developer with extensive expertise in modeling and simulation supporting the US Army and Missile Defense Agency. He specializes in developing real-time software for high-performance, scientific computing. He has written software scaling from low-end desktops and 8-core workstations up to high-powered servers with hundreds of cores.
Geoffrey is now available for hire

Portfolio

Experience

Location

Huntsville, AL, United States

Availability

Part-time

Preferred Environment

Sublime Text, Vim Text Editor, MATLAB, Bash, C++, C, Git, Linux

The most amazing...

...optimization I've implemented was a SIMD-based radar antenna algorithm that improved throughput by 50x.

Employment

  • Lead Software Engineer

    2013 - PRESENT
    Tec-Masters, Inc. / Torch Technologies
    • Deployed a new development process focused on test-driven development (TDD) and automated unit testing, significantly increasing test coverage and reducing regression rates.
    • Updated the configuration management process to use better-integrated tools, such as Jira and Bitbucket, and increase automation of software packaging and deployment.
    • Led a team to design and implement a real-time application to merge simulated radar data with live radar data to facilitate conducting exercises and training in the field with US Army soldiers.
    • Led a team to design and implement a real-time application to record high-speed radar data for verification and analysis.
    • Led a major development effort to re-architect our radar signal injection application to better utilize the memory architecture and instruction sets of modern x86-64 server hardware, leading to a ten- to fifteen-time improvement in application throughput.
    • Reverse engineered the signal-injection algorithms and wrote white papers to document the algorithm designs, references, and assumptions for future developers.
    • Conducted peer reviews on code submissions and provided critical feedback to mentor and train younger developers.
    Technologies: GDB, SysML, LaTeX, Qt 5, Signal Analysis, CORBA, Data Visualization, Pub/Sub, Sublime Text, Vim Text Editor, Makefile, GNU Make, Make, Radar, Physics, Numerical Methods, Regular Expressions, Statistics, GPS, Architecture, Signal Filtering, Network Protocols, TCP, APIs, CppUnit, Sockets, Realtime, Object-oriented Programming (OOP), Code Review, SIMD, Multithreading, Processing & Threading, Simulations, Modeling, UDP, Multicast, Mathematics, QML, XML, Fortran, Cryptography, Qt, Linux RHEL/CentOS, AWK, Linux Server Administration, Algorithms, Bash, Automation, Bitbucket, Jira, Git, Test-driven Development (TDD), UML, MATLAB, C++, C, Linux, Ada
  • Senior Software Engineer

    2020 - 2021
    Tequinity, LLC
    • Developed an indoor location-tracking service using Bluetooth beacons and trilateration algorithms.
    • Developed simulators to evaluate the effects of cutting-edge techniques from the academic literature on the overall positioning accuracy.
    • Designed tools, policies, and procedures to facilitate proper equipment calibration during site installations.
    • Designed tools and schema to accurately capture and manage site geometry data, such as room positioning and RF characteristics.
    Technologies: Bluetooth LE, Bluetooth Beacons, Python, Python 3, Pytest, NumPy, SciPy, PostgreSQL, AWS, AWS S3, AWS Lambda, Algorithms, Analysis, Modeling, Simulations, Research, Automation, Linux, Bash, Git, UML, Test-driven Development (TDD), Linux Server Administration, Linux Mint
  • Senior Software Engineer

    2020 - 2020
    Freelance
    • Enhanced a Sokoban pathfinder algorithm to prevent known "bad" moves. These bad moves would create deadlock situations where certain entities could no longer be moved, leading to unwinnable games.
    • Optimized the memory usage patterns of the pathfinder algorithm from O(n^2) to O(n). This dropped the memory requirements for a 100x100 grid from 1.7 GB down to 770 KB.
    • Optimized the pathfinder algorithm for better search efficiency. This work reduced the runtime by over 99%. Certain larger test cases dropped from six seconds down to 40 minutes.
    • Optimized the level solver algorithm to eliminate bottlenecks. This work reduced runtime by 90%.
    • Replaced deprecated functionality to enable an upgrade to Qt 5.12.
    Technologies: C++, Qt 5, Qt, Performance, Optimization, Linux, C, Bash, Git, Algorithms, Linux Mint
  • Software Engineer

    2006 - 2013
    Tec-Masters, Inc.
    • Developed an application to inject simulated target scenes into the Terminal High Altitude Area Defense (THAAD) radar system.
    • Ported the signal injection software from a legacy SGI MIPS architecture running the IRIX operating system to a modern x86-64 architecture running Red Hat Linux.
    • Automated the analysis for software requirements verification using Linux scripting languages, reducing the verification timeline from over three months down to two weeks.
    • Replaced a legacy, paper-based configuration management process with a new process using modern tools, notably Git and Bugzilla.
    Technologies: GDB, Signal Analysis, CORBA, Data Visualization, Pub/Sub, Vim Text Editor, Makefile, GNU Make, Make, Radar, Physics, Numerical Methods, Regular Expressions, Statistics, GPS, Architecture, Signal Filtering, Network Protocols, TCP, APIs, Sockets, Realtime, Object-oriented Programming (OOP), SIMD, Multithreading, Processing & Threading, Simulations, Modeling, UDP, Multicast, Mathematics, Perl, Fortran, Cryptography, Linux RHEL/CentOS, AWK, Linux Server Administration, Algorithms, Git, Bash, Automation, MATLAB, C++, C, Ada, IRIX, Linux
  • Junior Computer Operator

    2004 - 2006
    Tec-Masters, Inc
    • Developed JSP applications to dynamically explore the equipment health of UH-60 Blackhawk helicopters.
    • Developed Java servlets to batch process UH-60 health data overnight.
    • Designed an Oracle database schema to store report results.
    • Implemented new health processing algorithms designed by the engineering team to facilitate evaluation and discussion.
    Technologies: HTML, MySQL, PHP, LAMP, Oracle RDBMS, JavaScript, CSS, SQL, Oracle, JSP, Java

Experience

  • Simulation-over-Live Driver (SOLD)

    A real-time application that injects simulated radar targets into the Terminal High Altitude Area Defense (THAAD) radar system. I was one of the software engineers responsible for implementing the real-time variant of the SOLD algorithms for use in hardware-in-the-loop testing of the radar. I was the lead software engineer responsible for the later redesign of the SOLD software to increase real-time stability and performance on newer server hardware.

  • I&Q Merge Unit

    A real-time application that combines simulated radar in-phase and quadrature (I&Q) data with live radar data, such that radar equipment in the field can observe simulated targets. This allows US Army soldiers to conduct exercises and training in the field with their own equipment. I was the lead software engineer responsible for the design and implementation of this application.

  • I&Q Recorder

    A real-time application that records several sets of radar in-phase and quadrature (I&Q) high speed data, along with timing information. This data recorded by this application was used to verify the accuracy and real-time performance of other I&Q processing systems. I was the lead software engineer responsible for the design and implementation of this application.

  • I&Q Generator

    A real-time application that produces randomly-generated radar in-phase and quadrature (I&Q) data to facilitate fuzzing and performance testing of other I&Q projects. This application was required to maintain the highest possible data rates for weeks on end to stress the downstream applications. I was the sole developer on this project and completed its development within three months.

  • Watcherr
    https://watcherr.com/

    Watcherr is a wearable health monitoring solution for senior care residences. It provides automated tracking of patients, allowing nurses to more quickly and efficiently respond to patient needs. I was the back-end developer responsible for the indoor location tracking aspect of the system.

  • Sokoban 2SG
    https://www.linux-games.org/p/1109295

    A variant of the classic Japanese game of Soko-Ban, featuring you as a warehouse keeper with an objective to efficiently push crates onto goals without trapping yourself. The full version included advanced path finding algorithms, level solution management, automated solution finding, and solution optimization algorithms. I was contracted to analyze the algorithm designs and implementations to identify bottlenecks, with the goal of improving memory requirements and time efficiency on larger levels.

Skills

  • Languages

    C, C++, Ada, AWK, UML, Bash, SysML, HTML, SQL, Perl, Python, Vala, Java, Fortran, XML, QML, CSS, JavaScript, PHP, Python 3, Python 2
  • Frameworks

    Realtime, Qt, Qt 5, JSP
  • Libraries/APIs

    CppUnit, Sockets, NumPy, SciPy
  • Tools

    Vim Text Editor, Git, MATLAB, Sublime Text, Radar, LaTeX, Bitbucket, Jira, Make, GNU Make, Makefile, GDB, Pytest, GitHub, GitLab, GitLab CI/CD
  • Paradigms

    Automation, Object-oriented Programming (OOP), Test-driven Development (TDD)
  • Platforms

    Linux, Linux Mint, Linux RHEL/CentOS, Oracle, CUDA, IRIX, LAMP, Bluetooth LE, AWS Lambda
  • Other

    Mathematics, SIMD, Multicast, UDP, Modeling, Simulations, Processing & Threading, Code Review, Multithreading, Performance, Optimization, Analysis, Data Structures, GPS, APIs, Physics, TCP, Signal Filtering, Algorithms, Numerical Methods, Statistics, CSV, CSV Import, CSV Export, Architecture, Network Protocols, Linux Server Administration, Regular Expressions, Research, Cryptography, Signal Analysis, CORBA, Pub/Sub, Data Visualization, Bluetooth Beacons, AWS
  • Storage

    MySQL, Oracle RDBMS, PostgreSQL, AWS S3

Education

  • Master of Science degree in Modeling and Simulation
    2014 - 2017
    University of Alabama in Huntsville - Huntsville, Alabama, USA
  • Bachelor of Science degree in Computer Science with minors in Mathematics and Physics
    2005 - 2009
    University of Alabama in Huntsville - Huntsville, Alabama, USA

To view more profiles

Join Toptal
Share it with others