My name is Michael Rupert, and I'm a graduating Senior in Computer Engineering at Iowa State University, graduating in May of 2017. I am always looking for new experiences in the world of software development, with a particular interest in networking and protocol security.
During my internship at Workiva, I became very familiar with Docker and its uses. In my free time, I started using Docker to spin up some of my favorite self-hosted services, such as a Mumble server, a Bitlbee server, and a few different web frameworks. One problem that I had however, was that it was a pain to SSH into the VPS that I was using to spin up/down services. As a result, over a weekend I built this, Docker Terminal. It uses a Flask backend to interface with the Docker cli, which allows me to display running containers, kill them, and or start new containers. I hope to rebuild it using React components in the near future.
This is an ongoing project, where the goal is to build an intelligent camera system using OpenCV and machine learning. This has been my first experience in planning an entire project and has given me much insight into the planning of a large project. Some of the most interesting elements of this project have been reporting progress to my advisor as well as writing thorough documentation.
This is a project that a partner and I wrote for a Web Design course during our Sophomore year at Iowa State. It uses NodeJS, Express, and Socket.IO to implement an interactive whiteboard where many users can draw shapes and text. It uses websockets to push updates out to connected clients, and supports as many users as the host machine and framework can handle.
During my final year at Iowa State, myself and a team of 5 others designed and implemented a system to collect records of the nitrate and phosphate levels in water accross Iowa. This system used a spectrometer and Raspberry Pi to send data to an Android app where it was displayed and backed up to a cloud database. I held the role of Webmaster on the team.