About me


My name is Krzysztof and I’m a software developer. I work primarily with desktop computers, iOS and Android but I also had the opportunity to embrace slightly more exotic devices, as well as Symbian OS and Nintendo consoles.

I consider myself a generalist programmer and I worked in companies of various types, doing a myriad of things: web development, writing IPTV analyzer software, handling cloud-like server infrastructures - and more. Since 2008 I’ve been working in the gaming industry, focusing primarily on creating technology that makes them tick (engine development, logic, AI, animation systems, etc.). I also dabbed a bit with VR - an area I still plan to revisit one day.

My detailed career profile can be found on LinkedIn. I sporadically post on Twitter and have a GitHub account with some of my pet projects posted there. Every now and then, I make small contributions to ShaderToy. For direct contact you can email me (in English, Polish or Swedish) at krzysztof (dot) kondrak (at) gmail (dot) com.

Here’s a glimpse of what I’ve been doing in recent years at various companies:

Embark Studios (2022 - present)

My current position at Embark revolves around working with Rust programming language, people and general game and technology engineering. More details to be shared soon - in the meantime, enjoy a small preview of our work! :)

Gamelion Studios / Huuuge Games (2010 - 2022)

I joined Gamelion in 2010 as a senior game programmer but later on moved to being part of the company’s technology team, working primarily with the in-house multiplatform game engine for desktop computers and mobile devices. In 2014, Gamelion Studios transformed into Huuuge Games.

At one point I was tasked with adding 3D functionality to the 2D-only game engine owned by the company. Written using non-fixed OpenGL pipeline, the graphics and shader code was uniformly compatible with iOS, Android and desktop platforms (Windows, Linux, MacOS). As a technical improvement, development work on an additional Vulkan backend started around late 2018.

Main features of the implementation included:

  • support for PowerVR compressed PVR texture format
  • support for PowerVR POD mesh data
  • all standard shader effects written in GLSL: normal mapping, specular mapping, light mapping, dynamic lighting, bloom and more
  • frustum culling and occlusion culling
  • support for Pyro Particles System
  • Oculus Rift support

Before I started working in technology team, I took part in developing several games for various mobile platforms:

Power Challenge AB (2008-2009)

Power Soccer was an online soccer game played directly in a web browser. The game infrastructure consisted of a set of servers, main game client written in C++ and a web interface. Power Soccer was the primary game I worked with, being responsible for its various components including the web programming part, implementation of new gameplay features, server programming and AI improvements. During the last months of my work I was closely associated with the QA team and wrote a set of unit tests for the game. Apart from game programming, I also set up and maintained development servers for the company (both physical and using virtualization) which on my part required a lot of Linux scripting and administration.
Power Racing was a similar product - an online racing game played directly in a web browser. There I was responsible mostly for backend programming, network components (servers and web interface) and creating algorithms that would pair the players in the best way possible. The gameplay style was similar to most modern titles you can find on the consoles or the PC. The game infrastructure consists of a set of servers, a main game client written in C++ and a web interface. At the time of my departure further development was put on hold.

Some key features of both games:

  • no explicit download required: you played the game directly in a web browser, the client application was downloaded in the background via a custom Java applet
  • spread network architecture supporting hundreds of simultaneous multiplayer games
  • high quality graphics and sound with fully customizable teams/cars (names, colors, appearance, engine upgrades - you name it)
  • Training mode against AI opponents
  • realistic physical object interactions using PhysX

Footage:

ESDG Konsult AB (2007)

Agama TV (2007) - While I was working as a consultant at ESDG I was mainly involved with IP-TV analysis software for various models of set-top boxes (including Motorola and Nokia hardware). I worked with packet analyzers, network traffic optimizations and anything related to communication and DSP.