Download PDF

Jan Drabner

Back-&Frontend/Cross-Platform/Game/Generalist Developer

Summary

I am a qualified Software Engineer / Programmer with knowledge and proficiency in a large number of development topics, as well as a qualified Game Designer.

I am open-minded and like to refine my existing skills as well as learning new ones and am not afraid of touching new techniques that I have not yet worked with. Due to my experience in multiple different languages and libraries/tools, I tend to get into new ones rather quickly.

My pet peeves are probably optimization (of both software and workflows), working with audio/video encoding & streaming media as well as cross-platform development. But have a look at my skills yourself in the list below.

I am always looking for interesting opportunities in development (regardless of topic, most might strike me as interesting), so should you be interested or have any questions, feel free to contact me!

Skills

C/C++

C/C++ is one of the main programming language I am working with.

By now I have worked on a great variety of projects using C++ on anything from library integration, backend & frontend development as well as game development.

Python

Python is one of my favourite languages to work with.
Its enormous amount of functionality and libraries and ease of use make it the perfect tool to develop small to mid-sized tools to be used across projects.

I have been using Python to some extend almost everywhere I have worked so far, from exporter plugins for 3D software (Blender/Maya) to analyzing tools or larger build scripts.

Other Languages

To not expand this list unnecessarily, here is an assorted list of other languages I have worked with so far - some very extensively, others a bit less:

Lua, TypeScript, JavaScript, Java, SQL, C#, Rust, PHP, Flash/ActionScript/Air, LOLCode, bash scripts, Objective C, GDScript, Groovy, ...

Tools, Libraries & IDEs

Since I started programming, I have worked with so many tools, libraries and IDEs that it wouldn't make sense to add each as an own skill.  

IDEs:
JetBrains suite (IDEA, Rider, etc.), Visual Studio 2008/10...Code etc., Qt Creator, MonoDevelop, Eclipse, FlashDevelop, NetBeans, Code::Blocks, Codelight, Light Table, Atom, Sublime Text, KDevelop, ...

Libraries & Engines:
Seed, Node.js, Electron, FFmpeg, Qt, Ogre 3D, AWS, Azure, Godot Engine, libnoise, Trinigy Vision, DirectX, OpenGL, OpenAL, Noesis GUI, CEGUI, recast/detour, Polyvox, MySQL, Joomla, CakePHP, libccd, NodeJS, Jenkins, Docker, ...

Tools:
LibreOffice suite, Microsoft Office suite, PSPad, GIMP, Adobe Photoshop, ...

Organization

In most projects I have been part of I usually lead or organized a smaller team of maybe a handful of people.
Discussing and setting workflows, setting up a task system the team is comfortable with, making sure to always have a  comprehensible implementation plan and of course making decisions some people shy away from.

But even when working alone, I prefer to be well organized and able to give realistic estimations whenever possible.

Optimization

One of my pet peeves is the optimization of processes - as well as knowing when not to waste time trying to optimize something.

For one, this concerns deep issues within code that can be optimized by restructuring mostly (and sometimes, simply by using a different container), applying different patterns and analyzing performance using various tools.

But it also concerns processes within the workflow of a company. Sometimes, a small change can make work far more pleasant for everyone involved.


Spoken Languages

I am fluent in English and German.

Additionally, I have very basic knowledge of Finnish and (Mandarin) Chinese.

Work History

2013Now

Freelancer

Jan Drabner

Since 2013, I am working as a freelancer and have worked on a wide range of projects from backend & frontend development to cross-platform porting, video encoding and game engine integration.

Most of these were/are under a more strict NDA however, so you won't find them on my profile or CV. Sorry about that, but I hope that you will understand.

August 2021Now

Consultant

Etteplan

Working as a consultant for Etteplan and clients.

May 2016June 2021

C++ / Qt / Video Encoding / Backend / Generalist Developer

boom.tv

Working with C++, Qt and various other libraries and languages to develop and improve our user software and video capturing / encoding, integration of Mixer/Twitch/YouTube streaming services, self-updater, automatic sending of crash dumps, and more.

Development of backend services for Discord integration and tournament bots on our website via Python, NodeJS, CSS and other web stack technologies.

Development of a Jenkins-based build server & pipelines utilizing Docker for various, very different repositories of the team.

In addition, various R&D tasks concering continuous integration, crash logging, performance optimization, Electron development, etc.

Aug 2015May 2016

Backend Developer

zipstrr GmbH

Developing and extending the server API & media encoding using:

  • C++
  • Java
  • Python
  • FFmpeg
  • MySQL
Apr 2013Feb 2016

Lecturer

School For Games

Giving lectures about:

  • Programming Basics (data types, OO-Model, class design, ...)
  • Flash / ActionScript 3
  • Haxe / OpenFL / Stencyl
  • Frontend Development
  • Terrain Generation
  • Ogre 3D
  • C++
Jul 2012Sep 2015

MinGW Maintainer

Ogre 3D, Open Source 3D Engine

Joining the fantastic Ogre 3D team in July 2012, I fulfill the role of the MinGW maintainer.

I am responsible for making sure that all recent version of Ogre3D can be compiled and used with the GCC compiler for Windows.

I also support the team with other minor tasks, offer support on the official forums and regularly expand the Ogre wiki.

Jun 2013Aug 2015

Lecturer

Games Academy

Giving lectures about:

  • Mobile Application Development
  • Algorithms & Data Structures
  • Haxe + Lime + OpenFL
  • Code Review
Jul 2011May 2013

Technical Director Flash & Engine

zoobe message entertainment

Using C/C++, a 3D Engine and the FFmpeg library, I created and maintain a server-side application that efficiently renders 3D scenes with animated backgrounds, intro and outro into a distributable video file.

Using Flash and ActionScript 3.0, I created:

  • A client application that users use to select characters, record their voice (or use text-to-speech) and of course view the video created by the server-side application
  • A video player
  • Several technology and feasability studies including RTMP, RTMFP, Adobe AIR, live voice pitching, live video creation, etc.
  • Mobile & Desktop applications with Adobe AIR
Oct 2010Jun 2011

Flash Developer

Zukunftsbau GmbH

Working with Flash/ActionScript and Java during civilian service to create a dynamic and flexible software framework. And using that framework, I created an interactive learning software according to specifications from Zukunftsbau.

Education

Interests

Gaming:
This shouldn't be that much of a surprise, considering the Games Academy apprenticeship and the knowledge about 3D Engines. I started playing games when I was five years old, and haven't stopped since. I like to play all sorts of games from RPGs to trading card games and complex strategy games on the PC. Either alone or together with friends.

Programming:
Besides working as a programmer, I sometimes like to code some random stuff as a hobby and to learn new techniques. It is not my main leisure activity, but from time to time it's definitely fun.

Music:
I listen to music when I travel, when I'm at home, sometimes when working, etc. Without a doubt, music is very important to me, although I possess absolutely no skills in creating it, unfortunately.

Digital Media:
Another hobby of mine is the consumption of digital media, from YouTube to Netflix or Amazon Prime. I'm no stranger to losing some sleep due to binge-watching a series that I enjoy ;)

Languages:
Last but not least, I like to learn languages. This is of course a huge and very time intensive task, but I am doing my best to spend at least 30 Minutes on it every day.

So far, I managed to gain elementary skills in Finnish (I do live in Finland, after all) and am currently busy learning (Mandarin) Chinese - a task that is certain to last for a few years. 
我希望我会成功!