Summary
Computer programmer with experience in the Linux shell, SQL databases, Selenium web testing, Python scripting, and image processing in C. Created Bash scripts for program installation and configuration, and wrote Python and Awk scripts for data analysis. Made browser scripts for testing web applications, and built a web application for viewing live statistics. Created a hardware accelerated image processing library for the Raspberry Pi.
Computer Skills
- Experienced in using Unix systems and programming tools, and using automated build and source control systems.
- Proficient programming skills in C/C++, Python, Bash, SQL, Java, JavaScript, and Lisp/Scheme.
- Experience using markup languages including HTML, CSS, and LaTeX.
Experience
Programmer
- IA3.io, Intelligent Automation, Alerts & Analytics
- Oct 2016 Feb 2017
- IA3 is an industrial Internet of Things SCADA (Supervisory Control And Data Acquisition) provider focusing on budget installations by utilizing low cost single-board computers (SBC), standard computer networking protocols, and free/open source software.
- Documented Mango M2M internal programming and the steps necessary to create add-on modules. Also explored the possibility of connecting Mango to Insteon, Trane, Amazon Alexa, AllJoyn, and IoTivity. Mango is a Java based SCADA software suite provided by Infinite Automation.
- Created a Python program for analyzing data collected by Mango from a community well system.
- Processed Modbus serial and TCP log data using Awk, including verifying CRC data integrity values. Allowed the company to determine the source of erroneous raw data values.
- Automated the setup of Arch Linux on servers and SBCs by creating Arch packages in Bash to install custom configuration files, porting build packages from mainline Arch to ARM Arch, and creating new installation packages when needed.
Research Technician 2, Programmer
Contributor to Prof. Aaron Dotson's Sustainable Sorbance project
- UAA School of Engineering
- Sep 20, 2015 Nov 28, 2015
- Programmed Moteinos, a micro-controller with an on board transceiver, to wake at specified times using an RTC clock signal, read data from attached sensors, and transmit that data to a computer with a web up-link.
- Created a MySQL database and a Python SQLAlchemy interface to store and query the data.
Programmer Analyst 1 (Intern)
- Alaska USA Federal Credit Union, Anchorage, AK
- 2010-12, between Fall and Spring Semesters
- Wrote Selenium IDE (Firefox plugin) scripts to automatically test Ultra Branch, Alaska USA’s on-line banking website. Customized Selenium using JavaScript and authored documentation on its use and development.
- Built a web application for monitoring site usage statistics. Utilized JSP (JavaServer Pages) and HTML/CSS/JavaScript/jQuery.
Student Programmer
- Scenarios Network for Alaska and Arctic Planning, Fairbanks, AK
- Fall 2010, Spring 2011, Fall 2011
- Wrote Apache scripts to aid in server migration.
- Created a Python-based web interface to facilitate information sharing using HTTP.
- Assisted in computer setup and maintenance.
Laborer, Web Developer (Home Construction)
- Homan Inc., Eagle River, AK
- Seasonal, part and full time 2002-17
- Built the company's original website, which may be found on the web archive: www.remodelalaska.com.
Education
Bachelors of Science, Computer Science
- University of Alaska Anchorage, Anchorage, AK
- May 2015
CVPI (Capstone Project, CS 470)
- A computer vision and image processing library using OpenVG. OpenVG is a 2D vector graphics C API, supported by some mobile GPUs, that includes image processing operators.
- github.com/dwhoman/CVPI
- www.cse.uaa.alaska.edu/capstone/?q=node/29
Fluid Flow Dynamics Visualization (Software Engineering Project, CS 401)
- A Java-based program for visualizing the change in particulate concentration in a fluid channel.
- Project members Scott Mahar, Bobby Porter, and James Tweet.
- github.com/dwhoman/Fluid-Flow-Dynamics-Visualization
Memberships & Awards
- 5th Dan Black Belt, World Taekwondo Federation
- USA Taekwondo Referee
- Toastmasters member, Club AK49 (club no. 4026009)