craigmcn

Portfolio

Craig McNaughton

craig at craigmcnaughton dot ca
github.com/craigmcn

Professional Summary

Senior Software Developer specializing in frontend development with React, Redux, JavaScript, and TypeScript. Experienced in designing reusable component architectures, implementing design systems from Figma, and building accessible web applications that meet WCAG standards. Strong full-stack background with Ruby on Rails and REST APIs.

Technical lead experienced working with small Agile teams, mentoring developers, and delivering maintainable software systems.

Selected Engineering Achievements

Core Technical Skills

Frontend

React, Redux, Redux Toolkit, JavaScript (ES6+), TypeScript, HTML5, CSS3, Tailwind CSS, Bootstrap, CSS Modules, SCSS

Frontend Architecture

Component-driven development, reusable component libraries, design system implementation, performance optimization

Backend

Ruby on Rails, REST APIs, GraphQL (familiar), PostgreSQL, MySQL, PHP

Testing & Tooling

React Testing Library, Cypress, Webpack, Vite, GitHub Actions, Git, ESLint

Professional Experience

Senior software developer October 2021 to present
Animikii Victoria, BC

Technical lead for a large learning management system built with React and Ruby on Rails.

  • Designed reusable React component architecture supporting maintainable UI development.
  • Defined frontend architecture patterns for component design and state management.
  • Implemented frontend components from Figma design systems.
  • Led modernization of legacy applications from Ruby on Rails 3 to Rails 7.
  • Mentored junior developers and collaborated with designers and product stakeholders.

Technologies: React, Redux, JavaScript, Ruby on Rails, PostgreSQL, Webpack, GitHub Actions

User Interface Developer October 2019 to October 2021
EducationPlannerBC Victoria, BC
  • Developed responsive interfaces using React, Redux, and TypeScript.
  • Integrated frontend applications with REST-based microservices.
  • Collaborated with designers and product teams to deliver user-focused features.
  • Contributed to backend services using C# and .NET.

Technologies: React, Redux, TypeScript, REST APIs, C#

Software developer (Frontend lead) April 2016 to October 2019
University Systems, University of Victoria Victoria, BC
  • Led frontend development for an internal grant application and management system.
  • Introduced automated frontend testing.
  • Developed maintainable UI architecture integrated with enterprise systems.

Technologies: JavaScript, Grails, HTML, CSS

Programmer October 2011 to April 2016
Student and Enrolment Services, University of Saskatchewan Saskatoon, SK
  • Redeveloped legacy PHP applications to improve maintainability and accessibility.
  • Developed internal web applications and forms used across departments.

Technologies: PHP, JavaScript, HTML, CSS, MySQL

Additional Earlier Experience

Education

Technical Writing Certificate (Honours)
Humber College Institute of Technology & Advanced Learning Toronto, ON
  • Technical writing fundamentals, including editing, project management, marketing and HTML
Bachelor of Science in Engineering (Chemical Engineering)
University of Saskatchewan Saskatoon, SK

Projects and Portfolio