Verified Expert in Engineering
AR and VR Developer
Roman has 12 years of international experience in 3D and VR software development and a PhD in computer science. He has led and worked on projects of all sizes, from scoping requirements to launch, focusing mainly on VR/AR, complex algorithms, CAD, haptics, and computer vision. With expertise in various languages and platforms, including C++, Java, and C#, Roman has designed and developed cutting-edge products, including VR arcade games, facial recognition, and advanced medical imaging.
Linux, Windows, Eclipse IDE, Android Studio, Git, Visual Studio, Unity
The most amazing...
...thing I've developed is a best-in-class face analysis system for low-performance devices. It's the basis for the the very core of the client's business.
- Designed and developed a walk-through VR escape room experience for VR arcades.
- Expanded customer relationships and found potential business clients.
- Developed an enhanced version of the VR experience where virtual and real environments are synchronized.
- Applied for and received state funding for the company.
- Collaborated with the concept designer and writer on the design and storyline of the VR experience.
- Completed the advisory track of the Y Combinator Startup School (Note: this is not the Y Combinator core program).
- Presented the company at the Gamescom international game conference and the VR Arcade Conference.
Senior Software Engineer
- Played a key role in clients' projects, from scoping requirements to launch, and further developed existing products.
- Developed a VR demonstrator for the IIP-Ecosphere project that involves more than 50 organizations in Germany, including VW, Sennheiser, and universities. The demonstrator will be the face of the project and shown to visitors at exhibitions.
- Assembled a team and led the complete development of a highly optimized, real-time face detection and tracking and age/gender classification system for low-performance devices. This is now the very core technology for the client's business case.
- Collaborated with the client's cross-functional team on the integration of the face analysis system and guided the development of related analytics tools.
- Created a complete pipeline from collecting and annotating training data to creating machine learning models.
- Developed an Android app to easily create floor plans and compute various parameters such as floor area.
Senior Software Engineer
Adpack (IDA GmbH)
- Developed core software that targets and plays commercials based on the set of people currently looking at the screen and produces reports. It runs on hundreds of Adpack edge devices in places like shops, post offices, and airports.
- Designed and developed a new RESTful API framework for the Adpack edge devices.
- Wrote research proposals to secure state funding for R&D projects.
Lead Software Engineer | Research Associate
Nanyang Technological University
- Collected requirements, designed, and led the development of visualization frameworks for the bowl-shaped, 320-degree Cave Automatic Virtual Environment with five active stereo projectors, allowing researchers to easily extend projects to the CAVE.
- Saved the institute $280,000 by replacing their third-party visualization framework with the one I developed.
- Migrated the ongoing Unity VR projects to the Oculus Rift VR headset and to the glasses-free stereo display with eight views.
- Integrated tracking devices, including Leap Motion, Kinect 2, and marker-based motion capture, into the ongoing projects.
- Conducted user-study research with 16 people about the degree of virtual presence and cost-effectiveness for four displaying devices.
- Interviewed job candidates, performed administrative tasks, assisted during audits, and negotiated support contracts.
- Wrote research proposals and project reports, made presentations, and presented demos to VIPs such as government officials and visitors from big tech companies.
Software Engineer | Ph.D. Researcher
Leibniz University of Hannover, Institute of Man-Machine-Communication
- Designed and developed a VR system with haptic interaction, using 3D volumetric data. It was sponsored by DAAD, the German Academic Exchange Service.
- Visualized medical imaging data using volume rendering and added the "feeling" of virtual objects using force-feedback devices.
- Improved marching cubes and smoothing algorithms, resulting in more than 10x faster graphics rendering of deformations.
- Developed a flexible deformation framework that allowed the use of haptic rendering together with different deformation models and developed deformation models.
- Exhibited the system during CeBIT international computer expos in 2013 and 2015, published research papers, and appeared in a German newspaper.
- Served as a teaching assistant for a course on data structures and algorithms.
- Wrote a research proposal leading to the project being funded by the European Union.
- Supervised the work of undergraduate students and interviewed job applicants.
Software Engineer (Part-time)
- Worked on TurboCAD (v 16.0, 16.1, and 17), a powerful CAD system and AutoCAD's competitor.
- Designed and developed a mesh simplification tool. It's based on the QSlim algorithm and reduces the number of triangles to the specified number while maintaining the best "quality" of the model.
- Developed and improved 3D and 2D CAD-specific tools, including simple extrude, prism, sweep, revolve, Face2Face lofting, bisector, helix, construction lines, and twisted extrude; 3D-polylines clipper by a volume; and hidden line renderer.
- Designed and developed a layout tool that optimizes the layout of details on wooden sheets in order to save wood.
Junior Software Engineer (Part-time)
- Developed camera models, GUIs, editor's behavior, and other features for a golf simulator.
- Built Samsung MenuTool, an editor for easy and intuitive creation of menus for phones and games.
- Implemented surface flattening algorithms for mapping of a 3D surface to a 2D space.
St. Petersburg State Polytechnical University, Department of Theoretical Mechanics
- Created and implemented a computer model of the formation of molecules from atoms.
- Visualized the process of the formation of molecules in real time in both 2D and 3D.
- Presented the model at the Institute for Problems in Mechanical Engineering of the Russian Academy of Sciences in Saint Petersburg.
VR Demonstrator for IIP-Ecosphere
The VR demonstrator will be the face of the project and shown to visitors at exhibitions. It represents the structure of the IIP-Sphere as a landscape with various groups of buildings, each associated with the project participant, and every participant has its own demo space inside their building.
VR Escape Room Experience for VR Arcadeshttps://mivar.co
The advanced version of the VR experience has rough replicas of virtual objects in reality, exactly in the same place where they are expected to be. As the result, the player can not only see but also literally touch the virtual objects. This greatly enhances the player's immersion experience.
VR System with Haptic Interactionhttps://www.tib.eu/de/suchen/id/TIBKAT:872208478
The system was sponsored by a Siemens/DAAD Ph.D. scholarship. It was exhibited during CeBIT international computer exhibitions in 2013 and 2015 with more than 3,000 people visiting the stand, including politicians. It was also recognized in a German newspaper, written about in published research papers, and presented at international scientific conferences. Last but not least, the haptic interaction part of the MultiScaleHuman project was based on my work.
Face Analysis System
While leading the complete project, from scoping requirements to launch, I also created the complete pipeline, from collecting and annotating training data to creating machine learning models. The system is now the very core technology for the client's business case.
Augmented Reality Meetup Group (AR Berlin)https://www.meetup.com/AR-Berlin/
C++, Java, C#, XML
Unity, OGRE, Microsoft Kinect
Visual Studio, Git, Android Studio, Eclipse IDE, Android NDK, Subversion (SVN), CVS, MonoDevelop, CAD, Make, Confluence, Jira, cURL Command Line Tool, CMake
Human-computer Interaction (HCI), Object-oriented Programming (OOP), Agile Software Development, Requirements Analysis, Kanban, Agile, Waterfall Development, Unit Testing, Concurrent Programming, High-performance Computing, Distributed Computing, REST
Windows, SteamVR, Software Design Patterns, Oculus Rift, Linux, Android, Docker
Virtual Reality (VR), Haptics, Haptic Feedback, CAD Development, Algorithms, Data Structures, Software Development, Software Engineering, Computer Science, Native UI, Requirements & Specifications, Technical Leadership, Project Leadership, Volume Rendering, Volumetric Data, Medical Imaging, Computational Geometry, Computational Complexity, 3D Math, Point Clouds, Research, Applied Mathematics, Competitive Programming, Human-machine Interface (HMI), R&D, Mesh Development, 80/20 Simplification, Support Vector Machines (SVM), Augmented Reality (AR), 3D Graphics Engines, 3D Graphics, Software Design, Computer Graphics, Team Leadership, Software Architecture, User Requirements, Geometry, Linear Algebra, 2D Graphics, Java 3D, Visualization, Mechanics, Physics, StarTeam, Windows Mixed Reality, Leap Motion, Startups, Facial Recognition, Research Proposals, Data Engineering, Software Development Management, Software Development Lifecycle (SDLC), Profiling, Computer Vision, Machine Learning, Motion Tracking, Calculus, Startup Accelerators, Ray Casting, Community Development, Community Management, Multithreading, Artificial Intelligence (AI), Computer Networking, Mathematical Analysis, Analytical Geometry, Tensor Analysis, Materials Science, Discrete Mathematics, Probability Theory, Statistics, Quantitative Calculus, Optimization, Queueing Theory, Ray Tracing, Digital Signal Processing, Signal Processing, UML Diagrams, Automata Theory, Shaders, Motion Capture, Network Programming, Requirements, Android Development, Business to Business (B2B), Business Development, User Interface (UI), GUI, Graphical User Interface (GUI), Meetups
NDK, API Development, Java Native Access (JNA), OpenCV, Dlib, DirectX, OpenGL, Microsoft Foundation Class Library (MFC)
Ph.D. in Computer Science
Leibniz University of Hanover - Hanover, Germany
Master's Degree in Informatics and Applied Mathematics
Saint Petersburg State Polytechnical University - Saint Petersburg, Russia
Bachelor's Degree in Informatics and Applied Mathematics
Saint Petersburg State Polytechnical University - Saint Petersburg, Russia
Alumni of Startup Accelerator