Senior Software Engineer

CodeCombat

Apr 2020 - Present

Lead contributor at codecombat.com and ozaria.com. A client-side heavy educational game with custom HTML5 game engine, compiler, web workers and content editing tools.

  • Drove initiatives to improve engineering velocity and reduce bugs in the codebase including: replacing CoffeeScript with JavaScript, refactoring Backbone.js to Vue.js, unblocking unit testing, and migrating state management into Vuex.
  • Implemented the new Teacher Dashboard, building custom reusable components and endpoints. Led optimizations to improve dashboard responsiveness from seconds to milliseconds.
  • Drove technical interviews and hired two senior software engineers.

Software Engineer

CodeCombat

Jul 2018 - Apr 2020

  • Led team of three engineers to integrate C++ into the JavaScript game engine. This supported a business expansion into the computer science curriculum in China.
  • Identified and led Node.js upgrade from version 6 to 8 across our infrastructure, improving team velocity and server response time by 20%.
  • Designed and implemented an animated dialogue system with content creation tooling. Higher quality art in this system required additional optimizations to support less powerful hardware found in classrooms.
  • Built and improved importing animations from Adobe Animate into our WebGL renderer.
  • Led and implemented the character customization system, allowing the user to customize their in-game and in-cinematic skin and hair color.

Software Engineer

Melbourne University

Dec 2017 - Jan 2018

Implemented a meta-heuristic solver for scheduling university classes based on preference constraints. Written in Rust, using "human in the loop" and simulated annealing techniques.

Teaching Associate

Monash University

Jul 2017 - Dec 2017

Teaching Associate for FIT2102 - Programming Paradigms, a core unit for Bachelor of Computer Science. Handbook: monash.edu/pubs/2017handbooks/units/FIT2102.html

  • Wrote 5, 3 hour worksheets with executable exercises and automated tests for half the course teaching function composition, lambda calculus, currying, observables and TypeScript.
  • Tought x86 Assembler, Haskell, and MiniZinc.

Research Assistant

Monash University

Mar 2017 - Nov 2017

Developed a mind mapping tool for the Monash Adaptive Visualisation Lab. Skills: D3.js, RxJS, TypeScript, SVG.

Personal Projects

Riko

Browser Game

August 2020

A challenging 54 level puzzle game (spyr.itch.io/riko). Built everything including a flexible puzzle engine that supports undoing player actions, and an efficient art and audio import pipeline. Used Phaser.js, Immer.js, GLSL shaders, React, TypeScript, Aseprite (art), and Reaper (soundFX).

YouCodeThings

YouTube Channel

Run an entertaining and educational youtube channel with over 6,000 subscribers and 200,000 views. Produce videos that teach Game Development, Rust and JavaScript.

© 2020 Andrew Jakubowicz, Built with Gatsby