Veronica Reingold

Veronica Reingold

"Nonika"

CV Transcript

Skills and Assets
Unity C# Java Python C

Projects

2D Dungeon Crawler

Game Developed in Unity

H&M Virtual Closet

Google Chrome extension developed for the ADA Mentorship Program
H&M Virtual Closet

Artificial Intelligence for Games Projects

Unity projects implementing a multitude of AI concepts in a fourth-year computer science course

Experience

Teaching Assistant

University of Windsor
January 2023 to April 2024

University of Windsor

Teaching Assistant

Tecumseh Vista Academy
January 2015 to June 2017

Event Organizer

Heron Terrace Retirement Home
December 2014 to August 2015

Education

University of Windsor

92.07% Cumulative Average
September 2019 to June 2024
University of Windsor

Honours Bachelor of Computer Science

Game Development Specialization
University of Windsor
Graduated with Great Distinction June 2024
94.8% Major Average

Minor in Mathematics

University of Windsor
88.33% Average

Minor in Communication, Media and Film

University of Windsor
86.17% Average

Activities

Artist


Powerlifting


Awards

University of Windsor

Award Year
Gold LEAD Medallion Scholar 2024
Alumni Association Academic Achievement Award OPUS 2024
University of Windsor In-Course Scholarships 2024
Danial Family Scholarship for Women in Computer Science 2023
AlphaKOR-IT Excellence Award 2020
University of Windsor Entrance Scholarship 2019

wits+ ADA Mentorship Program


Award Year
ADA's Most Creative Project Award 2022
Jam3's Sponsor Award 2022

Courses

Computer Science

COMP-4990 Project Management: Techniques and Tools

84%

This course requires students to complete an application development project in some area of Computer Science under the supervision of a faculty member. The course will typically involve the development of some software or the design and/or implementation of some algorithm. Students will be required to submit project reports and give presentations on the technical components of the project.

COMP-4770 Artificial Intelligence for Games

100%

This course provides students with an opportunity to explore theoretical and practical aspects of Artificial Intelligence for computer games. Topics may include agents, sensory systems, steering behaviours, pathfinding, decision making, planning, goal-oriented behaviour, multi-agents (groups, crowds) and learning.

COMP-4540 Design and Analysis of Computer Algorithms

84%

The intent of this course is to introduce the fundamental techniques in the design and analysis of computer algorithms. Topics include: asymptotic bounds, advanced data structures, searching, sorting, order statistics, oracle arguments, divide-and-conquer, greedy algorithms, dynamic programming, graph algorithms, NP completeness, and approximation algorithms.

COMP-4400 Principles of Programming Languages

98%

Basic concepts of programming languages. Comparative study of the major programming paradigms, including imperative, object-oriented, functional, logic, and concurrent programming. Principles of programming language design and evaluation. Syntax, semantics and implementation techniques of programming languages.

COMP-3770 Game Design, Development and Tools

93%

This course introduces professional game design and development tools. Students will become proficient in the use of a commercial grade game engine (e.g., Unity3D) and associated scripting/programming languages (e.g., C#) through programming intensive hands-on assignments. Topics may include game design and development concepts such as game objects and game components, game physics and collision handling, basic artificial intelligence, 2D and 3D graphics, textures and shaders, sprite animation, 3D animation, and audio.

COMP-3710 Artificial Intelligence Concepts

93%

This course covers fundamental concepts in Artificial Intelligence. Topics include informed and uninformed search, problem solving using propositional and first-order logics, knowledge representation and reasoning, plausible and uncertain reasoning, machine learning, ethical implications. An overview of some applied Artificial Intelligence such as natural language processing, planning and agent systems will be included.

COMP-3670 Computer Networks

93%

This course is an introduction to computer networks and their protocols. Topics include: network architectures, transport, routing, and data link protocols, addressing, local area networks, flow and congestion control, and network security. Examples will be drawn primarily from the Internet (e.g. TCP, UDP, IP) protocol suite.

COMP-3540 Theory of Computation

99%

Finite Automata, regular expressions and languages; properties of regular languages; context-free grammars and languages; pushdown automata; properties of context-free languages. Introduction to Turing machines; recursive functions; undecidability.

COMP-3500 Introduction to Multimedia Systems

97%

This course provides the student with basic concepts and techniques used in multimedia systems. Topics include: components of multimedia systems (text, audio, and video), media formats and standards, data compression techniques, hypermedia techniques, and authoring tools.

COMP-3300 Operating Systems Fundamentals

99%

Operating system services, introduction to primary components of multi-programming operating systems, CPU scheduling, concurrent processes, process synchronization and interprocess communication, deadlocks, memory management, file systems, virtual memory, disk scheduling.

COMP-3220 Object-Oriented Software Analysis and Design

94%

This course builds on the knowledge of object-oriented programming, data structures, systems programming. Students are introduced to object-oriented software analysis and design concepts (such as cohesion and coupling), and design practices currently used in industry, (such as design patterns and refactoring). These concepts and practices will be discussed through case studies and programming exercises.

COMP-3150 Database Management Systems

92%

This course will acquaint students with the Basic concepts of Database Systems. The topics covered will include 3-level architecture, introduction to file structures: B-trees, B+ Trees and Hashed files, relational model, relational algebra and calculus, SQL, and database design with Normalization Theory.

COMP-3110 Introduction to Software Engineering

99%

This course introduces the fundamental concepts, common principles, and general techniques of software engineering. It discusses the main issues involved in the development life-cycle of nontrivial software systems, including process models, feasibility studies, requirements elicitation and definition, rapid prototyping, design methodologies, verification and validation, and software evolution. Students taking this course are required to work on projects, which are designed to go through the major phases of large-scale software system development.

COMP-2660 Computer Architecture II: Microprocessor Programming

99%

This course uses microprocessor programming to explore the structure of a CPU and related components. Topics include data representation, central processing unit, arithmetic logic unit, control unit, assembly language concepts, memory segmentation, programming a typical microprocessor (e.g. Intel processors), instruction set architecture-addressing modes and formats, register set, runtime stack, floating point processor.

COMP-2650 Computer Architecture I: Digital Design

100%

This course covers fundamental concepts of digital design and CPU architecture. Topics covered include number systems, switching algebra, logic gates, circuit minimization combinational circuit, read-only memory, random-access memory, programmable logic, synchronous and asynchronous sequential circuits, latches, flip-flops, registers, counters, register transfer language. and CPU architecture overview.

COMP-2560 Systems Programming

99%

This course introduces students to advanced software development techniques in system programming using the C language in the UNIX environment. Topics include introduction to modern operating systems, system calls, managing processes, the use of fork and exec, signals, file processing, filters, pipes, scripting languages, introduction to concurrency (e.g. synchronization), network programming (e.g. using sockets), client-server problems.

COMP-2540 Data Structures and Algorithms

99%

An introduction to the programming and analysis of linear and non-linear internal (main store) data structures and associated algorithms. Topics include the formal notion of an algorithm, elementary time and space complexity; linear lists (such as stacks, queues, linked structures.); non-linear lists (trees, binary trees); recursion; sorting techniques (such as heap sort, quick sort, merge sort, shell sort.); searching techniques (such as binary search, binary search trees, red-black trees, hashing.); algorithm design paradigms (such as divide-and-conquer, dynamic programming, greedy algorithms); and applications.

COMP-2310 Theoretical Foundations of Computer Science

95%

An introduction to Mathematical Logic, Set Theory, and Graph Theory. Topics include propositional logic, first order logic, proof techniques, mathematical induction, sets, operations on sets, relations, operations on relations, functions, countable and uncountable sets, graph-theoretic concepts, such as graph connectivity, graph isomorphism, trees, Euler graphs.

COMP-2140 Computer Languages, Grammars, and Translators

100%

Pragmatic and theoretical aspects of grammars, recognizers, and translators for computer languages will be discussed. The topics covered will include regular languages and context-free languages, including parsers and parser generators for such languages. Attribute grammars, syntax-directed translation, interpreters and compilers will also be discussed.

COMP-2120 Object-Oriented Programming Using Java

100%

Concepts of classes and objects, Java applications, frames, event handling, control structures, methods, arrays, string manipulations, object-based programming, object-oriented programming - inheritance, polymorphism, interface and abstract classes, anonymous classes, data structures in Java, exception handling, introduction to graphical user interface.

COMP-2057 Introduction to the Internet

99%

Students will be introduced to the Internet as a global information infrastructure, including fundamental concepts in protocols and services, packaging of data, and data transmission. Common tools and multimedia such as HTML, CSS, and CMS, used for the development of websites will also be introduced. Web page design, quality, accessibility and security issues will be discussed. How Web browsers and search engines work will be demonstrated. Social networks and other current Internet applications will be examined.

COMP-1410 Introduction to Algorithms and Programming II

95%

This course is the continuation of COMP-1400 that introduces students to more advanced algorithm design and programming in a high level language such as C. The main objectives of the course are to develop the ability to identify, understand, and design solutions to a wide variety of problems. Topics covered include: multi-dimensional arrays, pointers, strings, advanced modular programming, records, binary files, recursion, stacks, linked lists and introduction to algorithm analysis.

COMP-1400 Introduction to Algorithms and Programming I

100%

This course is the first of a two-course sequence designed to introduce students to algorithm design and programming in a high-level language such as C. The main objectives of the course are to develop the ability to identify, understand and design solutions to a wide variety of problems. Topics include: computer system overview, hardware and software, problem solving steps, concepts of variables, constants, data types, algorithmic structure, sequential logic, decisions, loops, modular programming, one-dimensional arrays, text files. If possible, problems like searching/sorting will be addressed.

COMP-1047 Computer Concepts for End-Users

100%

Introduction to the concepts of operation of a computer system, including hardware and software. Development of conceptual understanding of word processors, databases, spreadsheets, etc., and practical experience with their use. Networking concepts and data communication concepts will be introduced. The Internet will be introduced with students having access to internet resources. Management information systems including the systems development lifecycle will be discussed. Fundamental concepts of algorithm development and programming will be introduced. Hands-on experience with microcomputers as well as a distributed-computing environment will be involved.

COMP-1000 Key Concepts in Computer Science

83%

The objectives of this course are to excite students' interest in computer science and to give students a precise understanding of a number of difficult concepts that are fundamental to modern computer science. Topics may include: induction and recursion; algebraic characterization; syntax; semantics; formal logic; soundness, completeness, and decidability; specification, algorithm, and determinism; complexity.

Mathematics

MATH-3940 Numerical Analysis for Computer Scientists

96%

This course is an introduction to the applications of numerical methods using computer-oriented algorithms such as finding roots, solving systems of equations, differentiation, integration and optimization.

MATH-1760 Functions and Differential Calculus

84%

This course will cover a review of functions, trigonometric functions and identities, transcendental functions, inverse trigonometric functions, introduction to limits, continuity, derivatives and applications, mean value theorem, indeterminate forms and l'Hôpital's rule, antiderivatives and an introduction to definite integrals.

MATH-1730 Integral Calculus

90%

This course will cover antiderivatives, the definite integral and the fundamental theorem of calculus, techniques of integration, applications, improper integrals, sequences and series, convergence tests, power series, Taylor and Maclaurin series, and polar and parametric coordinates.

MATH-1260 Vectors and Linear Algebra

74%

This course will cover vectors, three-dimensional geometry, linear systems, matrix algebra, determinants, n-dimensional vectors, dot product, cross product, orthogonalization, eigenvalues, eigenvectors, diagonalization and vector spaces.

MATH-1020 Mathematical Foundations

97%

This course will cover mathematical logic, proof methods and development of proof techniques, mathematical induction, sets, equivalence relations, partial ordering relations and functions.

Statistics

STAT-2910 Statistics for the Sciences

89%

This course will cover descriptive statistics, probability, discrete and continuous distributions, point and interval estimation, hypothesis testing, goodness-of-fit and contingency tables.

Communication, Media and Film

CMAF-2700 Speaking Truth to Power: Voice and Activism

88%

An examination of contemporary campaigns to improve the standard of living of Canadians. Students learn to conduct interviews and evaluate the effectiveness of social justice messages.

CMAF-2410 Cinema History II (Post-War)

89%

The course examines films from the post-War period to the present: the heyday of the classical Hollywood narrative and challenges to its dominance from European neo-realism and the avant-garde film movement are considered. Films are viewed as influenced by and reflective of social upheaval of the sixties, as well as their consolidation within distinct but mutually influencing categories of mainstream and alternative cinema. An important consideration is how films can either paper over or expose social fractures along the lines of gender, race, sexuality, and nationalism.

CMAF-2400 Cinema History I (Pre-War)

86%

The course charts the early history of the cinema from its inception to World War II: film shorts at the turn of the century, the silent film era, the introduction of sound, and the decline of the studio system. Films are examined as technical, industrial, commercial, artistic, and, most importantly, as historical artifacts. Industry, audience, and the development of cinematic language are viewed within an international framework and their local cultural context.

CMAF-2010 New Media Studies

90%

This course introduces students to theories and approaches to new media, explores the historical emergence of digital media forms, and examines their social, cultural, political and economic implications. Students will examine the social impact of new media from different perspectives, such as labour, politics, information, and the creative and entertainment industries. Topics may include: "old" and "new" media, algorithmic media, machine learning and artificial intelligence, augmented/virtual reality, digital platforms, social media networks, and influencer culture.

CMAF-1010 Introduction to Media and Society

72%

An overview of major themes, concepts and issues that inform the field of Canadian communication studies. Topics may include: the political, economic, historical, and cultural contexts of communication; new media; policy issues and concerns; representation; the role of media in the social construction of reality and the broad interaction between media and society.

FILM-1100 Film Production I

92%

A study of the art and craft of film production through lectures and hands-on exercises. A survey of the stages of production, key artistic roles, and concepts of visualization and cinematic storytelling.

English

ENGL-1005 Topics in Literature - Our Monsters, Ourselves

87%

An introduction to literary texts selected by subject, genre, or relation to another field of study.

Physics

PHYS-1000 Introduction to Astronomy I

74%

The solar system with emphasis on the results of recent space exploration. This is a descriptive course suitable for the non-scientist.

Jewish Studies

JWST-2200 Jewish Mysticism

89%

The purpose of this course is to understand Jewish spirituality and mystical experience through various mystical traditions including Spanish Kabbalah, Lurianic Kabbalah, the Sabbatean heresy and Polish Hasidism.