Nicholas Hamilton
Software Engineer

About Me

Hi! My name is Nicholas Hamilton. I am a software developer at Epic, working in data aggregation. Before that, I was a computer science graduate student at Michigan Technological University, where I studied machine learning, used computer vision to improve flood modeling, and also explored synthetic augmentation methods for object detection. I began working towards my computer science batchelor's degree in September 2016 and graduated in December 2019 with a department GPA of 4.00 and a cumulative GPA of 3.78. I got my master's degree in December 2022 with a GPA of 4.00.

I have had a variety of programming interests over the years, mainly focusing on machine learning, game development, computer graphics, procedural generation, and physics simulations. Some of my other hobbies include worldbuilding, chess/shogi/xiangqi, sketching, and shorthand.

Projects

Halcyon

UCI chess engine written from scratch in C. Features include: principal variation and quiescence search, null move pruning, MVV-LVA move ordering, and more.

Kawasemi

USI/UCI shogi (Japanese chess) engine written from scratch in C++17. Supports all variants playable on lishogi.org. (Source code not currently available)

Tilewe

Python API for a multiplayer game where players take turns placing pieces onto empty tiles. Backend is written in C.

Logger

Browser-based form that stores user results locally. Supports customizable prompts using a variety of input types.

Evolutionary Learning

CS5821 Computational Intelligence semester project. Uses NEAT and evolution strategies to train neural networks in various Gym environments.

World Generator

Procedurally generates planets. Future uses involve turn-based strategy games and realistic worldbuilding tools.

DEM Renderer

Multithreaded software rendering of large DEM elevation maps. Useful for systems without OpenGL capabilities. (Source code currently not available)

Astral Instability

A puzzle game written in 48 hours. Submission for Ludum Dare 49.

Watson Code Reviewer

IBM intern hackathon project. Uses Watson AI to determine code readability.

Gravity Sim

Simulates gravity with particles in a 3D environment. (Source code currently not available)

Oasis Engine

Work-in-progress 3D game engine originally written in Java being rewritten in C++.

Distributed Slideshow

Slideshow program that can be run over multiple computers and displays using OpenGL. Created as a paid project for a professor.

Modeler3D

3D model viewer written for CS3141 Team Software Project at Michigan Tech.

Quest for the Abacus

2D top-down game developed for my first semester of Husky Game Development.

Falling Blocks

Falling block puzzle game with local 2-player support.

Escape

2D platformer created for AP Computer Science final project.

Resume

Education

Michigan Technological University, Houghton, MI January 2020 - December 2022
M.S., Computer Science
GPA: 4.00
Michigan Technological University, Houghton, MISeptember 2016 - December 2019
B.S., Computer Science
Minor, Mathematical Sciences
Department GPA: 4.00
Cumulative GPA: 3.78
Recipient of seven Dean’s List honors
Member of Upsilon Pi Epsilon honor society

Work Experience

Software Developer June 2023 - Current
Epic Systems, Verona, WI
Developing full stack solutions to aggregate data in a team-based setting
Importing healthcare data using industry standards
Graduate Research Assistant May 2020 - May 2023
Michigan Technological University, Houghton, MI
Focused on machine learning and computer vision
Researched computer vision in flood modeling and augmentation methods for object detection
Graduate Teaching Assistant December 2019 - May 2020
Michigan Technological University, Houghton, MI
Graded student work in multiple courses
Proctored in-person and online exams
Full Stack Developer Intern May 2019 - September 2019
IBM, Rochester, MN
Worked in Agile, collaborative environment with daily Scrum meetings
Developed significant portion of tool for migrating customers to IBM's latest version of WebSphere
Computer Science Learning Center Coach September 2018 - April 2019
Michigan Technological University, Houghton, MI
Taught students material from various courses including discrete math, data structures, Java, and C
Assisted students with homework and studying for exams
Personal Projects January 2007 - Present
C, C++, Java, and Python for work with projects such as:
  • AI including computer vision, chess programming, text generation, and deep learning
  • Physics simulations involving fluid dynamics, gravity, and rigid bodies
  • Procedural generation of planets, terrain, and textures

Husky Game Development Enterprise January 2017 - December 2018
Michigan Technological University, Houghton, MI
Developed cross-platform 3D game engine using Java and OpenGL
Used GitHub, Slack, Taiga, and Google services for team communication
Collaborated using Scrum and Agile development processes

Contact Me