Pasadena, California, United States

Steven T. Snyder

About Me

I specialize in switching hats daily, hourly, and sometimes by the minute. I have personal and professional experience with hardware (both electronic circuits and mechanical design), firmware (in assembly and C), and software (Python, C) including graphical user interfaces (GTK+).

I thrive in a multi-disciplinary environment.

I operate on the following principles: Understand the requirements -- even the hidden ones. Understand the people -- the people drive the project. Use the approach that makes sense -- not the "Approach of The Week"... and finally: If it isn't documented... it didn't happen.

In addition to my professional work experience, I have also worked on (and continue to work on) numerous hobby projects. I have reverse-engineered serial protocols to implement new software interfaces to existing hardware (linuxburn), written software to perform statistical analysis on large datasets (imputation), and created electronic hardware gizmos that communicate with electronic engine management computers (scandash).

Technical Skills
Like: python, gtk, embedded, c, linux, svn, circuit-design

November 2008 - Current Systems Software Engineer / Hardware Engineer / Project Engineer - GeneFluidics, Inc.

technologies: c embedded python pygtk serial usb html svn circuit-design pcb-layout

Multi-channel Potentiostat Software and Hardware

I designed and developed each electrical and software component of a multi-channel potentiostat instrument:

  • User-friendly cross-platform GUI written in Python using GTK+. It runs on Linux and Windows.
  • ARM7 microcontroller with firmware written in C
  • Circuit design includes 16 independent DACs and ADCs and a 16-channel potentiostat circuit with switchable gain
  • Electromagnetic compatibility (EMC) compliant with European market regulations

Modular cross-platform lab robot automation software

I designed and developed a cross-platform automation software system used by researchers in medicine and life sciences to create and run procedures on a liquid-handling robot.

The software system is written entirely in Python and consists of the following components:

  • Motion and IO controller packages
  • Core library providing a modular robotic system representation with multi-axis coordinated motion, a hierarchical positioning system utilizing real units, and file-based configuration.
  • An application-specific package for liquid handling lab automation robots
  • User-friendly GUI for creating and running automated procedures with a specific workflow for GeneFluidics' electrochemical detection platform

Enterprise Application Development

  • Enterprise application developer for scientific data management and ISO 13485-certified quality management system.
  • AJAX records database extension for Mediawiki to comply with ISO 9001 and ISO 13485 standards

Graphic and Web Design

  • Corporate website coded in PHP, CSS and HTML
  • Subsidiary site using Joomla
  • Graphic artist for journal publications

System Administrator

  • System administrator for Linux enterprise server running daily-use applications such as network file storage, MediaWiki, JIRA, Bamboo (continuous integration server), virtual machines (for software development and Windows enterprise applications), SVN, and more.
  • Solidworks Enterprise PDM administration for a small team of mechanical engineers.

Project Engineering

  • Responsible for gathering, generating, and documenting requirements for new projects
  • Responsible for performing detailed analysis of statutory and regulatory requirements for EU standards and CE marking

Mechanical Engineering and Product Design Advisor

  • Senior advisor on mechanical engineering and product design projects.

Molecular Biology / Experimental Design

  • Design experiments, analyze data, and provide consultation on molecular biology and design of experiments to support the R&D laboratory

Quality Systems and Regulatory Compliance

  • Internal auditor for ISO 9001 and ISO 13485 quality systems
  • EU regulatory compliance analysis and auditing for low-voltage directive (LVD) and in vitro diagnostics (IVD) products
  • Responsible for technical implementation of standards and regulatory compliance actions

2005 - 2008

Cybernetics, concentration in Computer Systems

Cumulative GPA of 3.577 in all courses.

2001 - 2005

Music, Computer Graphics, CAD

Used Rhino 3D, Solidworks, and 3dsmax to create 3D models and animations.

Helped teach 3D graphics design to high school students.

Played blues guitar, peforming with the Gavilan Performance Ensemble.

Cumulative GPA of 3.98 in all courses. (That's what that one A- gets you!)


October 2009 - Current
Stack Overflow

Written 38 answers. Active in python. linuxburn

technologies: c gtk+ unix rs232 eeprom

The goal of this project was to develop software that allows the operation of the Moates BURN1 from Unix-based operating systems, from the command line or a GTK+ GUI. linuxaldl

technologies: rs232 aldl gtk c

linuxaldl is a scanning and datalogging tool for the General Motors ALDL (Assembly Line Diagnostic Link) protocol used on OBD I electronic fuel injected vehicles. ScanDash

technologies: rs232 embedded graphics aldl pcb

Minimal electronic digital dashboard dashboard with ALDL interface imputation

technologies: statistics c hapmap

The goal of this project was to develop software for predicting unobserved genotype data using correlations found in the HapMap data. Head Tracking on Linux | Steven T Snyder

technologies: opengl linux c computer-vision wiimote

Inspired by Johnny Chung Lee’s Wii projects, but disappointed by the lack of portability of his code, I decided to develop a version of VR head tracking on Linux using OpenGL.