John Gray

FULL - STACK DEVELOPER

linkedingithubgmail
Profile

About Me

Hack Reactor Logo

Prior to becoming a software engineer I mined my experience as a post-production specialist to found and operate Wadjet, an access services company that created audio description voiceover to make major streaming services accessible to viewers with blindness and visual impairments. When inconsistent file formats nearly prevented me from getting a new client, I taught myself Python and quickly developed a file conversion application to make that business partnership possible. The experience led me to chart a new course in my career and complete the rigorous Hack Reactor Software Engineering bootcamp.

Since graduating from Hack Reactor, I've worked consistently with Change Climate Project as a full stack software developer volunteer, helping to maintain a large codebase that serves global corporations. In my spare time, I've created several video games and React websites which you check out in the Recent Projects section!

Skills

Languages

pythonPython
javascriptJavaScript
typescriptTypeScript
sqlSQL
c sharpC#
htmlHTML
cssCSS

Devops

gitGit
dockerDocker
cicdCI/CD
cypressCypress
awsAWS
herokuHeroku

Frontend

reactReact
bootstrapBootstrap
viteVite

Backend

djangoDjango
fastapiFastAPI
nodejsNode.js
postgresqlPostgreSQL
unityUnity
expressExpressJS
mongodbMongoDB

Recent Projects

Four Dog Night

A single page application (SPA) board game built with React state and logic. Complex frontend logic creates elaborate gameplay and dynamic move options. Bold aesthetics designed in Figma and executed in React with tasteful microinteractions. 2-player and 4-player modes support different game logic. Cute dogs!

ReactJavaScriptCSSFigmaNode.jsGit
Business Emissions Evaluator

A carbon emissions measurement software I am developing as a volunteer in collaboration with the Change Climate Project. This robust and modular codebase uses TypeScript and Node.js, with microservices written in Python. Global corporations (REI, Vuori, etc.) utilize the React-based frontend to input data, calculate emissions and plan reduction strategies. Charts and graphs are implemented for data visualization. Interfaces and types facilitate adherence to rigorous style guidelines. Cypress testing is used for continuous integration and deployment.

ReactTypescriptCypressCI/CDCSSPythonNode.jsYarn
Color Chameleon

An addictive blend of arcade shooters and color-matching puzzle video games. N-ary search algorithms dynamically reposition grid-based enemies and track spatial relationships between them. An event bus facilitates communication between complex decoupled systems. Level progression system recalculates point rewards and difficulty the further a player progresses. Each of five enemy types uses a distinct ability, augmented when like-colored enemies group together.

C#UnityEvent SystemN-ary TreeQueues
Portfolio Site

A single page web application showcasing my skills and projects, built with the React.js framework. Written in JavaScript, with JSX, CSS, and Bootstrap for styling. The nav bar uses DOM manipulation to take the user to the selected section. UseEffect hook makes "email address copied" message follow the user's cursor. EmailJS, a third-party API, powers the contact form. I deployed the site with Netlify.

ReactBootstrapDOMCSSEmailJSNetlifyJSXJavaScript
Booky

A full-stack web application that allows users to make friends and compete by participating in book clubs. A relational database built with SQL creates complex interactions between data models. Clubs can host meetings with optional attendance for club members. Google Books API integrates book information into each meeting. A Friends system allows users to send, approve or deny requests to join each other's Friends List. Point-scoring and betting drive user engagement by creating friendly competition.

ReactRESTFastAPIViteJSCSSPostgreSQLBootstrapDockerPythonJavaScriptJSX
Conference GO

A full-stack web application that allows users to keep track of conferences, events, and attendees. The front-end is built with React, JavaScript, JSX and Bootstrap. RESTful APIs on the backend were created with Django and Python. Third-party APIs Pexels and Weather update conferences with location photos and weather information.

ReactJavaScriptDjangoPythonJSXBootstrapCSSHTMLRESTMicroservices

Contact

Reach out for professional inquiries or just to chat!