Jonathan Ryan

jonathan.ryan@jryan.io

I'm a software engineer with over 10 years of experience in a variety of languages including Java, Groovy, Javascript, Python, Bash, and C++. To see some sample code and projects check out my GitHub.

This resume lists only recent experience. To see my full work history refer to my CV.


Recent Experience

Comcast

Software Engineer

2018 - 2020

Working on Xfinity Stream.

Cloudmine

Software Contractor

2018

February - June

Worked part-time as a contractor to design and implement a data warehousing solution.

  • Created a background Java batch service to extract metrics from Elasticsearch, MongoDB, and S3 into a Redshift data warehouse
  • Designed and implemented SQL schema for Redshift DB warehouse
  • Service handled automatic schema updates
  • Mentored junior developer
  • Delivered as a Docker image

Oracle

Principal Software Engineer

2011 - 2017

Prime Project Management Software

I was the team lead for the reporting feature of a project management web application. I also aided other teams in designing and developing core application framework code.

  • Refactored, fixed bugs, and added new features to ~75,000 lines of legacy code
  • Refactored reporting into a reusable library so other teams can enable reporting instead of a having an entire team devoted to it
  • Aided in the design and migration of the whole product into microservices and to Docker and Kubernetes
  • Designed and wrote a service to aid in extracting reporting data from other microservices
  • Managed, assigned tasks, and led planning for other developers on the team
  • Worked in Java with Spring (Spring Boot), EclipseLink (JPA), and Jersey with Jackson on Weblogic with Oracle Database
  • Worked in HTML5/Javascript on the frontend with an in-house MVC framework
Automation/Devops

Along with my primary responsibilities, I saved the company significant time and money by automating many tedious developer processes.

  • Developed an development assistant program that developers used day-to-day. It helped developers setup their machines, review code, and manage their workflows
  • Automated a tedious, error prone, and manual install process that on average took 1 week into around 45 minutes unaided
  • Acted as point of contact for general issues and knowledge across many different teams, and would unblock developers across the organization regularly
  • Created a Jenkins pipeline to continuously deliver the program to ~100 developers
  • Provided support for developers when their deployments were not working
  • Automated Oracle Database Instance setup with Vagrant
  • Wrote the developer assistant in Groovy and Python (for Weblogic Scripting)
Mentoring
  • Mentored 12 different interns over 3-4 years. Helped them via pair programming, whiteboard teaching sessions, and presentations
  • Gave a company-wide presentation on how Git works
  • Assisted other developers across teams on a daily basis

Side Projects

Hyperspace

  • An experimental hypergraph based application platform written in Typescript, Node, and C++
  • GUI written with three.js
  • Deployed via Kubernetes and Docker containers to GCE

Thingo

  • Simple word bingo game
  • Source code is on GitHub
  • Client: Android
  • Server: Java, Spring Boot, Jersey, MapDB

Education

Drexel University

Bachelor's of Science in Computer Science

2006 - 2013

Concentrations in Operating Systems and Artificial Intelligence