John McKirdy
JM Developments
Valemount, BC
V0E 2Z0

Cell: 250 299 5288
LinkedIn: John McKirdy (Developer)


I am passionate about making software and learning new technologies with a focus on full-stack web development. I am seeking a growth oriented position as a web developer with a focus on building data driven, responsive, mobile friendly websites. I am always looking to learn more and become a better developer.


I strongly believe in building elegant and efficient solutions modularly with an emphasis on cross-device/cross-browser functionality.

Food Store

The Food Store is a Web App and CMS(Content Management System) running PHP/Apache/MySQL server-side, and plain HTML/CSS client-side.

Implemented PHP and SQL code to create a customer-facing online shopping experience that allows for selecting items for purchase, adding to shopping cart, and of course, checking out. As well as an administrative-facing web interface, allowing store managers to add new products and modify existing ones, monitor stock levels, and process customer orders.

The key to keeping the operation running smoothly is the back end database. Built out a mySQL database of tables that allows for complex tasks like search functionality, storing and retrieving binary data, handling transactions, implementing shopping carts, and generating downloadable Excel reports.

Battleships! Game

Made a BattleShip game with JavaScript/HTML/CSS consisting of a background image overlaying tables with id attributes that are then manipulated through the DOM with JS. It is an MVC architecture with the view object being updated by the controller object.

The program generates 3 random 3-cell sized ships that must fit on board. Then it takes a players guess, checks to see if it's valid, and converts the letter to a number and concatenates them.

Most things are controlled through functions that do a variety of things such as generating ship locations and ships, taking users guess, parsing the guess, displaying the info through the view, etc. The script tag is placed at the bottom of the page after the page has loaded so there is no flicker on screen load.

PHP Forum

Created a Basic Forum site with PHP and SQL code complete with registration of new users, login & secure password hashing , ability for only registered users to create new threads/topics, and post on other threads. Everyone can view the posts though.

Built the 'register' and 'posts' tables with great care taken towards setting the primary and foreign key relations, and normalizing the database to the third normal form. Then creating the forms on the front-end to populate the database. Able to write the code to check data entered by a user and make sure it is not a duplicate username or email, and that the data has been properly sanitized before being sent to the database.

As of now there is no pretty UI, it's mostly an exercise in building database driven apps from the ground up.

Praxis - A YouTube(but not just video)style App

Designed the UI and back-end for an app concept I came up with. Praxis is a user generated, short-form, multimedia, professional networking site based on the idea of blending different short-form media types together onto one platform. This makes it a cleaner and more flexible space for creators and consumers alike. (It is also what all the other platforms want to do.)

Content creators are able to experiment and upload whatever media type that they prefer. For people who like to chain their Tweets or InstaGram posts (carousel), Praxis is the perfect fit. For people on YouTube and Tic-Toc uploading 'shorts' instead long-form video, Praxis is perfect.

The name Praxis means 'Practice' and reflects my desire for it be a repository of one's life work or passion project. Be they authors, artists, scientists, free-thinkers, hobbyists, or anyone who has something useful they would like to share with the world.


(All of these vary in degree and freshness, but I’ve used all of them in a project at some point.)

Programming languages


Source control

Issue tracking




In general


Other Interests

The usual geekery: Video games, especially old/vintage video games and the fantasy genre. Well fantasy genre across the board - be it books, games, or video. Reading, lots of sci-fi and fantasy, but also non-fiction and even some manga as a way to motivate and assist me in learning Japanese. Learning Japanese (just the basics of writing and speaking) is my latest thing I do for fun.


Feel free to contact me, I am usually a pretty socialable guy.
I live in Valemount, British Columbia, Canada.


Available upon request.