Skip to content

Ryan Morshead

Website | Email | GitHub | LinkedIn | Twitter

A software engineer with experience across the stack as a learner and a leader in open source and enterprise. Having worked on projects from their inception to their long decline he believes the written and verbal communication of one's work form the foundation of its sustainability.

Technical Skills

Expert Advanced Competent
Languages Python Javascript Go, C++
Frameworks Flask, Asyncio React
Tools Git, PyTest, Sphinx Docker, Jenkins, Travis CI Kubernetes
Databases SQL (Postgres), Redis
Clouds Google Cloud Platform, AWS

Work Experience

Sr. Software Engineer | Cisco

Jul 2018 - Present - Brought onto Cisco's Engineering Licensing team as the first hire on a new project intended to serve Cisco's licensing needs for its present and future cloud products.

  • Delivered to 3 product teams including Cisco's new DNA Center.
  • Re-engineered Cisco's Smart Licensing for Python and the cloud.
  • Designed goals and deadlines for long term projects.
  • Screened, interviewed, recommended, and trained new hires.

Platforms Engineer | Primer AI

Nov 2017 - Apr 2018 - Part of a growing team of engineers working to support data scientists working to develop machine learning solutions to text based problems.

  • Resident Pythonista.
  • Added backend REST API features and expanded test coverage.
  • Built and deployed simple micro service using Python and Flask.
  • Learned React on the job to aide in developing frontend components.
  • Introduced teams to Jupyter as a tool for reproducible and shareable science.

Engineer in Test | Apple Maps

Jul 2017 - Nov 2017 - One of two engineers brought on to develop a UI test automation framework for a map editor used in the production pipeline for Apple Maps.

  • Developed a framework around Selenium for easily testing UI applications.
  • Expanded test coverage to relieve manual testers.
  • Communicated with core devs to ensure products meet expectations.

Software Engineer | Matplotlib

Jan 2017 - Jul 2017 - Refactored large portions of the codebase to use a new library called Traitlets for facilitating the development of interactive Matplotlib plots for Jupyter.

  • Worked to refactor legacy code used by thousand of people.
  • Created new API features for Traitlets that are now broadly within Jupyter.
  • Became immersed in open source communities, workflows, and release cycles.

Supplemental Work

GSOC Mentor | Matplotlib

Jun 2017 - Sep 2017 Guided a student through Google's Summer of Code as their sole mentor in order to continue the work of integrating Traitlets into Matplotlib.

  • Reviewed the student's code
  • Introduced them to Git and GitHub as tools for collaboration
  • Organized and enforced regular meetings to display daily progress.

Owned Projects

iDOM - Python for the Web

Gives Python developers the power to create interactive web applications without writing a single line of Javascript. iDOM was originally inspired by Jupyter Widgets and Nteract's VDOM, however it breaks from both by allowing live updates to substantially sized frontend views.

Spectate - MVC for Python

A library for Python 2 and 3 that can track changes to mutable data types. With spectate complicated protocols for managing updates don't need to be the outward responsibility of a user and can instead be done "automagically" in the background. For instance, syncing the state between a server and client can controlled by spectate so user's don't have to.

Maintained Projects

Traitlets - IPython and Jupyter

Traitlets is a pure Python library for enforcing strong typing, observing changes to tracked data, and reading configuring values from files or from command line arguments. Traitlets powers the configuration system of IPython and Jupyter and the declarative API of IPython's interactive widgets.


His knowledge of the inner workings of Python are easily some of the best I’ve seen... he is also one of the most genuine and cooperative people I have had the pleasure of working with.

Alvin Yates - Former Manager