John Sullivan

(Resume & Portfolio)

Work History

Khan Academy Senior Software Engineer

to

Khan Academy Software Engineer

to
  • Python
  • GAE
  • Javascript
  • React.js
  • BigQuery
  • Selenium
  • Aphrodite
I worked on a large variety of projects including the Official SAT® Practice, the KA engineering blog, localization and translation tooling, and the end-to-end tests. I also worked on hundreds of small disconnected tasks that involved making changes throughout the entire codebase.

Mozilla Software Engineer Intern

  • C++11
  • Networking
  • Win32
  • Bionic
I improved on the DNS cache used by most of Mozilla's products to use TTL information when available. This involved writing platform specific code for many of their supported platforms. I also worked on adding support for mesh networking among Firefox OS phones.

Khan Academy Software Engineer Intern

  • Python
  • GAE
  • Javascript
  • Amazon CloudSearch
  • Nginx
  • Vagrant
  • Bash
I improved the search page by radically updating its UI, moving the backing engine from self-hosted Solr to the easily scalable CloudSearch, implementing a search-as-you-type feature, reducing the time it takes to update our search index from hours to minutes, and tens of tiny tweaks.

JetHead Development Software Engineer Intern

  • C++
  • CEA-608
  • CEA-708
  • Bash

I designed and implemented a new closed captioning implementation of CEA-608 for their set top boxes. My code proved to be very stable and few bug reports were filed against the system during my year-long absence between internships.

During my second internship they were preparing to enter new markets in other countries including Mexico and China. To accommodate, I expanded on my work and created a stable platform that the rest of the team could build atop in order to support the new specifications. I also helped directly with the effort to support CEA-708.

UC Riverside Supplemental Instructor Mentor

UC Riverside Supplemental Instructor

  • C++
  • Python
I led multiple twice-weekly classes that aimed to improve students' understanding of Computer Science. During my last year, I became a mentor (a manager-like role) and worked to teach and lead my fellows.

Freelancer

  • Visual Basic 6
  • Win32
  • C#
  • WPF
  • NI-DAQmx
I did several one-off contracts with various people and companies between my first year of high school and my first year of college. These contracts included creating a GUI for a laser that measured the darkness of coffee grounds, cloning the popular Microsoft Ribbon, setting up a database and GUI for a senior community home broker, creating a tool to index a professor's written works, and much more.

Side Projects

I've worked on many projects outside of work. Here is a selection of some of my favorites, but you can find more on my GitHub profile and personal site.

Galah

  • Python
  • uWSGI
  • Nginx
  • MongoDB
  • ZeroMQ
  • OpenVZ
  • Flask
  • Vagrant
My first epic foray into web development. It's an automated grading system geared towards processing computer programming assignments. For a few years, hundreds of students every quarter used Galah. Over 150,000 submissions were made to Galah, each one tested by placing its code into a clean virtual machine with the instructor's test harness.

Superzippy

  • Python
A simple tool for turning a multi-file, multi-dependency Python script into a single executable file. I initially created it in order to more easily distribute tools to users of Galah at UCR.

Anti-Gravity Connect 4

  • Flash
  • ActionScript
One of the few Flash games I've created, and the only one I'm willing to share with the world. AGC4 puts a big twist on the classic game of Connect 4.

Cloak

  • Visual Basic 6
  • Win32 API
A Visual Basic 6 application that lets you hide any window on your Windows PC immediately, and temporarily, at the press of a hotkey. The first version was made towards the beginning of my middle school career when a user asked for a way to play Runescape without their parents knowing. I released the third version right before entering high school.

Education

Self-Taught

I began programming in 3rd grade and I have been actively exploring software engineering ever since.

University of California, Riverside

I left while I was in Junior standing in order to join Khan Academy. I was pursuing a BE in Computer Science and had a 3.285 GPA.