Stephen Garcia-Ingram

Stephen Garcia-Ingram

Software Engineer & Data Analyst

For interested parties, this page describes both my working skill set and the different domains in which I have previous experience. I evidence these claims with a detailed list of my projects and publications.

Skill Set

Coding

Coding

As a developer, writing code is the major component of my regular workflow. I have experience building software with system-level languages like C, Python, and Java. For analysis and system administration, I have employed scripting languages like awk & Python to process and clean raw data files for input into databases, or data analysis environments like Jupyter and RStudio.

Visualization

Visualization

Looking at the data is a critical step in almost any data analysis. As part of the InfoVis group at UBC, I have discussed visualization techniques and evaluations since 2005. In my own experience, I use Tableau, dplyr and ggplot2 for exploration of static tables, and GNU Octave/Matlab, RStudio, and IPython Notebooks for iterative exploration while developing algorithms.

Machine Learning

Stats & Machine Learning

Stats/ML are a suite of techniques that help build predictive models of data distributions as well as give guidance about how much confidence to put in those models. I have employed time-series analysis and clustering to analyze customer usage patterns, devised "unsupervised learning" techniques for data exploration, and used supervised learning for fitting model parameters.

Computer Graphics

Computer Graphics

Familiarity with computer graphics APIs like WebGL/OpenGL has yielded at least two benefits for me as a researcher/analyst. First, I have leveraged the graphics pipeline to build novel visualization techniques that scale to large datasets. Second, I have exploited the parallelism of graphics processors (GPUs) to speed up existing analysis techniques.

Domains

Data Storage

Data Storage

My team and I have designed and developed an analytics system for analyzing storage product performance, events, and alerts. The system is deployed in AWS, is designed to easily scale with demand, and uses a flexible elasticsearch back end.

  • Classifying workloads
  • Optimizing flash provisioning
  • Predicting usage patterns
  • Empowering administrators
Financial

Financial

My exposure to finance is on the trading side of things. I have researched:

  • Order-book-level market-impact analysis
  • Long-term trading system development (monthly)
  • Short-term trading system development (daily)
  • Trading algorithm ("Algo") development
  • Automated trading system ("Bot") development
Text Analysis

Text Analysis

I have been involved in several projects to help researchers navigate unordered collections of documents, including Overview, Glimmer, and MetaCombine.

Scientific Computing

Scientific Computing

My experience with scientific computing has focused on numerical linear algebra and nonlinear optimization, having taken graduate courses in both these topics.

  • Nonlinear optimization techniques like Quasi-Newton methods
  • Fast methods for exact matrix inverses like matrix reordering
  • Fast methods for approximate matrix inverses like Krylov subspace and multigrid methods
Bioinformatics

Bioinformatics

I consulted with BC Cancer Agency to develop software for analyzing DNA copy number alterations. The project involved collaborating with a lead researcher to design a visual console for analyzing copy numbers and labels across chromosomes.

Projects

Publications

Timeline

Experience Timeline

Contact

Email stephenfroweingram (at) gmail . com
Phone (828) 712-9390