Ethan Pisani.
Introduction
Hey, I'm Ethan Pisani, a Computer Science student at the University of Western Ontario, wrapping up my Bachelor's with an Honors Specialization in 2025. I’m passionate about AI, machine learning, and game development, with a strong focus on creating innovative solutions through both software engineering and AI techniques.
My projects range from developing AI agents for games like CSGO, where I compare traditional pathfinding with deep learning, to working on real-time bus visualization using AI/ML for my city’s transit system. I’m also building a 3D game in Godot with custom C++ modules that interface with LLaMA, stable-diffusion, and more.
I’ve interned as a Junior Software Developer at the Canada Revenue Agency, gaining hands-on experience with COBOL, JCL, and mainframe debugging, while also doing QA and bug triaging. Additionally, I’ve had a stint at the DFO Government of Canada as a Junior Communications Officer, helping streamline communications and manage user stories for software projects.
When I’m not coding, I’m probably tinkering with my homelab, I just upgraded to 10gb LAN!, where I self-host apps and experiment with different systems like Docker, TrueNAS, and Proxmox. You’ll often find me deep-diving into emerging tech, whether it’s neural networks or new software, always looking for that next creative challenge.
Education
Bachelor of Computer Science University of Western Ontario 2021 — 2025
Honors Specialization in Computer Science
Papers
- The paper presents two AI agents developed for playing the game Counter-Strike: Global Offensive (CS:GO).
- The first agent combines YOLOv7 object detection with the A* pathfinding algorithm, while the second agent uses a deep neural network trained through behavioral cloning and offline reinforcement learning.
- The project aims to create an AI that mimics human player performance based solely on visual inputs, comparing the realism and behavior of pathfinding-based AI versus machine learning-based AI.
Comparing AI Navigation Methods Using Counter-Strike: Global Offensive 2023
Projects
- Developing a 3D game in the Godot 4.3 Engine
- Wrote custom GDextension modules in C++ for the game engine
- Custom modules include interfaces for llama.cpp, stable-diffusion.cpp, whisper.cpp, and piper TTS
- Dynamic story-telling and world-building ultizing Meta's Llama 3 models, c0 diffusion model and piper TTS models
- Partnered with Dr. Yili Tang and the MoTech Group to develop tools for real-time bus movement visualization in London using AI/ML techniques and data from the City of London transit portal.
- Utilized SQL and Multiple Linear Regression to store and analyze real-time bus location data, aiming to enhance the accuracy of existing bus time information through advanced machine learning methodologies.
- Created a Virtual Personality by using a blend of cutting-edge open-source AI models. Employed a diverse array of Machine Learning techniques, including LLM, TTS, STT, and text analysis.
- Designed a modular system over MQTT to integrate and control these models and algorithms, resulting in the development of a human-like real time conversational avatar that can be locally hosted on consumer hardware.
- Contributed to a modular design approach that enabled independent development and testing of project components, improving team efficiency and streamlining code integration.
- Addressed server crashes, API instability, and integration issues through improved version control, error handling, and coding standardization, resulting in a resilient and functional application.
- Led the implementation of an image recognition module that captured and converted ASL hand signs into text, enabling seamless communication with a chatbot using OpenAI’s GPT-3 API, while supporting English, Spanish, and French for broader accessibility.
- Streamlined collaboration through Bitbucket for version control, conducted regular in-person group work sessions, and implemented weekly scrum meetings to enhance communication, track progress using Jira, and ensure accountability across the team.
- This project for Western University Software Engineering Class is an app that uses the university’s floor plans, allowing users to search and navigate each floor of select buildings. The application allows users to search for points of interest, browse floor maps, and save personal points of interest. The application will also have an editing tool for developers to create and edit map metadata.
- Involved using the complete software development cycle, from initial requirements to design, to development utilizing Java, JUnit 5, Git, BitBucket, and Swing, to testing a fully featured desktop application.
- Trained NVIDIA’s StyleGAN2-ADA on dataset of Galaxy Images to generate new images
- Developed and hosted a website for displaying the images using Flask and Docker
- Developed a Flask web application to help students study for their Chemistry 12 CPT exam
- 4 sections using different interactive study methods: flashcards, quizzes, and a follow along, and 3D visualizer
- Utilized Python, Flask, HTML, CSS, and JavaScript to create a user-friendly study guide
- A collection of computers and servers both local and cloud-based running various software such as Debian, Proxmox, TrueNAS, and OPNsense.
- Experience self-hosting apps like Gitea, Jellyfin, Docker apps, reverse proxy config, and more.
Tails of Ailurus September 2024 — Present
LTC Bus AI/ML October 2024 — Present
Project ASH 2023
ASL-Translate-GPT 2023
SMPLY-Navigate 2022
Gan Flask Website 2021
Homelab 2019
Skills
- Python
- Java
- COBOL
- C
- C++
- JCL
- Bash
- Rust
- SQL
- R
- Numpy
- TensorFlow
- Docker
- Jira
- Git
- Linux
Experience
Junior Software Developer | Canada Revenue Agency May 2024 — August 2024
- Trained on Batch/Online COBOL, JCL, Mainframe ISPF. Debugged programs in Xpediter, Topaz Workbench.
- Performed daily QA testing of regressions, enhancing team efficiency.
- Gained experience in agile development, using Jira, code reviews, impact analysis, and Endevor.
Junior Communications Officer | DFO Government of Canada May 2022 — August 2022
- Updating the team’s intranet site using Drupal, managed email inboxes, documented user stories
- Helped my team work more efficiently by helping with any requested tasks
- Gained experience in communicating with stakeholders about user stories to be used in a large software project.
Extra-Curricular Activities
Team Lead | LTC Bus AI/ML | Western Developer SocietyOctober 2024
- Partnered with Dr. Yili Tang to develop tools for real-time bus movement visualization using AI/ML techniques.
- Utilized SQL and Multiple Linear Regression to store and analyze bus location data.
Developer | Project ASH | Western AI2023
- Created a Virtual Personality by using a blend of cutting-edge open-source AI models. Employed a diverse array of Machine Learning techniques, including LLM, TTS, STT, and text analysis.
- Designed a modular system over MQTT to integrate and control these models and algorithms, resulting in the development of a human-like real time conversational avatar that can be locally hosted on consumer hardware.
Developer | Project Lambda | Western AI2022
- Created 2 Machine Learning Agents to play the video game CSGO
- Object detection Model using Yolov7 in Pytorch and A* path finding
- Behavioural Cloning Model using JAX/FLAX running from a OpenAI GYM environment
- Achieved 87% accuracy on custom data set of over 5,000 images
Developer | Pose Estimation | Western AI2021
- Designed a custom ANN for Image Classification of a yoga pose.
- Developed model using TensorFlow and Numpy.
- Detected using TensorFlow back-end to a HTML/CSS website.