Print ++ PDF version ++ Last Updated: 2016-10-12

Curriculum Vitae - Ghassan Al-Mashareqa

Personal Information

Nationality Languages Personality Type Website E-Mail Phone Number
Polish Polish (native), English (fluent), Russian (minimal) INTP 889 870 691

Professional Experience

2009-2014Programmer at Teyon
Game design and development
Multiple games utilizing several different game and graphics engines, both provided in-house as well as custom-made; Games for resource-constrained devices like the Nintendo DS/3DS, iPhone/iPad; Games for the browser (Flash/ActionScript); Some technologies for said games (e.g. GUI and animation libraries, localization libraries); Development primarily with C/C++, with some scripting languages (Lua and Python)
Engine design and development
Developing and improving numerous aspects of the in-house game engine (software/hardware rendering, asset loading, OS/API integration) for different platforms (DS/3DS, iPad/iPhone, PC with OpenGL); Working under tight resource and hardware constraints; Designing and developing a custom game engine for multiple platforms (PC, Mac, Linux, iOS), both the frontend (asset loading/parsing, game structure, scripting) as well as the backend (rendering, filesystem, debugging/logging, threading, memory management, sound playback, platform/locale interoperability, social APIs)
Tool design and development
Design and creation of both tools for personal use as well as tools for internal company game design and creation, e.g. a game creation and build tool for a specific genre, built in C#
Network administration
Simple network and server configuration management, web and VCS server setup
Code maintenance and porting
Fixing and maintaining existing codebases; porting games from PC to the Nintendo DS/3DS and iPhone/iPad
Note: I was not involved in development of "Rambo, The Video Game"
2014Software Engineer at Mobica
Project design and development
Work on multi-platform software for dedicated embedded multimedia hardware; design of interfaces and module interoparibility layers
Embedded OpenGL profiling and optimization
Writing profiling code for rendering system for real-time data visualization on embedded hardware; creating proposals for, and implementing generic, as well as GLES3-specific optimizations
Consulting with international clients
International travel to client sites for consulting purposes; integration with client team and workflow
Note: Most of the above deliberately vague on account of strict project security and non-disclosure agreements
2014Gameplay Programmer at IntoXicate Studios
Game and engine programming
Work on Afterfall: Reconquest; work in Unreal Engine 3, both with UnrealScript as well as C++ engine source code; adding gameplay and UI features; creating and modifying tools; refactoring legacy code; Unreal build system work; external module integration (Bink, Steam)
Bug fixing and optimization
Bug fixing and simplification of legacy code (AI, gameplay, UI); work with existing developers to improve overall code quality; rendering and resource management optimization (Unreal Engine, C++, UnrealScript)
Game and level element design
Improvements to existing gameplay and level elements; design of new gameplay elements; work with level designers and artists on implementation details; across-the-board work in Unreal Editor and associated tools
VCS setup
Setup of, and transitioning to, Mercurial-based source code versioning system; developer training
Website re-write
Porting of Afterfall: Reconquest website from unnecessarily complex and static CMS version, to a simple, personal CMS solution (PHP, MySQL, HTML+CSS+JS, UX)
2015-2016Programmer at QLOC S.A.
Game porting and internationalization
Porting games from PlayStation 4 to PC with Steamworks; input handling and translation between keyboard and gamepad; handling of multiple different input devices
Bug fixing
Code cleanup and refactoring; bug and porting issues fixes; investigation into PC compatibility issues, eg. FPU/vector processing issues
Tool development
Writing a custom binary archive/resource reader/viewer for baked and precompiled game data

Skills and Knowledge

Legend: 90% - idiomatic knowledge and writing skill; 70% - comprehensive knowledge and ability to write correct programs; 50% - ability to write correct programs; 30% - able to read and reason about most constructs; 10% - able to understand the basic idea behind a language/technology and recognize some constructs

Programming Languages

C/C++ (C++98, C++11, C++14, C++17)
JavaScript, HTML+CSS
C#, UnrealScript
Java, PHP
Pascal variants
Python, ActionScript, SQL variants
Basic variants
Objective-C, Assembly variants, Erlang, D, Go, Ruby, Perl, Lisp variants

Programming Paradigms & Domains

Object Oriented
Event Driven, Declarative, Network
Concurrent/Parallel, Resource Constrained, Functional
Data Driven, Security

Platform Development

Nintendo DS & 3DS
Mac OS X

Technologies & Frameworks

Allegro 4/5, WinAPI, .NET
Windows Forms
Flash, Unreal Engine 3
Steamworks API
iOS & Android Store API
Unreal Engine 3
Unreal Engine 4, Unity


Visual Studio
Eclipse, RSA RTE
SVN, git, Mercurial
GNU toolset


Stanislaw Wyspianski High School, Lodz, Matura Exam
University of Lodz, Faculty of Physics and Applied Informatics, field of study: Informatics/Computer Science
Lodz University of Technology, Faculty of Technical Physics, Information Technology and Applied Mathematics, field of study: Computer Science

Interests & Hobbies

• Game design, development and analysis • Tabletop games • Information technology and programming • Speculative fiction • Philosophy •