My Face

Jonathan Ryan

jonathan.ryan@jryan.io

I'm a software engineer with over 15 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 CV (curriculum vitae) lists all my experience. To see a more recent work history, refer to my résumé.


All Experience

Comcast

Principal Software Engineer

2018 – 2025

Working on streaming metadata backend APIs.

  • Java
  • Spring Boot 3.5
  • Reactor / Webflux
  • Cassandra / Redis
  • Terraform / GHAs / Concourse / K8s / EKS / HIP

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 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 a development assistant program that developers used day-to-day. It helped developers set up their machines, review code, and manage their workflows
  • Automated a tedious, error-prone, and manual installation process that on average took 1 week into around 45 minutes unaided
  • Acted as a 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
  • Helped other developers across teams daily
P6 Analytics

Worked on an ETL process for Primavera P6 and on integrating the data warehouse with Oracle Business Intelligence suite for analytics.

  • Designed and written from scratch the next version of ETL using Groovy, Java, Oracle PL/SQL, XSLT, on top of Oracle Data Integrator
  • Migrated code from Mercurial to git
  • Performed Oracle PL/SQL performance optimizations that decreased the time of the ETL by hours
  • Designed and wrote ETL custom calculation feature
  • Managed and maintained ant build scripts
  • Refactored a complicated and error-prone XSLT translations process that wasted lots of development time
  • Rewrote Java Swing installer from scratch, the new version was much easier to maintain and use

Mariposa

Software Consultant

2014

Contracted to debug and evaluate problems with their in-house POS system. Created reports on the root causes, possible fixes and gave suggestions for the future.

Drexel University / CERDEC

Co-op Research Engineer

2009 – 2011

BCW/TITAN Research

Command and control visualization tool for an agent-based AI platform written in Java with Spring, JMS, and NASA Worldwind. After my first year, I designed and rewrote the entire application from scratch, all while maintaining the old version in parallel. The speed and quality of the new version convinced the customer to switch to the new version.

Comcast

Associate Systems Engineer

2008

Help manage server rooms. I racked servers, setup switches (mostly cisco), designed and setup networks, and installed operating systems (Redhat, Solaris, Windows Server). I also automated parts of my job with python and expect.

Side Projects

In The Office Tracker

Thingo

  • Simple word bingo game
  • https://thingoboard.com
  • Website: Plain JavaScript and HTML
  • Server: Java, Spring Boot 3.5.7, Postgres

Education

Drexel University

Bachelor's of Science in Computer Science

2006 – 2013

Concentrations in Operating Systems and Artificial Intelligence