Skip to content
View jlmcdonough's full-sized avatar
โšฝ
To Dare Is To Do
โšฝ
To Dare Is To Do

Block or report jlmcdonough

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please donโ€™t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this userโ€™s behavior. Learn more about reporting abuse.

Report abuse
jlmcdonough/README.md

Hello! lando norris waving

๐Ÿ“ New Jersey
๐Ÿ’ผ Platform Engineer @ Colgate-Palmolive
๐Ÿ… CompTIA Security+ Certification (expires March 2028)
๐ŸŽ“ Software Development and Cybersecurity @ Marist College
๐Ÿ“ Resume

๐Ÿš€ About Me

My name is Joseph McDonough, and I'm a software engineer who is also CompTIA Security+ certified. Most of my professional experience is developing backend services in Java as well as Python for scripting and jobs. I have a passion for data and enjoy the process of receiving data and transforming it into something meaningful. And while it may not always be worth it, I do enjoy automation. Spending hours to save a couple seconds and clicks is very rewarding to me. Designing and implementing CI/CD pipelines that then require minimal effort and automated test suites with alerting were some of my favorite professional projects.

Currently a Platform Engineer @ Colgate-Palmolive!

๐Ÿงฐ Technologies & Tools

Java Python JavaScript

Spring Boot Postgres GitLab CI Jenkins GitHub AWS Google Cloud Redis Helm Kubernetes Docker

Jira Confluence ReadMe Notion LaTeX IntelliJ IDEA

๐Ÿ› ๏ธ Projects

๐Ÿ’ฌ actions-pr-comment - a GitHub action for better pull requests comments

JavaScript GitHub GitHub Actions

I designed and developed actions-pr-comment to solve a recurring CI/CD pain point at Colgate-Palmolive. Validation workflows tend to leave pull request comments notifying the developer of the status. And when new commits were pushed, these validations are rerun and new comments generated, causing the pull request to become cluttered. Most of these comments tended to be redundant or just general bloat. I built this action to reduce noise and make getting the most up-to-date information easier and more streamlined through dynamic comment management.

This tool provides developers with granular control over comment lifecycles, supporting modes to replace, append, or hide comments based on workflow outcomes. It accepts both raw string inputs and Markdown file injection, offering flexibility for diverse project needs. To ensure production-grade reliability, I implemented a robust suite of Jest unit tests and prioritized high code coverage.

After successfully integrating the tool into internal workflows and gathering positive feedback from my team, we identified an opportunity to share this solution with the broader developer community. With their support and guidance, I successfully licensed and published actions-pr-comment as my first open-source project, where it now serves as a scalable solution for teams struggling with PR noise. For those interested in following the project or reading more about it, I also wrote a very detailed README documenting all the features, acceptable inputs, use cases, and even some examples with gifs.

๐ŸŽต Rhythmic Radiance - a beatmap developer tool for our multi-lane rhythm game

Python Unreal Engine C++ PyCharm Visual Studio Rider GitHub GitHub Actions

Rhythmic Radiance is a multi-lane rhythm game in development by Kuneho Studios, a games company that I started with some friends of mine. I serve as a lead UI/UX engineer for our development team in Unreal Engine. In designing a diegetic UI, I work with data tables and structs to organize and display our data. Additionally, I have designed a random item drop system that rewards our players with items after completing a level. Game development is not what I went to school for, however, I felt that learning a new game engine and programming language would help me strengthen my software development skills. Through all of this, I believe my biggest contribution is through our Python beatmap developer tool.

The crux of our game relies on beatmaps, which are the way to translate the song into notes that appear on the play screen for the user to strike. Think Guitar Hero and how the notes come down the screen to the user in lanes. As the names and methods used to display this in-engine are not required knowledge for the individual who is beatmapping a song, I wanted to abstract that out. The developer tool accomplishes this with a prompt-based system. I wrote a Python program that gives the user options that they can select to develop a valid music chart (through a JSON file) that can be read in Unreal Engine. The tool is a flexible program that allows users to create, read, update, and delete beatmaps as they so choose, without ever needing to go into Unreal Engine.

The developer tool is a living program that will be updated as the game matures. I am also looking for new ways to improve the user experience and allow more advanced users to perform actions more efficiently.

You can visit our website to learn more and subscribe to our mailing list!

๐ŸŽฎ ARI - a cybersecurity training escape room experience

Unity C# Visual Studio GitHub

ARI is an educational first-person puzzle escape room game designed to teach best cybersecurity practices to all audiences. The goal was to create an enjoyable learning experience through interactive gameplay while simultaneously providing a robust introductory cybersecurity education.

To complete both a software development and a cybersecurity degree at Marist, undergraduates had to complete a "capstone project" which was meant to encompass their previous 4 years of learning. To graduate, a double major must complete two capstones. I was fortunate enough that there was an opportunity that would allow me to combine and do both. Through ARI, I was able to be a critical contributor to both teams. As a member of the software development team, I learned a new programming language (C#) and a game engine (Unity). I developed many cybersecurity-centric minigames that would be implemented and brought ARI to life. In leading the cybersecurity team, I was responsible for the narrative direction and level design of the game. Being a part of both teams allowed me to relay requirements easily between the two and helped alleviate any blockers as they appeared.

Having exceeded our professors' expectations, they recommended that we present our game and corresponding paper on the gamification of learning and the octalysis framework at the Mid-Hudson Regional Business Plan Competition and later the 14th Annual ECC Conference. At the ECC Conference, we won the cybersecurity award for best in its category, competing against other established cybersecurity individuals and teams. Afterward, we licensed ARI to be used in a high school cybersecurity summer class where students were able to play our game and talk to us about it and cybersecurity as a whole.

You can watch our trailer or even download and play ARI yourself!

๐Ÿ–ฅ๏ธ rhinOS - a browser-based operating system in TypeScript

TypeScript HTML CSS LaTeX IntelliJ IDEA GitHub

rhinOS is a browser-based operating system that is written in TypeScript, developed in an operating systems course during my senior year of college. The project was a culmination of all the course material into one, runnable operating system. rhinOS can still be run (here).

rhinOS allows the user to load 6502a machine language opcodes into memory, execute one or more programs continuously, and to create, read, write, delete, execute, copy, rename, and list text files. The application supports a light and dark mode too. A test directory was supplied to provide examples to test the functionality of the operating system. rhinOS has a 100% pass rate.

๐Ÿ“ท Outside Interests

Spend most of my other time with soccer or motorsports. Both participating and watching! Can check out some of my photos from some races I've been to on 500px @jmcdonough

Have been working on more photography stuff too, and I am trying to improve. Been able to shoot some events for family and friends recently.

Also playing video games like Counter-Strike where I recorded every game I played over the course of 3 years to make a fun little report that can be viewed here

๐Ÿ“ซ Connect With Me

Gmail Badge

LinkedIn Badge

son heung-min with europa 2025 trophy

Pinned Loading

  1. colpal/actions-pr-comment colpal/actions-pr-comment Public

    GitHub action for creating, updating, and hiding comments on pull requests

    JavaScript 3

  2. OmarDirah/SENDHELP OmarDirah/SENDHELP Public

    Cyber Security Escape Room Capping Game

    C# 6 6

  3. Class-Final-Projects Class-Final-Projects Public

    Final submissions for class projects

    Java