Jonathan McCaffrey
Software Developer with a focus on the .NET tech stack.
Location
Ottawa, ON
Email
jonmcc0723@gmail.com
Phone
613-277-8353
Experience Length
14 years in tech, 3 in education
Education
Game Development (2012)
Skills:
C#, .NET
Blazor
React
Angular
HTML, CSS
JS, TypeScript
Agile, Scrum
Jira, Azure DevOps
Unit Tests
Test Automation
Jenkins, Azure Pipelines
REST, APIs
SQL
git
PC, Mac, Linux, Mobile
Azure, AWS, Self-Hosting (Ubuntu Server)
Google Analytics, 3rd Party APIs/Libraries
Documentation, Training Videos
Customer Support and Debugging
Server Developer
TotalETO, Company providing engineering to order solutions
2021 - 2026
- Wrote various API calls, unit tests to test said calls, and exact examples to show the frontend team on how to consume the GraphQL API.
- Converted SQL stored procedures into views usable by Entity Framework to support old functionality with new web app features.
- Moved from backend to frontend as needed to fix bugs and add features to React frontend to help the UI team with their higher workload.
- Took part in converting legacy VB-coded app functionality to a C# web development server.
- Taken the initiative in creating a variety of onboarding internal wiki documents explaining parts of the codebase that were well-loved by the team.
Fullstack Blazor Developer
Personal Projects, on various interests
2021
- Created igpfanreference.ca to teach players in unreleased game basic play patterns, and to experiment with Blazor, Linux self-hosting and Azure web hosting.
- Twitch streamed live coding sessions to demonstrate developing the website, and crowd-sourced and credited players on ideas and functionality for the website.
Angular Web Developer
CleanCode, Software consultancy on various projects
2020 - 2021
- Came to the conclusion that I wanted to focus my career in .NET, and left the company to pursue Blazor research and C# opportunities. Unfortunately, Blazor development work is not as popular as one would hope.
Full Stack Developer
bitHeads, Tech shop with a focus on cloud-based technology
2015 - 2020
- Worked on a portal and mobile-facing web app for a SaaS project written in React.
- Eliminated routine project hours spent documenting by creating a Node.js tool in TypeScript that generated the API doc contents.
- Created brainCloud’s Command Line tool in Node.js and other test tools, for developers and QA to test and stress test API and server features.
- Maintained customer success and brainCloud’s unit tests, examples, and libraries in Java, ObjC, C++, C#, JS, Unity, and Unreal.
- Wrote documentation, tutorials, and offered guidance to bring new co-workers up to speed on the BaaS environment.
- Maintained and wrote Jenkins Pipeline in Groovy for improved test reporting and team CI.
- Developed Test Automation for brainCloud and Nortec/Condair Help websites in Java, to reduce manual testing time spent on an agile team.
Mobile Game Developer
Smoke Labs, Tech startup with a focus on mobile games
2012 - 2015
- Developed key systems in Blokus, Mattel-branded title nominated in the Canadian Video Game Awards for 'Best Game Design' and 'Best Social or Casual Game.'
- Experience integrating a multitude of analytics, ad systems, and backends, including Google Analytics, Game Analytics, Flurry, Mopub, and Playhaven.
- Spent time working with the external QA team to bridge the company's knowledge gaps between the developer and QA workflows.
- Integrated ads, in-app purchases, analytics, and handled product releases of legacy client apps.