Kelly Ann Martines, Multithreading Developer in Oak Ridge, TN, United States
Kelly Ann Martines

Multithreading Developer in Oak Ridge, TN, United States

Member since May 18, 2018
Kelly has 12 years of experience working as a software engineer, focusing primarily on C++, C, and Java. She's worked on desktop applications in addition to concurrent systems, including multithreaded systems, clusters, or networks of embedded systems in avionics.
Kelly is now available for hire

Portfolio

Experience

Location

Oak Ridge, TN, United States

Availability

Part-time

Preferred Environment

Subversion (SVN), Git, Vim Text Editor, Visual Studio, Unix, Windows

The most amazing...

...project I've completed was parallelizing a desktop application including the redesign of every data structure and algorithm to promote concurrent interaction.

Employment

  • Software Engineer

    2019 - PRESENT
    Toptal Clients
    • Collaborated on initial architecture for self-driving cars. Headed a team to create a command-line tool in Python that converted a pre-defined IDL to various programming languages. Collaborated on IDL definition.
    • Rearchitected an embedded C system for microcontrollers. Combined three existing state machine systems into one. Normalized the UI framework for LCD buttons or HMI touch panel interaction. Added error handling and a reporting system.
    • Implemented a practical byzantine fault tolerance (pBFT) framework for Blockchain in C++.
    • Created a C++ command-line tool and library to convert video files or webcams feed to the display of a frame. The codec used OpenVINO to process the pre-defined TensorFlow model. The frames' display used OpenCV.
    Technologies: C, C++, Python, TensorFlow, Linux, OpenVINO, OpenCV, MPLAB X, Embedded C, Team Leadership
  • Software Engineer

    2019 - 2020
    Harsco Rail (Contractor)
    • Developed and maintained a control system software for railway track maintenance equipment in C and C++.
    • Added a control system and integration for new sensor hardware, including everything from direct sensor communication to the UI.
    • Modified the existing hardware control systems to add new functionality.
    • Corrected UI workflows and display layout for control systems.
    Technologies: C++, CANopen
  • Computer Engineer

    2018 - 2019
    Department of Transportation - Federal Aviation Administration
    • Maintained GPS satellite data-processing and configuration software, in C and Korn shell.
    • Architected system in Python that tracked tool releases, monitored the status of all development machines, and reported all issues with development machines or tool output.
    • Maintained data-processing tools, in MATLAB and Python.
    Technologies: C, Python, HTML, JavaScript, Shell Scripting, Unix, Website Management, MATLAB
  • Software Engineer

    2014 - 2017
    Google
    • Maintained and implemented back-end servers in C++, Java, and Python.
    • Retrieved data from various databases and other types of stores.
    • Applied machine learning techniques to derive features and to determine the most relevant data.
    • Set up and managed a series of jobs for data-processing pipelines.
    • Periodically scoured existing code for defects and inefficiencies and corrected them.
    • Served as project lead for various tasks, coordinating work for up to 15 team members.
    Technologies: Python, Java, C++
  • Software Engineer

    2012 - 2014
    Northrup Grumman
    • Developed new utilities and enhanced functionality for a mature embedded system using C and C++.
    Technologies: MySQL, Embedded Systems, Python, C, C++
  • Software Engineer

    2012 - 2012
    Siemens
    • Implemented a web application to generate and display graphical interpretations of PET scanner data using C# to communicate with a C++ backend.
    • Created Visual Studio project files that enabled the automatic build/debug features of the IDE (previously VS was used as an editor, with command-line builds).
    • Configured Visual Studio to create a local website for testing the web interface (previously builds had to be hand delivered to and tested in a lab).
    • Created Cascading Style Sheets to consolidate and to normalize GUI format, eliminating the need to update every page when a format changed.
    Technologies: HTML, C#, C++
  • Software Engineer

    2007 - 2012
    ION Geophysical
    • Developed and maintained both mature and new software applications used to design seismic surveys and to process the survey data after collection.
    • Continuously refactored and developed C++ code on both Windows and UNIX platforms.
    • Used Visual Studio to manage both GUI design and Windows work.
    • Parallelized and multi-threaded algorithms and data structures, using OpenMP and MPI.
    • Interfaced with both homemade and MySQL databases.
    • Built and integrated third-party libraries on Windows, Linux, and Solaris.
    • Coordinated development tasks and monitored all code submissions for quality.
    Technologies: Solaris, Linux, MPI, OpenMP, Visual Studio, Unix, Windows, MySQL, Microsoft Foundation Class Library (MFC), C++
  • Sofware QA Engineer

    2001 - 2003
    Avatech Solutions
    • Built and tested quality-checking software for designs in Autodesk Inventor, Catia V4, Catia V5, Pro/ENGINEER, and Unigraphics.
    • Created sets of test models in Autodesk Inventor, Catia V4, and Catia V5.
    • Performed minor code corrections, in Java and C++.
    • Updated documentation,using RoboHelp, ForeHelp, and HTML.
    • Assembled and certified software for release.
    • Created and maintained build and testing scripts for software products using KornShell, Perl, and Batch Files.
    • Performed load testing on web-based software.
    • Created system for tracking software defects and regressions and added tests for all testable defects in product history.
    • Coordinated with the technical support and product development departments in the identification and resolution of issues.
    • Led QA department.
    Technologies: NX: Siemens PLM Software, Creo, CATIA, Autodesk Inventor, HTML, ForeHelp, Adobe RoboHelp, CAD, Shell Scripting, Perl, Fortran, C++, Java

Experience

  • Parallelization of Raytracer (Development)

    Overhauled a Windows desktop application from top to bottom to parallelize raytracing calculations. Rearchitected all data structures and algorithms to be thread-friendly and collaborative.

Skills

  • Languages

    C++, C, Embedded C++, Embedded C, C#, HTML, Fortran, Java, Python, Perl, JavaScript
  • Libraries/APIs

    Node.js, Win32 API, Microsoft Foundation Class Library (MFC), OpenMP, MPI, TensorFlow, OpenCV
  • Platforms

    Android, Windows, Unix, Linux, Solaris
  • Tools

    Microsoft Visual Studio, Visual Studio, Vim Text Editor, Git, Subversion (SVN), CAD, Autodesk Inventor, CATIA, Creo, NX: Siemens PLM Software, MATLAB
  • Paradigms

    Concurrent Programming
  • Other

    Multithreading, Embedded Software, Scripting, Embedded Systems, Shell Scripting, Adobe RoboHelp, ForeHelp, Website Management, OpenVINO, MPLAB X, CANopen, Team Leadership
  • Storage

    MySQL

Education

  • Master's degree in Computer Science
    2016 - 2017
    University of Colorado - Boulder, Colorado
  • Bachelor's degree in Mechanical Engineering
    1993 - 1999
    University of Oklahoma - Norman, Oklahoma

Certifications

  • EIT
    SEPTEMBER 1999 - PRESENT
    Oklahoma State Board of Licensure for Professional Engineers and Land Surveyors

To view more profiles

Join Toptal
Share it with others