# Sergey Kosarevsky > 3D/AR/VR on desktops, mobile devices, and wearables Location: Mountain View, California, United States Profile: https://flows.cv/sergeykosarevsky Coauthored "Vulkan 3D Graphics Rendering Cookbook", "3D Graphics Rendering Cookbook", "Mastering Android NDK", and "Android NDK Game Development Cookbook". Experience in building custom 3D rendering engines for desktop, mobile, and embedded platforms. Expertise in software development, 3D graphics, and AR on mobile & embedded platforms. Continuous integration and automated QA. All aspects of real-time graphics programming, including rendering engine design from scratch using data-oriented approach, physically-based shading on low-power platforms. C and C++, OpenGL 4.6, GLES 3.2, Vulkan 1.4, audio, AR, GPU volume rendering. Over 20 years of experience. Specialties: * Languages: C and C++11/14. A little bit of C++17/20. Object Pascal in the past (Delphi, Free Pascal). I do some Python for scripting, not much though. * Ecosystems: Windows, Linux, Android, a bit of iOS and OS X in the past. Different custom embedded platforms (AR glasses, wearables). * APIs and libraries: Vulkan 1.4, OpenGL (4.6+AZDO), OpenGL ES 3.2, OpenAL. * Version control: Git. Hg/SVN in the past. * Software engineering: data-oriented design, design patterns, refactoring, automated unit tests and performance profiling, continuous integration. ## Work Experience ### Staff Software Engineer (IC6) @ Meta Jan 2022 – Present | Burlingame, California, United States 3D graphics. Vulkan. GPGPU. Highlights: - designed the Vulkan backend for https://github.com/facebook/igl (running on Meta's Orion) - coauthored "Vulkan 3D Graphics Rendering Cookbook" Talks: - SIGGRAPH 2025: Ray Tracing with Bindless Vulkan on Mobile Devices, a Case Study: Performance (with R.Kuznetsov and A.Medvedev) - SIGGRAPH 2024: Designing Mobile Rendering Engines with "Bindless" Vulkan (with A.Medvedev) - Vulkanised 2025: Using Ycbcr Samplers with Bindless Vulkan - Vulkanised 2025: Integrating Bindless Vulkan with Ray Tracing on Mobile Devices (with R.Kuznetsov) - Vulkanised 2024: Writing an Efficient Vulkan Renderer for Quest Pro and Quest 3 (with A.Medvedev) - Vulkanised 2023: Use "bindless" to quickly port "bindful" OpenGL apps to Vulkan Courses: - SIGGRAPH 2025: The Modern Vulkan Course (with M.Maurer and P.Kakkar) ### Rendering Lead @ Ubisoft RedLynx Jan 2021 – Jan 2022 | Helsinki, Southern Finland, Finland Led the rendering team on an unannounced AAA project with the main focus on delivering graphics features, team productivity, mentoring, and career guidelines. Highlights: - got the team under my supervision involved into multiple cross-studio collaborations and delivered next-gen graphics features. - external communication: Vulkan on Google Stadia. ### Independent 3D Graphics Engineer @ https://www.linkedin.com/in/sergey-kosarevsky/ Jan 2018 – Jan 2021 Independent 3D Graphics Engineer working to create custom 3D rendering technology (3D engine design; porting OpenGL to Vulkan; automating graphics CI & profiling). Mobile, embedded, and desktop. Highlights: - coauthored "3D Graphics Rendering Cookbook" - created a new C API for the `glslang` compiler. ### Sr. Staff Engineer @ DAQRI Jan 2017 – Jan 2018 | Wien, Austria Led the architecture and implementation effort of a low latency 3D rendering engine for AR and automotive (OpenGL 4.6+AZDO; PBR; glTF2; automated testing and profiling). ### CTO @ Dodo Pizza Jan 2016 – Jan 2017 | Moscow, Russian Federation Disrupting pizza business building a cloud-based infrastructure and using machine learning techniques. Highlights: worked closely with the founder and the HR director to advise on the engineers hiring process. ### Head of Core Technology @ twnkls | Augmented Reality Jan 2016 – Jan 2016 | Rotterdam, Netherlands - Lead the development of a new scene graph system (lightweight component-based scene graph as the "front-end", data-oriented sorted tables as the "back-end") and a 3D rendering engine (OpenGL 4 and OpenGL ES 3). Used for image-based computer vision. - Revamped the building process of our Next-Gen Tracker (NGT) bringing the environment setup & build time from 2 days down to several hours. Used the open-source package manager previously developed at Blippar. Pushing the "one button build" philosophy enabling continuous integration and automated testing in the entire company. - Migrated NGT from ad hoc threading primitives to C++11 concurrency primitives. Hunted down many preexisting concurrency bugs. - Implemented a C-style interface and C# bindings for our ORB SLAM tracker to expose it as a Unity plugin. ### Head of Core Technology @ Blippar Jan 2015 – Jan 2016 | Amsterdam, Netherlands Taking the technical lead of new components of Blippar's multi-platform 3D engine. Interviewing and hiring people for engineering positions in Amsterdam and London offices. Contributing to establish the best development practices and culture. - Lead development and architecture of a new audio subsystem for augmented reality (Android, iOS, Windows Phone, Windows, OS X, Linux): tightly integrated into the existing engine, OpenAL as the back end, channels management, network audio streaming, postprocessing filters. - Lead development of a video playback subsystem for AR (Android, iOS, Windows Phone, Windows, OS X, Linux): tightly integrated into the OpenGL rendering pipeline, GPU-accelerated frames cropping and color conversion, lip-sync with the audio subsystem and all synchronization code necessary to play video in real time. - Implemented reusable engine components (new virtual file system and networking subsystem) used by app teams in Amsterdam and London. - Directed the transition of mobile app and computer-vision teams to Git including all of their previous projects and source code. Helped people to get used to Git, led them by example, Q&A sessions and case-studies. - Established TeamCity continuous integration process in the mobile app teams of both Blippar and Layar. - Working closely with the computer vision team to advise on performance-related issues (STL usage, data-oriented design, cache friendliness). ### Head of Core Technology @ Layar (part of the Blippar group) Jan 2014 – Jan 2016 | Amsterdam, Netherlands - Lead the cross-platform development effort to allow our 3D mobile app to run on desktop machines (Linux, OS X, Windows) with minimal mocking. - Implemented a tool to generate Layar's data-model deserialization code from a formal description. - Directed transition to Git source control including all of their previous projects and source code. Doing intra-company presentations, sessions and case studies about Git workflows. - Improved our 3D rendering engine for the Layar Google Cast demo project. ### Senior Software Developer @ Yandex Jan 2011 – Jan 2014 - Implemented many 3D features in Yandex.Shell (SPB Shell 3D). - Implemented multiple 3D app prototypes for the Yandex.Kit mobile platform. ### Part-time Associate Professor @ Sankt-Peterburgskij Institut Mašinostroenija (Vtuz LMZ) Jan 2010 – Jan 2013 Invented several computer vision algorithms for industrial metrology (2D and 3D feature extraction): detecting measure metric screw threads in planar point clouds and computed-tomography 3D density fields. - Peer-reviewed publications (Measurement Science Review, Measurement, The International Journal of Advanced Manufacturing Technology). - Talks at IMS 2013 (São Paulo, Brazil) and iCT 2014 (Wels, Austria). ### Senior Software Developer @ SPB Software Jan 2010 – Jan 2011 Implemented many features for SPB Shell 3D: stereoscopic rendering, copy-protection, MeeGo port, new networking subsystem. Reporting directly to CTO/cofounder. SPB Software was acquired by Yandex in 2011. ### Lead Engineer @ Izhorskiye zavody Jan 2006 – Jan 2010 Visualization and processing of computed tomography data for industrial measurements. Working with Carl Zeiss IMT company under the OPTEC grant. ### Engineer @ Izhorskiye zavody Jan 2005 – Jan 2006 | Saint Petersburg, Russian Federation OpenGL/GLSL/C++ for industrial metrology and data visualization. ### Part-time Teaching Assistant @ Sankt-Peterburgskij Institut Mašinostroenija (Vtuz LMZ) Jan 2008 – Jan 2010 Working with Carl Zeiss IMT company and their industrial computed tomography (CT) technology under the OPTEC - Carl Zeiss grant. CT data feature extraction for specialized cases (metric screw threads). ### Software Developer @ Carl Zeiss AG Jan 2008 – Jan 2008 | Oberkochen, Germany Fixed OpenGL rendering compatibility with WDM drivers in Calypso. ### Internship @ Carl Zeiss AG Jan 2006 – Jan 2006 | Oberkochen, Germany Added GLSL pixel shading to the CAD ACIS renderer. ## Education ### PhD in Engineering North-west State Technical University ### Engineer in Mechanical Engineering Sankt-Peterburgskij Institut Mašinostroenija (Vtuz LMZ) ## Contact & Social - LinkedIn: https://linkedin.com/in/sergey-kosarevsky - Portfolio: http://www.linderdaum.com - Portfolio: http://twitter.com/corporateshark --- Source: https://flows.cv/sergeykosarevsky JSON Resume: https://flows.cv/sergeykosarevsky/resume.json Last updated: 2026-04-12