Introduction

Hello, my name is Rose Dufresne. Come along as you get to know me through this website!

I am a 25 year old woman, with a bachelor's degree in computer science and a minor in game design currently working at Ubisoft as a gameplay developer. Being a person that is always interested in learning new skills and determined at completing challenges to the best of my ability, I am always interested in pursuing any opportunity to expand my knowledge in the field of computer science and software engineering.

During my experience at Concordia University and my job at Ubisoft, I've learned to appreciate many aspects of computer science over the years. For example, I love to use mathematical and physics concepts to simulate real life behaviours in software applications, which is why I gained a great appreciation to numerical methods that help these concepts become feasible in a digital medium. Because of my love for mathematical concepts and art, I've also gained a particular interest in computer graphics and animation programming. In fact, so much so that I am always actively pushing myself to learn more about these subjects to be able to one day pursue a career closely related to them in the future.

Thanks to my game design minor and my experience as a gameplay developer, I also had the opportunity to combine the very technical aspects of programming with art! I have always been a very artistic person and I absolutely didn't want to let my talents go to waste, which is why I am very interested in creating games. It perfectly combines the mathematical and logical aspects of computer science with art, something that is very hard to find in professional fields.

One of my competences is my ability to learn new things very quickly. I never shy away from asking relevant questions when needed and I never let myself be intimidated by the tasks I need to complete. I push myself through them and always ultimately get things done quickly and on time.

Lastly, something you should know about me is that I am very passionate about helping others learn more about programming and the fantastic ways I've found how to combine technology and art. I strive to inspire new programmers to find a career path they will love and to help them when they need it. This is why I actively organize and participate in networking events such as game jams, hackathons and conferences where I host workshops, mentor and attend as a speaker. I do this completely voluntarily because I know how hard it is to take the steps to find a career you love and I want to share my own experiences with others to find the same success I have.

Education

Concordia University, Montreal, QC
(from 2016 to 2020)

GPA: 3.2

Computer Applications Major (BCompS)

Relevant courses I have taken:

  • Object-Oriented Programming I, II - COMP 248, COMP 249
  • Data Structures and Algorithms - COMP 352
  • Web Programming - SOEN 287
  • Introduction to Software Engineering - COMP 354
  • Introduction to Theoretical Computer Science - COMP 335
  • Computer Graphics - COMP 371
  • Databases - COMP 353
  • Advanced Program Design with C++ - COMP 345
  • Combinatorics - COMP 339
  • Elementary Numerical Methods - COMP 361
  • Animation for Computer Games - COMP 477
  • Artificial Intelligence - COMP 472

Game Design Minor

Relevant courses I have taken:

  • Introduction to Game Design - CART 215
  • 3D Digital Production - CART 361
  • Computation Arts I - CART 253
  • Introduction to Game Development - COMP 376
  • Game Studio I - CART 415

Employement

Gameplay Developer
Ubisoft Halifax
(from January 2021 to present)
Main programmer for integrating highly requested gameplay features for the mobile game Assassin’s Creed Rebellion and providing narrative tools for the design team in a new and upcoming project.
  • Fixed reported bugs effectively, in a fast-paced environment, giving users a more polished product.
  • Used many design patterns to maintain and improve the sustainability and readability of the code.
  • Interacted with a dynamic team that all have different and important roles in the pipeline involved into making a game, using Agile development methodology and good communication skills.
Teaching Assistant
Concordia University
(from September until December 2020)
Taught students elementary numerical methods (COMP 361).
  • Preparing exercise material for students to apply numerical methods algorithms.
  • Responsible for grading assignments and exams.
Software Engineering Internship
Matrox, Video Department
(from January 2020 until April 2020)
Developed and maintained Matrox’s cross-platform video software components using C++.
  • Gained experience working with video software, notably their Topology Builder application which facilitates the process of video streaming or broadcasting on multiple monitors.
  • Learned about H264 encoding and decoding and have added a feature to their codec that gives the ability to force IDR frames at any given moment in a video which restarts a new group of pictures (GOP).
  • Writing automation test scripts using Powershell to ensure good quality of their products.

Skills

Programming languages:
Java Logo

Java:

Experienced with java as I've been using it for many of my core classes at Concordia University, as well as using it for Matrox's TopologyBuilder UI which is an application which facilitates the process of video streaming or broadcasting on multiple monitors.

C++ Logo

C++:

Used C++ to create a recreation of the boardgame "PowerGrid" in my "Advanced Program Design with C++" class and to make a successful Ray-Tracing program for my "Computer Graphics" class. Both projects of which I am very proud of. Also used C++ during my Matrox internship. For example, I added a feature to their codec that gives the ability to force IDR frames at any given moment in a video which restarts a new group of pictures (GOP).

Python Logo

Python:

Used Python for Elementary Numerical Methods and have used it for 2 hackothon projects for ConUhacks IV and V. One of these projects being a lyric player for Octave Group's music player API and the other being a website to analyse different trends of music choices from TouchTunes jukeboxes across the country. Focused on movie releases, deaths and anniversaries of singers and bands. This second project we won!!!

Csharp Logo

C#:

Used C# for making games, as this is the backend programming language used in the Unity Engine.

JS Logo

Javascript:

Used it for my web programming class and for the creation of the "Zorkemon" group project (which can be found on my github page), as well as the ConUHacks API challenge sponsored by TouchTunes.

Prolog Logo

Prolog:

Used it the most for helping in the creation of the "Zorkemon" card parser

SQL Logo

MySQL/SQL

Game Design/Development:
Unity Logo

Unity:

Used Unity for many of the games I have made in the past couple of months. You can find such projects by clicking in the "Projects" option in the menu at the top of this page.

Unreal Logo

Unreal:

Used Unreal blueprints for the making of the game "Hot Coco". You can find such projects by clicking in the "Projects" option in the menu at the top of this page.

OpenGL Logo

OpenGL:

Used OpenGl to get first hand experience of Computer Graphics. Learned how to use callback functions using the GLM library, how to implement vector and fragment shaders that can be modified in the graphics pipeline of the GPU, how to use VAOs, VBOs and EBOs, how to compute realistic lighting such as Phong and Gouraud lighting methods, and finally, I learned how to compute shadows and textures.

Processing Logo

Processing:

Used this software for the making of my game "Chicken Rush"

Blender Logo

Blender:

3D modeling and animation software used for making my "Monster Bat" model, as well as the games "Treasure Diver 2", "Super Shopper: Closing Time Rush", "2020" and "Hot Coco".

Web Development:
HTML Logo

HTML, CSS, Javascript:

Fair amount of experience with these basic web development tools. For instance, I used them to make this website!

Tools:
Git Logo

Git

Powershell Logo

Powershell

Ubuntu Logo

Ubuntu

Bash Logo

Bash