CV and Resume of Johannes Rave
Industrial designer, car modeller and former nightclub owner, now Computer Science student and IT consultant.
A passionate coder and professional designer with logical thinking, I have a great willingness to learn, good communication skills and diverse work experience.
Recently I began working as an IT consultant at INNOQ.
Formal documents and contact information
Portfolio projects
drawingApp
This desktop application was built in JavaFX as a student project. It has a DARK MODE, implemented with CSS.
splicer2D
Splicer2D is an action-packed mobile game with a novel game-mechanism designed with Unity and written in C#.
verstehbank
verstehbank is my entry for the web-technology course at my university. It showcases a very simple and understandable responsive web-app for online banking, targetted at people with simple requirements annoyed or confused by the distractions of more elaborate and hard to understand offerings. A test-account is “beateweber”, password “1955”. Your transaction history will be saved to localStorage, so your balance should stay consistent over several sessions within the same browser.
CSS Zen Garden
The CSS Zen Garden is a collaborative website originally dating back to 2003. Web-designers showcased the power of CSS and their own skills by styling a defined page of HTML-markup in hundreds of variants. This is my version of the page, built as part of a CSS course at my university.
Scripting and automation
SparkAR
This is a software package to create AR-filters for Instagram. Similarly to C# and Unity, it is possible to integrate TypeScript coding into the filters using the SparkAR-API. I work with this regularily to expand the possibilities of the studio-software, integrate game logic or debug existing problems with the young package. For example I did this:
-
Integrated the physics engine cannon.js into projects, enabling forces, collisions and constraints for 3D-objects. (I am writing a little wrapper called “sparrow” to interface cannon with SparkAR.)
-
Implemented billboarding on a tracked plane - an object will always face the user, even when the pane loses tracking and then “reappears”.
While the function itself is not very complex, it took some time to line up the quaternions correctly to make it happen. The documentation on the orientations of worldSpace, cameraSpace and planeTracking are patchy at best, but I got it to work eventually and published my solution to a relevant community. Before, the SparkAR-community had to abuse the particle-system to achieve this effect.
Coding challenges and certificates
To better understand and contribute to work in the IT industry, I recently aquired my PSM I certificate:
Besides my studies in Computer Science and Media, I have been learning and honing my skills on hackerrank, exercism and freecodecamp.
Have a look at my solutions to coding challenges here:
- My 300h JavaScript-certificate from freecodecamp.org
- My exercism profile
- My Java solutions for exercism
- My C# solutions for exercism
- My hackerrank profile
Generative Design
There are several node-based geometry packages in the industrial-design-space, but the most important one is Grasshopper, which ships with Rhino3D. Grasshopper can be used to generate repetitive geometry, recursive patterns and all kinds of interesting models and shapes. This can be achieved using nodes (visual programming), Python, and C#. I have worked with all of them, depending on the task at hand.
There is a bit of a learning curve, and professionals who master generating production-ready geometry are sought after, especially since the model has to incorporate minute design changes that only come up during the process. I built my models in a flexible way by separating concerns, to be able to include those design changes without having to begin from scratch on each iteration.
Unfortunately, I can’t share images of these projects, as they were done for customers confidentially. I will still list them here to give an idea of the kind of task completed.
-
Generative front grille with a custom curve-fitting function written in C#, inspired by my own work in the car industry. This might make it into a car for an Asian market.
-
A shutline generator in for car-models, to automate the tedious process of building visual shutlines for presentations
-
Recursive graphical patterns inspired by Muslim architecture
Game-design and visual design
The Secret of Maike Island
This is a classical point’n’click adventure game built in Adventure Game Studio as a birthday present.
It deals with socio-economic pressures of the housing market in metropolitan clusters and destroying stuff with a bottle of prosecco.
Käpt’n Wildschwein
I designed “Capt’n Boar” as a hero character for my nieces and nephews and modelled him in Blender. They sometimes send me drawings of him with his famous barrel of spaghetti.
Product-design and Automotive Modelling
- Cars I have worked on as a 3D-modeller.
Customers included Audi, BMW and VW - Design portfolio 2014
My business-oriented product-design portfolio. - Design portfolio 2009
My more artistic product-design portfolio.
Nightclub wolf
In 2012 I founded wolf, a 600sqm nightclub in the cellar of a brewery in Pforzheim.
It ran on great music, an honest amotsphere and a terrific staff of up to 16 people until January 2014.
The facebook page includes pictures of the location and events, and features the visual art style of our promotional material.