Ignacio X. Domínguez

I teach, write beautiful software, and conduct academic research.
ignacioxd@ncsu.edu
Raleigh, NC, USA
https://go.ncsu.edu/ignacioxd

Summary

I am an Assistant Teaching Professor and Assistant Director of the Senior Design Center for the Department of Computer Science at North Carolina State University.

Languages Spoken

Spanish
Native tongue
English
Fluent
Italian
Basic

Education

Ph.D. in Computer Science
2018
North Carolina State University
Raleigh, NC, USA
M.S. in Computer Science – Track in Data Science
2015
North Carolina State University
Raleigh, NC, USA
B.S. in Informatics Engineering
2010
Universidad Católica Andrés Bello
Caracas, Venezuela

Professional History

Assistant Teaching Professor
August 2019 – Present
Assistant Director of the Senior Design Center
May 2020 – Present
Department of Computer Science @ North Carolina State University
Raleigh, NC, USA
Teaching Research Student Mentorship Software Engineering
Technology Specialist / Instructor / Technical Advisor / Software Developer / Teaching Assistant
August 2011 – July 2019
Senior Design Center, Department of Computer Science @ North Carolina State University
Raleigh, NC, USA
Project Management Student Mentorship GitHub Teaching C# PHP MySQL Gearman Linux JavaScript CSS REST API Slim Framework Apache HTTP Server
Researcher / Research Assistant
December 2012 – December 2018
CIIGAR Lab @ North Carolina State University
Raleigh, NC, USA
Statistical Data Analysis Data Science Machine Learning Experimental Design R SPSS LaTeX IRB Compliance Game Design PHP MySQL Eye Tracking ImpactJS JavaScript CSS Unity3D Slim Framework Apache HTTP Server Docker InfluxDB Python Gearman
Instructor for the UCAB CSC Summer Practicum 2014
July 2014
Department of Computer Science @ North Carolina State University
Raleigh, NC, USA
Teaching Course Design Microsoft Gadgeteer IoT Git GitHub Markdown
Instructor for the UCAB CSC Summer Practicum 2012
July 2012
Department of Computer Science @ North Carolina State University
Raleigh, NC, USA
Teaching Java Sun SPOTs IoT
Mobile App Engineer
Summer 2012
Virtual Computing Lab (VCL) @ North Carolina State University
Raleigh, NC, USA
iOS XMLRPC Objective-C Xcode PHP MySQL
Teaching Assistant for UCAB CSC Summer Practicum 2011
July 2011
Department of Computer Science @ North Carolina State University
Raleigh, NC, USA
Teaching Java Sun SPOTs IoT
Software Engineer / Intern Software Engineer / Work-Scholarship
October 2005 – January 2011
Dirección de Tecnología e Información @ Universidad Católica Andrés Bello
Caracas, Venezuela
MySQL Oracle Web Services Web Apps PHP C# JavaScript Socket Programming SOAP XML LMS CMS jQuery SQL PL/SQL C/C++ AJAX
Lab Instructor
October 2006 – February 2008
Universidad Católica Andrés Bello
Caracas, Venezuela
Teaching Visual C++ Pascal Algorithms Software Engineering Software Testing

Teaching

CSC 492: Senior Design Project
North Carolina State University
Fall 2014 – Spring 2016 & Fall 2019 – present
The Senior Design Project (CSC 492) is the required capstone course in Computer Science at NC State.
CSC 342: Applied Web-based Client-Server Computing
North Carolina State University
Fall 2022 – present
CSC 226: Discrete Mathematics for Computer Scientists
North Carolina State University
Fall 2019, Spring 2020, Fall 2021
CSC 281: Foundations of Interactive Game Design
North Carolina State University
Spring 2020, 2021, 2022
CSC 216: Software Development Fundamentals
North Carolina State University
Fall 2020
UCAB+NCSU CSC Summer Practicum
North Carolina State University
Summer 2012, Summer 2014

Student Supervision & Mentoring

Graduate Research and Independent Study

Maya Patel (co-mentored with Dr. Jason King)
Fall 2023
CSC 600: MS Independent Study
Pradeep Patil (co-mentored with Dr. Jason King)
Fall 2023
CSC 600: MS Independent Study
Colin Moore (co-mentored with Dr. Lina Battestilli)
Spring 2020
DELTA Grant: MS Independent Study

Undergraduate Honors Project

Jose Garcia
Fall 2022

Undergraduate Independent Study

Gianfranco Pintimalli
Spring 2024
CSC 299: Undergraduate research for first or second year students
Jacob DeCicco (co-mentored with Dr. Lina Battestilli)
Spring 2021
CSC 499: Undergraduate research for junior or higher students
Maanasa Thyagarajan (co-mentored with Dr. Lina Battestilli)
Fall 2019
CSC 499: Undergraduate research for junior or higher students

Other Undergraduate Mentoring

Gianfranco Pintimalli
Fall 2023
Ramón Sánchez
Fall 2022

Faculty Mentorship

Dr. Alexander Card
Fall 2022
Mentored as a Senior Design Technical Advisor

Professional Development

Professional Development in Teaching

Wolfpack Engineering Unleashed Incubator
Summer 2024
North Carolina State University
Raleigh, NC, USA
Quality Matters Rubric Update (Seventh Edition) Workshop
Summer 2023
Quality Matters
Raleigh, NC, USA
2022 Scholarship of Teaching and Learning Institute
2022-2023 Cohort
North Carolina State University
Raleigh, NC, USA
Applying the QM Rubric (Sixth Edition) Workshop
Fall 2022
Quality Matters
Raleigh, NC, USA
WolfSNAPS: Writing Effective Learning Objectives
Spring 2022
North Carolina State University
Raleigh, NC, USA
Back-to-Basics Part 3: Facilitating and Managing Engagement in Flexible Course Experiences
Spring 2022
North Carolina State University
Raleigh, NC, USA
Back-to-Basics Part 2: Assessing Learning in Flexible Course Experiences
Spring 2022
North Carolina State University
Raleigh, NC, USA
Back-to-Basics Part 1: Designing Flexible Course Experiences
Spring 2022
North Carolina State University
Raleigh, NC, USA
Humanizing Your Online Course through Trust, Presence, Awareness, and Empathy
Spring 2022
North Carolina State University
Raleigh, NC, USA
Creating and Editing Videos with Panopto
Spring 2022
North Carolina State University
Raleigh, NC, USA
Turn Students Project Groups into High-Performance Teams Workshop
Spring 2021
North Carolina State University
Raleigh, NC, USA
DiversityEdu: Personal Skills for a Diverse Campus
Fall 2020
North Carolina State University
Raleigh, NC, USA
Getting Your Course Online Quickly
Spring 2020
North Carolina State University
Raleigh, NC, USA
Teaching with Moodle
Spring 2020
North Carolina State University
Raleigh, NC, USA
Discrimination and Harassment Prevention and Response Training
Fall 2019
North Carolina State University
Raleigh, NC, USA
Preparing the Professoriate Fellowship
2014-2015 Cohort
North Carolina State University
Raleigh, NC, USA
Nationally recognized signature year-long program in NC State Graduate School's professional development initiative designed to provide an immersive mentoring, teaching, and future faculty preparation experience under the direction of a distinguished faculty mentor recognized for their teaching skills.
  • Participated in regular seminars.
  • Taught a section of the CSC Senior Design capstone course under the mentorship of Dr. Robert Fornaro and Ms. Margaret Heil.
  • Conducted a peer observation of teaching of a class in Chemical Engineering.
  • Developed a professional development project consisting of organizing and making course materials available online for students.
  • Developed a student team assessment activity consisting of individual team meetings to discuss and clarify instructor-provided feedback on project deliverables.
Certificate of Accomplishment in Teaching
Spring 2015
North Carolina State University
Raleigh, NC, USA
Complementary (yet standalone) program to Preparing the Professoriate focused on improving teaching skills via mentorship from faculty, teaching workshops, and teaching observations.
  • Completed two semesters of teaching under the mentorship of Dr. Robert Fornaro and Ms. Margaret Heil, and received explicit feedback on my performance.
  • Participated in regular teaching-focused workshop meetings and completed two reflection assignments on how these workshops enriched my teaching.
  • Developed a teaching portfolio.
  • Received feeback on my teaching performance and artifacts of teaching from both my faculty mentor and the program's instructors.
Leading With Care: Recognizing and Responding to Emotional Distress in Others (QPR Training)
Fall 2014
North Carolina State University
Raleigh, NC, USA
Introduction to Teaching
January 2014
North Carolina State University
Raleigh, NC, USA
Classroom Management Workshop 3: Managing Disruptive Student Behavior
October 2013
North Carolina State University
Raleigh, NC, USA
Classroom Management Workshop 2: Creating a Healthy Learning Environment
October 2013
North Carolina State University
Raleigh, NC, USA
Classroom Management Workshop 1: Establishing Credibility and Authority
October 2013
North Carolina State University
Raleigh, NC, USA
Student Engagement Workshop 3: Motivating Students
September 2013
North Carolina State University
Raleigh, NC, USA
Student Engagement Workshop 2: Active Learning
September 2013
North Carolina State University
Raleigh, NC, USA
Student Engagement Workshop 1: Learning Styles
September 2013
North Carolina State University
Raleigh, NC, USA
Survival Skills for Teaching Assistants
January 2011
North Carolina State University
Raleigh, NC, USA

Other Professional Development

Mobile Web Specialist Nanodegree
June 2018
Udacity
Online
Oracle Database 10g: Administration Workshop II
October 2008
Oracle University
Caracas, Venezuela
Oracle Database 10g: Administration Workshop I
October 2008
Oracle University
Caracas, Venezuela
Wireless Sensors with Java Technologies
2008
North Carolina State University
Raleigh, NC, USA
Web Component Development with Servlet and JSP Technologies (SL-314)
2008
Sun Microsystems
Caracas, Venezuela

Honors and Awards

Honors and Awards in Teaching

Carla Savage Awesome Teaching Professor
2023
Department of Computer Science, NC State University
Raleigh, NC, USA
2014 Outstanding Teaching Assistant
April 2014
Department of Computer Science, NC State University
Raleigh, NC, USA
2012 Outstanding Teaching Assistant
April 2013
Department of Computer Science, NC State University
Raleigh, NC, USA
University Outstanding Graduate Teaching Assistant Award
March 2013
University Graduate Student Association, NC State University
Raleigh, NC, USA
2011 Outstanding Teaching Assistant
April 2012
Department of Computer Science, NC State University
Raleigh, NC, USA

Other Honors and Awards

Best Paper Honorable Mention
March 2023
2023 Conference on Faculty Excellence
Raleigh, NC, USA
Grow with Google Scholarship Challenge
February 2018
Google + Udacity
Online
Best Paper Honorable Mention
May 2016
34th Annual ACM Conference on Human Factors in Computing Systems (CHI 2016)
San Jose, CA, USA
1st Place in the 9th Local ACM Programming Marathon
2007
Universidad Católica Andrés Bello
Caracas, Venezuela

Service

Service to the University

CSC Senior Design Center
2020 – Present
Assistant Director
Computer Science Professional Faculty RUL Task Force
Spring 2024 – Present
Member
Teaching Faculty Lunch Coordinator
Fall 2023 – Present
CSC Senior Design External Review Task Force
Fall 2023 – Spring 2024
CSC Senior Design Communications Advisor Search Committee
2023
Member
Course Coordinator for CSC 342
2022 – Present
Dean's Ad-Hoc CSC Leadership Review Committee
Fall 2022 – Spring 2023
Member
Teaching Professor Search Committee
Fall 2022 – Spring 2023
Member
ThriveDX+NCSU Software Development Bootcamp course curriculum and instructor vetting
Fall 2021 – Present
Teaching Professor Search Committee
Fall 2021 – Spring 2022
Member
Accreditation Assessment Committee for Spring 2020 CSC 492
Fall 2021
Member
Accreditation Assessment Committee for Spring 2020 CSC 226
Spring 2021
Member
Task Force on Promoting Diversity and Inclusivity Discussions and Community
Spring 2020 – Spring 2022
Member
Task Force on Staff and Faculty Training and Retention
Spring 2020
Member
Strategic Planning Committee of the Computer Science Department
2019 – Present
Member

Service to the Profession

Ungrading Perspectives: Experiences and Insights from NCSU Faculty
2024
Panelist
Council for Undergraduate Research (CUR) Award at SIGCSE '22
2022
Judge
ACM Technical Symposium on Computer Science Education (SIGCSE)
2022
Reviewer
Council for Undergraduate Research (CUR) Award at SIGCSE '21
2021
Judge
ACM Technical Symposium on Computer Science Education (SIGCSE)
2021
Reviewer
ACM SIGCHI Annual Symposium on Computer-Human Interaction in Play (CHI PLAY)
2017
Reviewer
Foundations of Interactive Game Design (CSC 281)
Spring 2017
Guest Lecturer
Foundation of Digital Games (FDG)
2015
Subreviewer
Behavior Research Methods
Journal Article, 2015
Subreviewer
Association for the Advancement of Artificial Intelligence (AAAI)
2015
Subreviewer
Workshop on Experimental AI In Games (EXAG) at AIIDE
2014
Panelist
Conference on Artificial Intelligence and Interactive Digital Entertainment (AIIDE)
2014
Subreviewer
International Conference on Interactive Digital Storytelling (ICIDS)
2014
Subreviewer
Association for the Advancement of Artificial Intelligence (AAAI)
Spring 2014
Subreviewer
Foundation of Digital Games (FDG)
2013
Subreviewer
Association for the Advancement of Artificial Intelligence (AAAI)
2013
Subreviewer
International Conference on Interactive Digital Storytelling (ICIDS)
2013
Subreviewer

Service to the Community

Immersion for Spanish Language Acquisition (ISLA)
Fall 2023
ISLA provides Spanish language programs and cultural immersion opportunities in the Triangle area. During Fall 2023, ISLA hosted a STEM fair targeting Hispanic K-12 students in the area. In preparation for this event, I volunteered to translate technical materials into Spanish. For the event, I created a poster in Spanish to represent NC State Computer Science and provide a robot block-based programming activity using Sphero robots and SAS CodeSnaps.
NC Collaborative for Children, Youth and Families
Summer 2023
The North Carolina State Collaborative for Children, Youth, and Families is a non-profit organization that brings together multiple state entities to create a "comprehensive network of community-based services and supports organized to meet the needs of families who are involved with multiple child service agencies, such as child welfare, mental health, schools, juvenile justice and health care". As part of this mission, they provide training to support personnel through a series of online courses. During summer 2023, I volunteered for the NC Collaborative to migrate all online courses from their legacy North Carolina Collaborative Training Institute by setting up a new portal for them running the latest version of Moodle. This gave them control and ownership over the content in order to maintain the courses and keep the material current. As part of this effort, I provided basic training to NC Collaborative management on the administrative use of Moodle.

Publications

Other Notable Projects

Teaching and Classroom Support

CSC 342 Class Portal
The CSC 342 Class Portal helps automate provisioning of GitHub repositories and virtual machines for individual students and student teams. For students, it gives them the ability to join the class Discord server with automatic role assignment, and provides personalized instructions and tailored commands that students can directly execute on their assigned virtual machines. The administrative interface allows the teaching staff to manage rosters, teams, and team assignments, facilitating efficiently helping students by easily opening repositories and hosts for specific students.
Docker Shibboleth JavaScript React MaterialUI Node.js Discord API REST API MySQL CSS
Apache+Shibboleth SP Docker Image
Two Apache (httpd) 2.4 Docker images configured to serve as NCSU Shibboleth SPs. apacheshib: This image provides an Apache 2.4 server configured as an NCSU Shibboleth SP. You will want to use this image to protect content that you serve directly with this server. apacheshib-proxy: This image extends apacheshib to act as a reverse proxy for other Docker containers. These images are available to all NC State users via a private Docker registry hosted by CSC IT. It is used extensively by Senior Design students who are working on projects with campus stakeholders.
Docker Apache Shibboleth Reverse Proxy
Moodle Download Labeler
Python tool to process Moodle quiz submissions by adding the student's name and Unity ID to the top right corner of every submission. It accepts submissions as PDFs, images (GIF, JPEG, PNG), or plain text. This is useful, for example, when uploading Moodle submissions to be graded in Gradescope.
Python Pillow PyPDF
Game Design Document Tool
Web application developed to support the redesign of CSC 281 under a DELTA grant. The tool provides dynamic features for students to generate one or more game design documents. Documents can be shared with others with support for real-time collaboration.
JavaScript React MaterialUI Node.js Web Sockets REST API MySQL CSS
Senior Design Center App & Website
Development and support of website and Web app for the SDC at NC State allowing students to submit and view assignment documents, peer evaluations, hourly effort logs, and submit IT resource requests. For the teaching staff and administrators, this app provides automated provisionign of Git repositories and tiered permissions of student teams on GitHub Enterprise, optimized workflow of feedback coordination and delivery across multiple instructors, background generation of submission bundles for archival, and general management of semesters, sections, student teams, instructors, and project sponsors.
Docker JavaScript JSON AngularJS React Web App REST API Node.js PHP Slim Framework MySQL Gearman Automation CSS Cron Jobs
P&P Slideshow Viewer
Allows presentation of multiple PowerPoint files as a single presentation without actually concatenating the files. The order is defined in a JSON configuration file. All animations, transitions and properties of the original files are preserved. The app can start the presentation at any point in the sequence.
C# .NET JSON MS Office API
GitHub Provisioning Automation
Command-line application that allows automation of GitHub tasks, such as repository creation, team and permission assignments, and member access control within a GitHub organization.
PHP JSON REST API GitHub API Git GitHub Enterprise

Games

The Mimesis Effect RPG
Web-based JavaScript role-playing game built for research. The Crown of Power is missing, and the player must help recover it so that the throne's heir can be crowned king.
JavaScript JSON ImpactJS Web App PHP Data Collection
Ragin' Mages
Open source multiplayer MOBA (massively online battle arena) game written in JavaScript (ES6+) with the Phaser game engine. Supports offline gameplay in single-player mode. The server is written in Node.js, and Socket.io is used in multiplayer mode.
JavaScript Game Phaser ES6+ Web App Node.js WebSockets (Socket.io) Gulp Babel

Data Collection and Analysis

Confusion Matrix Online Calculator
Web application to evaluate the performance of classification models via computation of accuracy, precision, recall and F1 scores for user-provided actual and classified count data across an arbitrary number of classes (2 ≤ n ≤ 20).
JavaScript React Sass CSS Grid Jest Webpack
JavaScript Interface for Visualization of User Interaction (JIVUI)
Open source, modular, Web-based, and customizable user data visualization tool that shows an animation of the trace of a user interaction with a graphical interface, or of predictions made by cognitive models of user interaction. Any combination of gaze, mouse, and keyboard data can be reproduced within a user-provided interface.
JavaScript CSS JSON jQuery jQuery UI Web App
pupil-remote-php
A simple, open source, PHP remote control client for the Pupil eye tracker software.
PHP Eye Tracking ZeroMQ Automation
WolfScout
Web app that automates integration of wildlife GPS collars, weather stations, drought conditions, and severe weather reports, and animal demographic information. WolfScout stores a variety of classified landscape maps including natural and manmade features. Additionally, WolfScout's spatial database management system allows users to calculate distances between animals' location and landscape characteristics, which are linked to the best approximation of environmental conditions at the animal's location during the interaction. Through a secure website, data are exported in formats compatible with multiple software programs including R and ArcGIS.
PHP Python ArcGIS JavaScript CSS ESRI Shapefiles GPS PostgreSQL Django

Web Apps

CIIGAR Website
Full-stack development of the website for the CIIGAR Lab at NCSU, including AngularJS app for dynamic loading of publications for the whole lab and automatic filtering for individual lab members' pages.
JavaScript PHP AngularJS Bootstrap 3 Slim Framework JSON CSS
Strategic Motion Video
Adaptive and personalized online training system using dynamic video content to support real-time answers to learner-initiated questions and a natural interaction between a learner and the virtual instructor.
JavaScript JSON AngularJS Web App PHP Slim Framework HTML Video D3.js Natural Language Processing MySQL
BioGestión
Single Page Platform consisting of multiple embedded applications for workflow automation of tasks across all administrative units of Universidad Católica Andrés Bello.
JavaScript AJAX XML CSS PHP MySQL HTML
Avessoc
Healthcare subsidy management and reporting system for the approval of medical exams and procedures for underprivileged patients. Includes management of the cash flow of multiple sources of funding for the subsidies.
JavaScript AJAX CSS PHP MySQL HTML

Desktop Apps

UCAB Lab
Computer lab management system supporting multiple labs, remote locking/unlocking of workstations from a centralized computer per lab, multiple lab operators with sign in/out tracking, automated printing queue tracking and billing per workstation session and with different cost structures per printer type, time and frequency limits and exceptions, and usage reporting for management.
C# .NET Socket Programming C/C++ Windows API
UCABNotifier
Individualized desktop notifications for Universidad Católica Andrés Bello's email and LMS activity.
PHP C# MySQL XML .NET Windows API