Don Grout


Software Developer

Montreal, QC, Canada
403-660-5542
dongrout@yahoo.com
www.linkedin.com/in/dongrout
dgsoftware.itch.io

Technologies

  • C#/.NET
  • WPF
  • Unity
  • AutoCAD
  • AutoLISP
  • ObjectARX
  • Android
  • Java
  • OpenGL

Skills

  • Strong attention to detail
  • Critical thinking and problem-solving
  • Adaptable, flexible, and quick to learn
  • Effective team player and independent worker

Experience

Unity VR Developer

Developed VR simulation training software for teaching and assessing nursing clinical skills, building modular systems for realistic patient interactions and procedural workflows. Created simulations for IV insertion, suctioning, and auscultation, optimizing multiplayer performance and accessibility, and collaborating with medical experts to ensure clinical accuracy.

Built VR training simulations for operating large mining equipment with modular content systems, detailed performance tracking, and hidden "Easter egg" interactions to enhance engagement.

Unity Apps Developer

Designed 3D home modeling tools for assembling custom houses with modular rooms, intuitive wall editing, and drag-and-drop placement of doors and windows. Updated UI for streamlined furniture browsing and manufacturer catalog integration.

Unity Games Developer

Independently design and develop games for Android, VR, and WebGL platforms, combining classic recreations with original experiences focused on intuitive gameplay, creative mechanics, and immersive VR adaptations.

AutoCAD Software Developer

Led PROCAD 2D development, handling features, customization, licensing, and automated builds. Created 3D metadata tools, OpenGL viewers, and custom AutoCAD enhancements to streamline drafting workflows. Later provided CAD customization services, standardizing environments, automating model updates, and delivering user training and support.

The Most Amazing...

... software I create brings graphics to life through intuitive and immersive interaction.

Professional Roles

  • Microsoft Windows Developer

    • Developed applications using WPF and WinForms frameworks, ranging from quick utilities to full standalone programs, applying object-oriented programming principles.
    • Designed intuitive, user-friendly interfaces to ensure ease of use and clarity.
    • Built applications to extract, compare, and report on data from various formats, including spreadsheets and SQL databases, with outputs in graphs, tables, or Excel exports.
    • Implemented color-coded highlighting to make data comparisons clear and easy to interpret.
    • Created a file backup application that organized files into monthly folders and an archive browser to quickly locate which disc contained a specific file.
    • Built system maintenance utilities for tasks such as FTP file transfers, license usage monitoring, open file detection, hardware/software inventory tracking, and automated email reporting.
    • Developed a folder-based music player that plays all audio files from a selected directory.
    • Designed a simple video editing interface leveraging FFMPEG to streamline basic editing tasks.
    • Created a utility to rename digital photos based on the actual date and time they were taken instead of default sequential numbering.
    • Wrote an early mining simulator in C for DOS to optimize operations under capacity and power constraints.
  • Unity Apps & VR Developer

    Nursing Simulation Training Software

    • Developed over 100 VR simulation features for nursing education, focusing on medical procedures (e.g., IV insertion, auscultation, NG tube suctioning) and patient interactions across adult and pediatric scenarios.
    • Built modular Unity systems using the Model/View design pattern, applied to control panels, wrist menus, EHR interface, Hook UIs, and supply cart interactions.
    • Implemented dynamic VR UI components such as tooltips, wrist-mounted menus, floating labels, and checklist systems to guide users through clinical workflows.
    • Engineered complex medical equipment mechanics, including IV infusion pumps, blood culture sampling, NG tube attachment systems, and suction regulators with real-time physics behaviors.
    • Integrated hardware feedback and sensors to synchronize physical object manipulation (e.g., IV bags, blood pumps) with virtual interactions and animations.
    • Diagnosed and resolved critical VR multiplayer synchronization issues, cross-platform exceptions (Meta Quest VR and PC VR), and real-time state desynchronizations.
    • Collaborated closely with medical experts and instructional designers to align scenario designs with real-world nursing protocols and best practices.
  • Industrial Training Simulations

    • Developed a VR training simulation for electrical circuit breaker maintenance, requiring users to select proper PPE, perform hazard checks, coordinate with a switchman, and complete a full racking procedure.
    • Designed a progressive learning system with three training modes: fully guided, semi-guided, and open-world, where task sequence errors resulted in failure, reinforcing real-world safety protocols.
    • Integrated real-world physical equipment with VR via sensors, allowing users to see and control live equipment movement within the simulation.
    • Built a VR inspection experience for large mining equipment, enabling users to teleport around machinery, inspect components, identify hazards, and interact with moving parts like doors.
    • Enhanced user navigation with guided visual cues and an animated robot demonstrating inspection procedures.
    • Optimized performance for both Oculus Rift, Oculus Quest and Oculus Go VR hardware, tailoring controls and visuals for platform capabilities.
  • Home Design Visualization Software

    • Developed 3D home modeling software where individual rooms were created as modular, standalone components and assembled like a puzzle to form complete house layouts.
    • Built a wall generation system with intuitive drag-and-stretch controls, enabling users to place, modify, and resize walls in real time, with dynamic dimensions displayed.
    • Engineered smart corner handling to automatically align walls at varying angles and thicknesses, including support for sloped and curved wall designs.
    • Improved the placement and duplication of windows and doors with real-time snapping and dragging mechanics for a smoother user workflow.
    • Designed and implemented complex triangulation algorithms to handle wall surface faceting, curved geometry, and clean joins between internal and external wall layers.
    • Customized a generic 2D triangulation library for 3D use cases, including extending end lengths for seamless corners and adjusting wall thicknesses to prevent rendering conflicts.
  • AutoCAD Software Developer

    • Sole developer for PROCAD 2D, responsible for designing new features, maintaining legacy code, providing user support, and customizing solutions tailored to client needs through a secure keycode system.
    • Managed licensing with CrypKey and installation workflows with InstallShield; automated builds and distribution by integrating SourceSafe versioning, compilation, and installer creation.
    • Developed metadata-driven modeling tools to import and visualize SQL database components directly in AutoCAD, collaborating closely with the 3D piping software team.
    • Created a standalone and AutoCAD-integrated 3D viewer using OpenGL, enhancing visualization of complex model components.
    • Built a custom Open Drawing Dialog system to organize project files with visual previews, improving navigation across large drawing repositories.
    • Designed model templating tools to copy previous projects, reposition models, and automatically update labels and tags for rapid project setup.
    • Developed reporting tools capable of scanning hundreds of drawings and generating engineering reports from extracted data.
    • Automated plotting processes by dynamically determining pen settings, page layouts, and inserting/removing client-specific stamps based on project metadata; included batch plotting support.
    • Implemented an overnight processing system that cleaned models (purged unused layers, reset settings), generated updated Navisworks walkthroughs, and uploaded progress files to client FTP sites.
    • Created a suite of custom AutoLISP and native commands to automate repetitive drafting tasks, improving efficiency and ensuring compatibility with future AutoCAD versions.
    • Maintained a corporate block library with embedded placement rules to ensure all inserted elements complied with drafting standards for layer control and orientation.
  • Unity Games Developer

    • Develop and publish small games on https://dgsoftware.itch.io, focusing on both original creations and recreations of classic titles like Pong, Breakout, Asteroids, Space Invaders, Diamond Mine and Tetris.
    • Design a highly customizable, modern version of Othello, supporting 2-4 players (human or bots), adjustable board dimensions (8x8 to 16x16), randomized tile blockouts, and speed-based Dash Mode with timed turns.
    • Experiment with innovative design techniques, including vector-line and voxel-based versions of Asteroids and Space Invaders, featuring dynamic destruction effects.
    • Revive and modernize older games, such as Alien Invasion, a resurrection of a 1999 space shooter, and create new original titles like Tank vs Tank, a head-to-head tank battle game.
    • Develop educational games like Mathscape, a multiplayer dungeon escape game that challenges players' math skills in a collaborative environment.
    • Recreate mobile games such as Unblockable and Ballz, adapting mechanics for fresh gameplay experiences.
    • Adapt traditional game genres into VR experiences, including the Unity Tower Defense Template (playable from a full-map or first-person perspective) and a Shooting Gallery optimized for immersive 2D and VR play.
  • Android App Developer

    • Developed a variety of Android applications, ranging from utilities to entertainment tools.
    • Created an Aurora alarm clock app that alerts users when Aurora Borealis activity reaches high levels.
    • Built utilities including a mobile data auto-enabler when Wi-Fi is present, a quick mobile data toggle, and a beats-per-minute calculator activated by tapping the screen.
    • Designed a simple text file book reader with automatic bookmarking functionality.
    • Developed a multi-unit converter, including real-time currency exchange rates.
    • Converted a website into a mobile app with the DG Software app.
    • Created OpenGL-based games, using the same graphics codebase shared with Windows versions for cross-platform consistency.
    • Developed a music player that plays all tracks from a selected folder on the device.
    • Built PC-to-clipboard apps to quickly transfer data between a PC and an Android device.
    • Designed a recent apps widget displaying app icons sorted by most recent usage for faster access.
  • Website Developer

    • Designed and developed an internal company intranet using the Joomla CMS, customizing PHP code, CSS styles, and the MySQL database.
    • Automated content updates by linking the site to company Excel spreadsheets and AutoCAD drawings, allowing employees' daily workflows to seamlessly update website data.
    • Added features such as user-posted classified ads, interactive calendars, event and staff photo galleries, contests, and polls.
    • Built live contests like a real-time reverse wine draw, and integrated external data feeds, such as Olympic medal standings, directly into the site.
    • Regularly updated and customized the intranet based on user feedback and evolving company needs, providing ongoing maintenance and support.
    • Also created simple external websites for company and personal use, either from scratch or by adapting templates and supplied graphics.
    • Developed sites using HTML, CSS, and JavaScript, structured for easy manual updates by non-technical users with basic tools like Notepad.
  • Graphical Interface Developer

    • Modernized graphical user displays by converting legacy SCADA system screens to updated platforms.
    • Imported old screens into Catalyst's Myriad application, retagged dynamic elements, and exported them to AutoCAD for cleanup and final translation into the OASyS DNA system.
    • Developed tools to automate the process, including a screen-scanning utility that generated detailed reports and custom AutoCAD commands to streamline cleanup tasks.
    • Implemented batch processing workflows to accelerate large-scale screen conversions and reduce manual effort.

Employment History

UbiSim
Unity VR Developer

Dec 2020 to Apr 2025

Montreal, QC (remote)

ICOM Productions
Unity & Unreal VR Developer

May 2018 to Apr 2020

Calgary, AB

Picture This Today
Unity Developer

Apr 2017 to Aug 2019

Victoria, BC (remote)

Integrated Geomatics
AutoCAD Software Developer

Jan 2017 to Jun 2018

Calgary, AB

University of Calgary Ballroom Dance Club
Website Developer

Oct 2016 to May 2018

Calgary, AB

Accalia Accounting Ltd.
Microsoft Windows Developer

Jun 2016 to Aug 2016

Calgary, AB

Vista-Mustang JV Corporation
Website Developer

Nov 2015 to Feb 2018

Calgary, AB

Longhorn Geomatics Limited
AutoCAD Software Developer

Nov 2015

Calgary, AB

Vista-Mustang JV Corporation
AutoCAD Systems Management & Support, AutoCAD & Windows Software Developer, and Website Developer

Nov 2009 to Nov 2015

Calgary, AB

Wood Group Mustang / IMV Projects Inc.
AutoCAD Systems Management & Support, and AutoCAD Software Developer

Dec 2007 to May 2009

Calgary, AB

Upside Engineering
AutoCAD Systems Management & Support

Feb 2006 to Dec 2007

Calgary, AB

Cimarron Engineering
AutoCAD Systems Management & Support

Oct 2005 to Jan 2006

Calgary, AB

Catalyst Realtime
Graphical Interface Developer

Jan 2005 to Jul 2005

Calgary, AB

PROCAD Software
AutoCAD Software Developer, and AutoCAD Systems Management & Support

Jul 1999 to Mar 2008

Calgary, AB

Education History

YouTube
git-amend, Code Monkey & Jason Weimann

Ongoing

Online

Unity Certified Professional: Programmer
Unity Technologies

Oct 2020

Calgary, AB

Android Developer
Udacity

Dec 2016 to Feb 2017

Online

Web Design for Everybody (Basics of Web Development and Coding)
Coursera

Jul 2016 to Aug 2016

Online

Software Product Management
Coursera

Feb 2016 to May 2016

Online

Programming Mobile Applications for Android Handheld Systems
Coursera

Jul 2015 to Aug 2015

Online

Advanced ObjectARX
Autodesk University

Oct 2004

San Francisco, CA

Computer Science Courses
Athabasca University

Oct 1998 to Jun 2001

Calgary, AB

An Intro to Programming in C
Saskatchewan Institute of Applied Science & Technology

Oct 1992 to Dec 1992

Saskatoon, SK

Computer Aided Design & Manufacturing Engineering Technology
Saskatchewan Institute of Applied Science & Technology

Sept 1987 to May 1989

Saskatoon, SK

Languages

  • English (Fluent/Native)
  • French (Beginner)
  • Spanish (Beginner)