About Me

Hi, I'm Dietmar. You just landed on my webpage.
It's 2016, I recently moved to the West Coast (US) and I'm currently looking for a job! So if you are interested in hiring me, you can choose to read a very short, medium or looong description of me. Or you can check out my resume, my LinkedIn profile, skim through my professional past or contact me.

Short version

I think my Twitter profile (@dsuoch) basically sums it up quite nicely:

Programmer interested in low level code, performance & game development.
Might contain occasional BS or rants.

Medium version

Straight from my resume:

Generalist programmer with 12y+ work experience in the game industry and related areas.

Knows the fundamentals and more about rendering, animation, artificial intelligence and networking. Worked at the engine level, on asset pipelines, tools, build systems and various gameplay systems. Experience in identifying performance bottlenecks and optimization. Special technical interest working on core systems.

Full game production cycle experience - from technical evaluation and prototyping to shipping, support and maintenance. Guided small teams of people from multiple disciplines. Involved in recruiting specialists of different experience levels.

Fluent both in English and German; basic knowledge of Spanish.

  • Languages: C/C++ (advanced), C# (proficient), ObjC (proficient), misc. scripting languages
  • Platforms: iOS, OSX, Android, Windows, Linux
  • Architectures: ARM, x86, misc. GPUs (mostly mobile)
  • Graphics: OpenGL + ES, a bit of D3D9, misc. shading languages

Long version

I'm very passionate about my craft as a programmer and driven by mastery. I think it's important to be disciplined and practice a lot, but also to be patient with yourself about it. So I'm taking my time to practice and try to learn from others in the industry.
Rinse and repeat, like Mr. Miyagi once said: "Wax on, wax off"!

While my approach and understanding of programming certainly has changed over the years (and will probably continue to do so), my intention remains the same - to write "good code"! My definition of that is an accumulation of learnings derived from past working environments, which in turn were shaped by platforms I worked on, tools I used and problems I had to face. Code quality is an important topic which I definitely would like to discuss with you, but in a nutshell: I like lean & efficient code!

I like to work on soft real-time interactive simulation software, such as video games. Game Development is a vast and exciting field, full of interesting challenges. It is very creative, highly dynamic and offers a never ending stream of unique problems. I try to provide technical solutions to overcome those problems and to help others to realize their ideas.

I can wear multiple hats and have successfully worked in many different areas. If possible though I would like to make the transition to console / PC and get to work on core systems. I enjoy working on constrained platforms, in scenarios where performance is critical, and in which one has to manage limited resources carefully or efficiently communicate with the underlying hardware. Working close to the metal, my weapons of choice are usually C or C++. Although especially C++ is far from perfect - it's hard to learn and navigate - it is still an invaluable tool / necessary evil for the job at the moment. So most of the time I try to stick to a saner subset of it, similar to Orthodox C++.

Last but definitely not least - of course it is very important, to be part of a team of nice, collaborative, supportive, smart but humble, diverse and creative people. It is also important that the whole team is aligned and dedicated to be functional. The feedback of some of my last team members said:

professional; experienced; great communication;
committed; very dedicated;
a developer that really cares about the final product;
high expectations and standards;
honest; not afraid to speak up;
has strong opinions and is willing to fight for them but is still open to listen to other ideas

I hope I could give you a quick overview of my programming persona. If I caught your attention and you want to talk shop, drop me a line!

Other interests

These are my other interests besides programming:

  • video games of course (if I finally get around to playing them)
  • everything nature / outdoors: hiking, camping
  • Beach volleyball
  • snowboarding (probably less in the future), surfing (more of that now), maybe long boarding (I'm more of a cruiser myself)
  • (mountain) biking & bikes
  • trying to get into rock climbing again
  • craft beer & hearty food (my epic quest to find a good authentic Gulasch or Schnitzel)

What else? Welp, maybe one day I'll finally get around learning to play the guitar or writing down some very profound technical articles about my programming adventures (like some of these good people do). Or some long overdue less profound rants. But at the end of the day, I'm not a good enough writer or programmer (yet), so maybe my time is better spent on learning more, dabbling in code and tinkering along ...

By the way, if you want to read "my story" and are ready for a trip down memory lame - be my guest!