Résumé/CV - Erik Unger



Erik Unger

URL of this document: http://ungerik.net/en/resume/     PDF Version
Contact: erik@erikunger.com
http://erikunger.com/consulting/

Experienced Software Engineer/Architect. Expert in Large Scale, High Performance Systems and Realtime 3D as in Social Media and Internet Technologies.

My main technical expertise lies in large scale, high performance software development and architecture, which I gained by working on projects in the areas of automotive, science, military, 3D and games.

In nearly all projects, I worked on the design of the basics, the "engine" and the libraries that make the rest of the project go. I am also known as the go-to guy for those impossible problems that have been floating around unsolved for too long.

Over the 15 years of my professional career (20 years including programming as teenager) I have worked with the following static typed languages: Google Go, C/C++, C#, Java and Pascal/Delphi. The dynamic typed languages I used are: Python, PHP, JavaScript and ActionScript.

I have worked on optimizing performance and memory usage of whole applications and specialized math libraries. This includes using x86 Assembler code (starting with drivers for graphics cards under MS-DOS, games, 2D and 3D rendering as well as wearable military prototype hardware).

In addition to large scale software, I have also developed smaller scale web applications with Java, PHP and Python. Databases I have used include Oracle, MySQL, PostgreSQL and SQLite.

Beside my obvious passion for engineering, I am very interested in economics, finances, work processes and success psychology. In general I want to understand what's going on behind the curtain to see the bigger picture.

Personal Data:

Born:25. December 1975 in Graz, Austria
Nationality:Austria / EU
Lived in:Austria, Germany (1 year) and Australia (2 years)
Currently living in:Graz, Austria

Languages:

German (native), English (fluent; 2 years Australia)

Tech Experience:

Programming Languages:
Google Go, C/C++, Java, C#, Python, PHP, Java Script, Action Script, Pascal/Delphi, x86-Assembler, Shading Languages

Tools:
Microsoft Visual Studio, Eclipse, Adobe Flex/Flash Builder eMbedded Visual C++, Perforce, SVN - Subversion, CVS, Source Safe, Harvest, Rational Rose, JBuilder, Delphi, Doxygen, CppUnit, SCons, Apache HTTP Webserver, Apache Tomcat Webserver, nginx Webserver, Cake Build System

Technologies:
Android, Multithreading, Profiling, .NET, WPF, COM, SQL Adobe Flex, JNI, JSP, Swing, AJAX, Django, Python virtualenv, STL, boost, Design Patterns, UML, XML, TCP/IP, UDP

Databases:
MySQL, PostgreSQL, SQLite, MongoDB

3D and Games:
OpenGL, DirectX, Xbox360 SDK, PS2 SDK, Wii SDK,

Development Processes:
V-Model at EADS, CMMI at AVL List, Scrum / Agile at RedTribe

Operating Systems:
Windows, Linux, OSX, iOS, Android

Projects:

May 2011 - NowNew event and community platform for STARTeurope based on a new developed web framework for Google Go
  • Programming language: Google Go
  • Database: MongoDB
  • Web-framework: Own development - stay tuned for open source release
  • Tools: Eclipse, Git
Nov. 2010 - May 2011TarifAgent Android App for TarifAgent.com
  • Programming language: Java
  • Tools: Eclipse, Android SDK

July 2010 - NowPrivate side project: ConvertSocialMedia.com. A social media webservice that converts social media updates to email newsletters.
  • Framework: Python + Django
  • Webserver: Linux + nginx + celery
  • Database: PostgreSQL
  • APIs used: Facebook, Twitter
July 2010Private Open Source side project: mypyprojectcreator - All batteries included virtualenv django project creator for fast prototyping
2009-2010Private side project: Blog and event calendar StartupMelbourne.com
2008-2009
(15 Months)
Core-tech developer at RedTribe.
  • Game-engine development: Extensions for the collision system, redesign of the memory manager, memory profiling facilities.
  • Game development: Performance and memory optimizations for Space Chimps the game.
  • Tools development: C# .NET Tools for memory profiling and asset database. Softwaredesign for C++ base libraries. 3D viewer for models and animations. Network messaging system.
  • Programming languages: C++, C#, Python, Assembler
  • Platforms: Windows, PS2, Wii, Xbox 360
  • Tools: MS Visual Studio, Eclipse, Perforce, console development kits, SCons/Cake Build System.
  • Development Process: Scrum
  • Team size: Up to 65
  • Project lines of code: Millions
  • Data processes by inhouse developed build system: Terrabytes
  • Location: Australia
2003-2008 BaseLib: Self-development of a platform independent C++ base library, inspired by Java and C# APIs.
Ygui: Self-development of a platform independent C++ GUI library for the time being only with a widget library for Win32. Supports custom widget libraries, multilanguage, skinning and stylesheets.
Next-Reality Engine: Self-development of a platform independent, multithreaded 3D and game engine.
2007
(2 Months)
Development at a Adobe Flex project of Customer Experts.
2007
(1 Month)
Price calculation tool for one of the biggest logistics companies, as sub contractor of Customer Experts. Realized in C++ with the self developed libraries BaseLib, Ygui and Win32Widgets.
  • Programming languages: C++
  • Technologies: BaseLib, Ygui, XML
  • Location: Austria
  • Reference Letter
2006
(4 Months)
Working-time management application for "Kärntner Energie-Verband" implemented with JSP and Oracle, as sub-contractor of Netconomy
  • Programming languages: Java
  • Technologies: JSP, Tomcat Oracle
  • Location: Austria
2006
(5 Months)
Gameplayprogramming for the computer game The Show from Sixteen Tons Entertainment
  • Implementation and support of program moduls in the following areas:
    • Game techtree
    • Leveleditor features
    • Optimization of Decal-Rendering
    • Missionlogic
    • General gameplay logic
  • Elaboration of test procedures for quality assurance
  • Debugging of own and foreign program modules
  • Programming languages: C++, Shader
  • Lines of code integrated with: Millions
  • Technologies: DirectX, Shader
  • Team size: 25
  • Location: Germany
  • Reference Letter
2005
(10 Months)
Development of various components of the engine-optimization software CAMEO of AVL List
  • Programming language: C#
  • Lines of code integrated with: Millions
  • Technologies: .NET
  • Location: Austria
2004-2005
(6 Months)
Development of the 3D visualization component of the engine-optimization software CAMEO of AVL List, implemented in C++ and C# with DirectX
  • Programming languages: C++ and C#
  • Lines of code integrated with: Millions
  • Technologies: DirectX, .NET
  • Location: Austria
2004
(1 Month)
Online-database for truck-bodies with PHP and MySQL for Karosserie/LKW-Service Wasner
  • Programming languages: PHP
  • Technologies: MySQL
  • Location: Austria
2003-2004
(12 Months)
Expert-system for analysing market-trends, values-chains and product-features, developed for Customer Experts.
Java application with custom object-oriented XML/Java database and custom Swing Look-And-Feel for the user interface
  • Programming languages: Java
  • Technologies: XML
  • Project manager and lead programmer, team size: 3
  • Location: Austria
2003
(3 Months)
Conception and project-management of a corporation critical online-database for management of test- and serialnumberdata of highway-toll sensors with PHP and PostgreSQL for EFKON
  • Programming languages: PHP
  • Technologies: PostgreSQL
  • Project manager, team size: 4
  • Location: Austria
2002-2009 Co-Founder Bouncing Bytes (Unger & Lefkopoulos OEG) - up to 13 freelances working in our offices (Austria)
2000-2003
(2.5 Years)
2D/3D graphics-engine for the military GIS Geogrid, developed for EADS (European Aeronautic Defence and Space Company).
Implemented with C/C++ and OpenGL, Ports for Windows CE and embedded systems plus serverside rendering for internet applications
  • Programming languages: C/C++ and Assembler
  • Lines of code written: about 100k, Lines of code integrated with: Millions
  • Technologies: OpenGL, DirectX, Windows CE, Embedded Systems
  • Locations: Germany and Austria
1998-2000
(18 Months)
2D/3D Track-editor and driving-simulator in Java with OpenGL for engine-development and tests, developed for AVL List with c.c.com
  • Programming languages: Java and C/C++
  • Technologies: OpenGL, JNI
  • Location: Austria
1998
(3 Months)
Implementation of an employe-data transmission service with Borland Delphi for the building-trade software baudat
  • Programming languages: Delphi
  • Technologies: Delphi
  • Team size: 15
  • Location: Austria
1996-1998 Porting of versions 5 to 7 of Microsoft's DirectX for Borland Delphi, and porting of the 3dfx 3D-driver interface Glide 2.x and 3.x for Borland Delphi
  • Programming languages: C/C++ and Delphi
  • Technologies: DirectX, Glide
  • Location: Austria
1996-1998 Several articles about graphics and 3D programming for PC Magazin - DOS and c't. Among other: Programming of a realtime-raycasting engine like Wolfenstein/Doom with Turbo Pascal ander DOS, Basics and graphics-effects, loading and displaying of a 3D-model ander Windows with Delphi and DirectX
  • Programming languages: Pascal/Delphi
  • Technologies: DirectX
  • Location: Austria

School:

1982-19864 Classes elementary school in Hönigthal
1986-19904 Classes BRG-Kepler in Graz
1990-19965 Classes and final examination at Höhere technische Bundeslehr- und Versuchsanstalt Graz - Gösting (BULME), mechanical engineering

Technical Internships:
1991Punitz-Flug (aircraft and airfield maintenance)
1994Diamond Aircraft (aircraft building)
1995Computer Aided Technologies Tüchler: (3D standard-part library for I-DEAS Master Series 3D-CAD-Software)

Additional Schoolings:
1994-1995Course at HTL (BULME): Computerbuilding
1994-1995Course at HTL (BULME): Quality Techniques QII (Statistical Methods of Quality Assurance)
2001First Aid Course