Billy Rhoades Software Developer - Web Designer


I like programming— no, seriously, I like programming. If you were to stop by my place on an arbitrary Saturday, it’s very likely I would be working on some pet project. It would probably be in Python or Ruby, being my favourite languages. That being said, I strongly believe a language should be chosen to fit the problem. As can be seen on Github, I’m not afraid of using a new language if it fits a problem better.

If I were asked to “tell me about yourself” in an interview, I would begin with my hometown. I grew up in a small town of 161, Blue Eye, Missouri. I attended the same, small school for 13 years and graduated in its largest ever class of 76 students. My first exposure to a programming language, Pascal, was trying to cheat in a video game when I was in 6th grade. That became the new video game.

My school, being as small as it was, did not offer any computer science courses. I went on through 8th grade and high school teaching myself C, Bash, and PHP. Using these three languages, I launched a mod for Tremulous, KoRx, wrote and managed several PHP applications, KoRPS/KoRMS, for a website and gaming community, Knights of Reason, and managed its server and community. These three languages were the bulk of the exposure I had until I entered college, which is cleanly formatted below.

Linux, on the other hand, was thrown at me in 8th grade by chance. I first got my hands on Ubuntu Dapper Drake. I did not know what to make of it then, but something about it stuck with me. A year later I had it on my home computer. Fast forward three years and my desktop and laptop both ran Arch Linux, with the latter not even having a Windows install. Today is the same. All my machines, my media server, and my work machine run some variant of Linux as a primary OS.


Grader uses Docker and Python to easily grade many assignments in an encapsulated, safe manner. The general process starts by creating an image for a class or an assignment. That image can be given a payload, a protected grading script, which has a grading hooks. The grade module, when ran, creates an individual container for each student’s assignment and runs a payload hook. The payload then returns a JSON response with stdin, stdout, and additional response information depending on the image ran.
Markovirc “Marko”
Marko is an IRC bot in Ruby that uses Markov Chains to generate text which appears human written. It gathers its source text from any channel it sits in, leading to humerous messages or drivel depending on quality. Markovirc drew deep inspiration from another IRC bot, SeeBorg. Core logic from Marko has been separated into a gem here.
Selenium Wrapper
Selenium Wrapper is a Python wrapper around the Selenium web testing framework. Selenium Wrapper was created as part of my co-op with Monsanto to assist my team in load testing websites where WebLOAD was not properly recording all data. This project wraps many headless PhantomJS instances to run a recorded and converted script to load test a website. The instances of Selenium Wrapper can then be configured to report upstream to Splunk, which aggregates and reports data. More details here.
KoRPS – KoR Polling System
KoRPS was the voting system using by Knights of Reason to introduce new members into the group. It was written in PHP with heavy Javascript/AJAX support around 2008. It integrates with phpBB to filter users and give them appropriate permissions. An unmaintained version is still up here.
KoRx was a mod of Tremulous, which in turn was a mod of ioquake3. Tremulous was a game in which humans fight against aliens in a FPS-style, but with a RTS twist. With the help of 3 team members, I was the project manager and head programmer for the project. Initially KoRx started as a mod to fix some bugs and things that bothered me, as can be seen here and then it slowly transformed into a recognizable and unique game type. Around 2010, along with the demise of Tremulous, KoRx ceased development.


Software Engineer
Cerner Corporation
June 2016 – Present

  • Developed and maintained HealtheLife (Patient Portal), a Django web portal for patient self-service
  • Designed and developed pageletized versions of existing pages in Patient Portal
  • Created and executed Gatling tests for Dex, Cerner’s next-generation dashboard with pagelet content
  • Maintained and developed a react launchpad for Dex, Healthe At Cerner

Missouri S&T – CS5201 / CS328
January 2016 – May 2016

  • Graded homework assignments for Object Oriented Numerical Modeling
  • Served as sole point of contact for all programming questions
  • Held office hours to answer questions
  • Lectured on a few topics, including CRTP / static polymorphism, virtual memory management, and C++11/C++14 features

Lab Assistant
Missouri S&T – CS1580 / CS54
August 2015 – December 2015

  • Assisted students with completing programming assignments

Missouri S&T – CS1570 / CS53
August 2015 – December 2015

  • Graded programming assignments for the Intro to C++ course

Software Development Consultant
May 2015 – July 2015
Developed a closed-source program in C for testing Corvette instrument panels. The program manually handled a display with features such as menu navigation, test feedback, and clean state transition. This program ran on a PIC16F1789 with 28 KB of memory, 2 KB of RAM, a 160×128 display, and 4 buttons.
Student Lead
Missouri S&T – IT – Desktop Infrastructure
December 2014 – November 2015

  • Delegated and assigned work to students
  • Trained incoming and senior students
  • Set up and interviewed new student candidates
  • Served as a point of contact for DI
  • Created new policy which puts all new packages and code on Git
  • Managed campus SCCM site as a primary administrator

Service Performance and Reliability Co-op
Monsanto – IT – Global Infrastructure
June 2014 – December 2014

  • Developed Selenium Wrapper for performance testing internal sites
  • Collaborated with a hackathon team to make a web-based idea board
  • Created a dashing-based dashboard to monitor SalesForce and AWS cloud status

Desktop Engineer
Missouri S&T – IT – Desktop Infrastructure
May 2013 – June 2014

  • Packaged and maintained Perl applications
  • Used Microsoft SCCM for software and OS deployments to over 4,000 machines
  • Created custom Windows 7 builds for campus hardware
  • Maintained license servers for academic applications

Student Lead / Mentor
Missouri S&T – IT Campus Tech. Support
February 2013 – May 2013

  • Coordinated and conducted meetings for more than 20 CTS students
  • Made and maintained procedural reference material
  • Trained, supervised, and coordinated time off for service desk student workers
  • Kept and recorded CTS student schedules across all teams

Student Support Analyst
Missouri S&T – IT – Help Desk
February 2011 – May 2013

  • Responsible for coordinating and scheduling appointments with customers
  • Called on to assist professors as a first contact
  • Tasked with assisting staff and faculty remotely and in person