Nikola Nikolic

Senior Software Engineer @ Microsoft | 3D Simulation & Game Physics | OCR, ML & Image Processing | C++, Real-Time Systems

Munich, Bavaria, Germany

About

I am a Senior Software Engineer at Microsoft with over a decade of experience building performance-critical systems in C++, across 3D game physics simulation, image processing, and machine learning. I currently work on the Havok physics engine, focusing on real-time rigid body simulation, 3D collision detection, and multi-threaded performance optimization. I also contributed to mixed reality systems (Microsoft Mesh), helping develop low-latency synchronization of avatars and physics for multi-user AR/VR experiences. Earlier in my career, I played a key role in developing Microsoft’s OCR capabilities, including image processing pipelines and ML models for multilingual text recognition. The OCR system I contributed to is deployed in Windows and used by millions of users worldwide. I'm currently exploring new applications of machine learning in vision and simulation, and staying hands-on through internal hackathons and personal projects.

Experience

  • Senior Software Engineer at Microsoft
    Jul 2012 - Present · 14 yrs 1 mo

    Senior Software Engineer 📍 Munich, Germany | Jul 2012 – Present 🧱 3D Game Physics & Simulation (Havok) — since 2016 Working on a performance-critical, real-time 3D physics engine for games. Focus areas include multi-threaded particle systems, performance optimizations, collision detection and SDK abstraction for integration with external engines. Co-author on several patents in real-time 3D simulation. Originally joined the Havok team in Belgrade and relocated to the Munich office in 2019. 🕹 Mixed Reality & Microsoft Mesh (Havok) Contributed to distributed avatar and physics synchronization systems used in multi-user AR/VR scenarios. Work included real-time transform compression, low-latency networking, and platform integration for cross-device sessions. 👁 OCR, Image Processing & Machine Learning (2013–2016) Earlier at Microsoft, worked on OCR, image processing, and ML models for script classification and text recognition across languages. Played a key role in integrating OCR into Windows. Currently re-engaging with ML and vision through internal hackathons and self-directed study.

  • Teaching Assistant at Department for Mathematics and Informatics, Faculty of Science, University of Kragujevac
    Sep 2011 - Jun 2013 · 1 yr 10 mos

    Thought following courses: - Basics of Programming - Object-Oriented Programming - Operating Systems - Programming of Complex Software Systems

  • Software Engineer (Working Student) at The Jaroslav Černi Institute for the Development of Water Resources, Belgrade
    Jun 2009 - Jun 2012 · 3 yrs 1 mo

    Developed various application for Hydro-information system (HIS) of Serbia. Apps include: computer simulations, data visualization, 2D graphics, and so on.