- C#/.NET
- WPF
- Unity
- AutoCAD
- AutoLISP
- ObjectARX
- Android
- Java
- OpenGL
Don Grout
Software Developer
403-660-5542
dongrout@yahoo.com
www.linkedin.com/in/dongrout
dgsoftware.itch.io
Technologies
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...
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)