Dylan Weicker

Hello There !

My name is Dylan Weicker.

I'm an ambitious and optimistic year old software developer based in Vancouver, BC. I am passionate about education, entertainment, and social equality.

My fields of interest are web development, game development, UI design, and artificial intelligence.

Personal Projects


My obsession with programming has driven me to independently develop each of these projects from scratch in my spare time.

Web Development

Management Consultant Site

My father owns a well-established management consultant firm. As a Father's Day gift, I created a website to communicate his company's features and services to potential clients.

Pathfinder Campaign Site

I run a Pathfinder tabletop role play campaign. I developed a website to allow my players to easily lookup information regarding the fantasy game world I generated.

Fantasy Clue Game

Using HTML5's canvas element, I recreated Hasbro's classic boardgame Clue. The game includes 2 AI opponents who navigate the board and gain knowledge as the game progresses.

My Wishlist

To avoid having to manually update all my friends and family about the gifts I would enjoy receiving for Christmas or my birthday, I have compiled a JavaScript wishlist to put this data in one place.

Pathfinder Character Generator

Creating a character can be one of the most arduous tasks for new players to Pathfinder. To reduce the strain on prospective players, I created this web app to streamline the process.

Tower Building Game

Inspired by Santorini, I developed a simple strategy game using HTML5's canvas element and JavaScript. In this game, players build towers and compete to be the first to climb to the top of one.

Work Experience


Web App Developer

Mazdis Innovations
May 2016 - Aug 2017

Responsibilities

  • Independently created a complete suite of unit tests for an angular app using Karma and Jasmine.
  • Implemented new features and angular components to an existing web app using Typescript, HTML, and CSS.
  • Lead meetings in which we whiteboarded UI designs and then implemented those designs using HTML and CSS.
  • Debugged, refactored, and improved existing angular services which accessed Google's Firebase through an api.
  • Set my own goals & priorities as I worked in a small team of two software developers without technical managers.
  • Lead job interviews and reviewed resumes to assess candidates' level of skills and abilities.
  • Trained and on-boarded new employees to get them up to speed with the project.

Skills Gained


Angular

HTML

CSS

TypeScript

Karma

Jasmine

Software Engineer in Test

Vision Critical
Sept 2015 - Aug 2016

Responsibilities

  • Established a mutual understanding of project requirements amongst the team by leading meetings in which expectations of the finished project were explicitly outlined.
  • Prevented code regressions by following a test-driven development process.
  • Mainatined over 90% code coverage by implementing end-to end, integration, and unit tests
  • Ensured the proper functionality of company's single sign-on login, global user storage, and authentication systems.
  • Analyzed user interfaces to ensure they were reactive, consistent across browsers, accessible, and intuitive.
  • Protected our REST APIs by testing them for unexpected use-cases, SQL injection, and backwards compatability.
  • Developed visual tools in Windows Forms that allowed testers and developers to make efficient calls to our REST APIs.
  • Performed code reviews and suggested corrections to pull requests made to our GitHub repository.
  • Communicated project progress to managers by creating detailed spreadsheets and performing demos

Skills Gained


C#

Visual Studio

Specflow

Selenium

PowerShell

SQL

Education


University of British Columbia

Bachelor of Science
Computer Science Major
Sept 2013 - May 2018

Courses

Software Development

CPSC 110

A

Introduction to Software Design

functional programming and good coding practices

CPSC 210

A+

Novice Software Construction

object oriented programming, design patterns, exceptions, data structures, refactoring, debugging, and testing

CPSC 310

A

Intermediate Software Engineering

specifying, designing and implementing multi-module software systems, asynchronous programming, and UI

CPSC 312

A-

Functional and Logic Progamming

Prolog, Haskell, principles of symbolic computing, applications to artificial intelligence

CPSC 221

B+

Basic Algorithms and Data Structures

design and analysis of algorithms and data structures, searching & sorting algorithms, graphs, concurrency

CPSC 320

A-

Intermediate Algorithms

design and analysis of algorithms, models of computation, choice of data structures, graph theory

Artificial Intelligence

CPSC 322

A

Introduction to Artificial Intelligence

problem-solving, planning, state/action models, graph searching, natural language

COGS 200

Introduction to Cognitive Systems

A-

cognitive psychology, linguistics, cognitive neuroscience, philosophy, artificial intelligence

Computer Infrastructure

CPSC 121

Models of Computation

A

binary, boolean algebra, logic circuits, proofs, sets & relations, finite state machines

CPSC 213

Introduction to Computer Systems

B

software achitecture, operating systems, I/O architectures, hardware, assembly code, multi-threading & asynchronous programming

CPSC 313

Computer Hardware and OS

B+

instruction sets, pipelining, code optimization, caching, disk storage, virtual memory, execution time of programs, operating systems

CPSC 317

Internet Computing

B+

computer networking, basic communication protocols, network infrastructure & routing, distributed applications

Communications

ENGL 111

Non-Fictional Prose

A-

reading and analyzing non-fictional writing, including essays, reports, articles and memoirs

ENGL 112

Univeristy Writing

A-

study and practice of research based writing, including summaries, comparative essays, persuasive essays, and research papers

CRWR 200

Introduction to Creative Writing

A-

practice in multiple genres of writing, including fiction, nonfiction, poetry, lyrics, screenplay, and stageplay

CRWR 213

Writing for New Media

A+

practice in writing for new media, including podcasts, blogs, websites, games, and online environments

Life & Physical Sciences

BIOL 111

Introduction to Modern Biology

A-

scientific method, genetics, evolution, population growth, ecosystems, infectious diseases, cells, cancer

CHEM 121

Structure and Bonding in Chemistry

B

fundamentals of bonding theorieis and structural chemistry

PHYS 101

Energy and Waves

A+

fluids, harmonic oscillator, travelling waves, standing waves, sound, and interference of light waves

PHYS 102

Electricity, Light and Radiation

A-

optics, electricity & magnetism, electric circuits, radioactivity

Math & Statistics

MATH 100

Differential Calculus

B-

derivatives of elementary functions, applications and modeling: graphing, optimization

MATH 105

Integral Calculus

B

antiderivatives, infitite series, partial derivatives, maxima & minima, discrete and continuous random variables

MATH 200

Calculus

B

analytic geometry in multiple dimentions, partial and directional derivatives, chain rule, maxima & minima

MATH 221

Matrix Algebra

B+

systems of linear equations, operations on matrices, determinants, diagonalization of symmetric matrices

STAT 200

Matrix Algebra

A-

inferences about means, variances, and alysis of variance using computers, problem formulation, interpretation

STAT 302

Introduction to Probability

A-

basic notions of probability, random variables, expectation and conditional expectation, limit theorems

Values


Education

"Give a man [an eggplant] and he'll eat for a day, teach a man to [tend an eggplant garden] and he'll eat for the rest of the life."

In my opinion, education is the most important asset to humanity. It builds a person's knowledge of the world and empowers them to perform incredible tasks such as sharing insightful new philosophies or creating innovative technologies.

"To teach is to learn twice." That is why I love educating others. I like to create and post multimedia content online to share my knowledge with others. I discuss allyship with my peers to teach them how they can help people and animals who face oppression. And I am always willing to tutor others in fields where I excell, such as math and science.

I hope to use my skills as a software developer to work on a project which helps to educate others.

Entertainment

The best way to engage a person is to entertain them. People are more willing to listen to what you have to say and learn from you if they're having fun along the way.

There are many forms of entertainment that I appreciate. Theatre means a lot to me. I spent years volunteering my time as an actor and starred in three amatuer plays, including Shakespeare's Macbeth. I am obsessed with pop culture. Don't even get me started talking about pop music or the latest Netflix show, I'll never stop. And there's nothing I appreciate more than a dank meme. But the most rudimentary form of entertainment has to be games.

Game development has always been a huge passion of mine. It's what drove me to get started in computer science when I was 12; I wanted to make computer games.

It is my ambition to work as a professional game developer so that I can entertain a large audience.

Equality

In a world full of systemic unjustices against marginalized groups, such as the gender wage gap (Canadian women on average earn a significant 13% less than their male counterparts), it's important that we come together to support one another. I believe that as a united society fighting against oppression, we will be less likely to face oppression ourselves. The more love we put out into the world, the more love we can expect the world to show to us.

I promote equality.

I want to work on a project which will provide me with a platform to promote equality.

Interests


Web Development

I am passionate about web development.

Web development is important.

I can do web development.

User Interface Design

I am passionate about UI Design.

UI Design is important.

I can do UI Design.

Game Development

I am passionate about game development.

Game development is important.

I can do game development.

Artificial Intelligence

I am passionate about AI.

AI is important.

I can do AI.