Personal Projects
Developed a Golang REST API to interface with GitHub’s API
- Returns a nested list of followers for a specified user in JSON
- Returns a nested list of a users repositories and stargazers for each repository in JSON
- Packaged in an easy to build and deploy Docker container
- Reads in a GitHub API token as an environment variable
- Deployed the container on a publicly accessible cloud server
- Repository: github.com/HauptJ/Golang-API-Github
Summer 2018 – Present: CLI Golang Application Tracker and Cover Letter Utility.
Developed a CLI Golang Application Tracker and Cover Letter Generator
- Builds custom cover letters using a LaTeX template
- Utilizes Travis CI and for integration testing
- Uploads CV to a public Google Cloud Storage bucket
- Utilizes SMTP to send cover letters and resumes via Email
- Wrote Dockerfile and Docker Compose file to deploy the external API
- Logs applications to an external MongoDB database as well as a local CSV file
- Repository: github.com/HauptJ/Golang-Cover
Fall 2017 – Present: Automated Website Deployment.
Built an Ansible Playbook and a Terraform script to automatically deploy a WordPress website to DigitalOcean and configure DNS records on CloudFlare
- IPv6 only behind CloudFlare
- Redis caching
- Utilized Travis CI and Docker for integration testing of Ansible Roles
- Incorporated Ansible Vault to protect sensitive variables
- Developed a Vagrantfile that utilized custom build Vagrant box for local testing and debugging
- Wrote bash scripts to automate repetitive tasks
- Repository: github.com/HauptJ/WordPress-CloudFlare-Terraform
Spring 2018 – Present: CentOS 7 Vagrant Box.
Built a custom CentOS 7 Vagrant box using Packer
- Included automatic provisioning with Ansible
- Published to Vagrant Cloud
- Wrote a PowerShell script to automate build and packaging processes
- Repository: github.com/HauptJ/Vagrant-CentOS-7-HyperV-Gen-2
Spring 2018 – Present: Ansible, Terraform, and OpenStack CLI Docker Container.
Built a custom Docker container with Ansible, Terraform, and OpenStack CLI
- Utilized Travis CI for integration testing
- Published on Docker Hub
- Repository: github.com/HauptJ/Ansible-Docker
January 2018: Python Git Hook and Integration Testing Project.
Wrote a simple python program that demonstrates GIT hooks and automated integration testing
- Utilized Travis CI for integration testing
- Wrote a separate script to run integration tests and print a report
- Repository: github.com/HauptJ/Value-Cleaner
Summer 2014: TCP IP Web Utility Website.
Developed PHP website that provided TCP IP utilities such as user IP and user agent ping, traceroute, port scan, and nslookup
- Configured a DigitalOcean cloud server with the LEMP stack
- Configured DNS records
- Originally published on Google Code
- Repository: github.com/HauptJ/ip-tools
Academic Projects
2017: DevOps, SIUE, Edwardsville, IL, Group Senior Capstone Assignment.
Developed a toolkit to assist students gain an understanding of the tools and processes used in a Unix DevOps environment
- Note: Client was an employee of AT&T
- Role: Linux Expert
- Actions:
- Wrote a Vagrantfile and an Ansible Playbook to provision a virtual development environment
- Wrote Dockerfiles to provision Ubuntu Linux containers for Java, Python and C++ Socket programming
- Wrote Travis CI test cases for CI testing
- Wrote bash and PowerShell scripts to install Git, VirtualBox, Vagrant and Ansible
- Impact: Helped create a fully functional end product that met all of the client’s expectations
- Repository: github.com/SIUE-DevOps
Spring 2017: Mock Email Client and Server, SIUE, Edwardsville, IL, Individual Computer Networking Project.
Built a mock Email client and server in C++
- Utilized TCP, UDP, logging, authentication and external HTTP API calls via CURL
- Incorporated SMTP and HTTP status codes and request commands
- Created a PHP based HTTP API to assist with encoding and decoding passwords
- Repository: github.com/HauptJ/UDT-Mail-Server
Fall 2016: LA Crime Database, SIUE, Edwardsville, IL, Group Database Project.
Built an advanced MariaDB database using crime data published by the city of Los Angeles, California
- Role: Linux Server Expert and Web Developer
- Actions:
- Designed an advanced database using crime data from Los Angeles, California
- Set up a MariaDB database on a CentOS 7 cloud server
- Took frequent database backups
- Solved configuration problems that arose with CentOS 7, MariaDB, PHP and Nginx
- Created a simple web interface that utilized advanced queries
- Assisted a group member resolve technical problems that made impeded him from accomplishing tasks
- Impact: Helped create a fully functional end product that met all graduate level specifications
- Repository: github.com/HauptJ/SIUE-CS-434-Advanced-Databases-Fall-2016
Fall 2016: CS AP Test Study Web App, SIUE, Edwardsville, IL, Group Human Computer Interaction Project.
Designed a PHP web application to aid students in studying for the Computer Science AP test
- Roles: Git Expert, Linux Server Expert, and Web Developer
- Actions:
- Recommended web services such as Github and Office 365 to assist with collaboration
- Set up an Infinoted server hosted on an AWS cloud server to enable pair programming
- Created a PHP web application hosted on an OVH cloud server
- Thoroughly documented design and planning after performing requirement analysis
- Performed usability testing
- Created Flow, Cultural, Sequence, Artifact, Physical, and Affinity Diagram work models
- Created Low and High Fidelity prototypes
- Presented the project to the class at the end of the semester
- Helped a group member resolve technical problems that made impeded him from accomplishing tasks
- Presentation: jnh.bz/hci_proj_ppt.pdf
Fall 2015: Animal Rescue App, SIUE, Edwardsville, IL, Group Software Engineering Project.
Built a C# desktop application to keep track of inventory at an Animal rescue organization
- Roles: Git Expert, Linux Server Expert
- Actions:
- Recommended web services such as Office 365 to assist with collaboration
- Thoroughly documented design and planning after performing requirement analysis
- Created design diagrams such as use cases, UML, DCD, Sequence, and ER
- Presented the project to the class at the end of the semester
- Presentation: jnh.bz/swe_proj_ppt.pdf
Summer 2015: Intern Research Assistant and Software Developer, NSF and Missouri S&T, Rolla, MO, National Science Foundation Secure Cloud Computing Research Experience Undergraduate.
Studied cloud computing approaches, platforms and trends in depth
- Note: One of ten selected from a national pool of applicants
- Role: Research Assistant and Software Developer
- Actions:
- Researched, developed and implemented ways to securely store and process private information on public cloud platforms
- Devised a ranking system to prioritize Cloud Service Providers (CSPs) based on certifications and other implemented security features
- Trained group members how to use Git
- Impact: Provided enhanced understanding of various cloud computing platforms, the three service models (SaaS, PaaS, and IaaS), and approaches to utilizing public cloud platforms in a secure manner
- Presentation: jnh.bz/mst_reu_ppt.pdf
- Poster: jnh.bz/mst_reu_poster.pdf
Spring 2015: File Deduplication, SIUE, Edwardsville, IL, Group Research Project.
Research project involving file deduplication
- Role: Research Assistant, Linux Expert, and Developer
- Actions:
- Translated a Java library to C
- Encouraged group to use good code documentation practices
- Set up an Infinoted server hosted on a DigitalOcean cloud server to enable pair programming
- Impact: Helped create a functional product that met the professor’s expectations