Dr. Branislav Kordić

Dr. Branislav Kordić is a Certified instructor at the NIT Institute and a Functional Owner at TTTech Auto AG.

Branislav Kordić graduated and received the BSc, MSc, and PhD degrees in Electrical and Computer Engineering from the Faculty of Technical Sciences, University of Novi Sad, Serbia, in 2012, 2013, and 2020, respectively.

With over a decade long hands-on practice, Dr. Kordić gained significant experience both in the industry and the acdemia. Professional career in the industry was started back in 2012, at RTRK LLC (Novi Sad, Serbia), where he has been involved in projects related to design and implementation of embedded and real-time systems. Last few years in TTTech Auto AG (Vienna, Austria) has been engaged into automotive projects for worldwide OEMs, with a focus on ensuring safety platform for developing and deploying ADAS/AD applications and SDVs. Regarding the academia experice, during the course of seven years, Dr. Kordić was involved as teaching assistant at the Faculty of Technical Sciences, Novi Sad, Serbia. Since 2020, he become a member of NIT Institute.

As the Certified instructor at the NIT Institute, he regularly gives trainings on software development with AUTOSAR, Modern C++, Rust, and Test-Driven Development (TDD).

He authored more than 25 publications published on international conferences and journals.

Dr. Kordić is passionate about engineering complex embedded systems applying and exercising industry-proven standards and development methods.

References

  • Kordić Branislav, Popović Miroslav, Silvia Ghilezan: "Formal Verification of Python Software Transactional Memory Based on Timed Automata"; Acta Polytechnica Hungarica, Journal of Applied Science; Vol: 16, Br: 7, Str: 197-216, ISSN: 1785-8860; Óbuda University, Hungarian Academy of Engineering and IEEE Hungary Section.

  • Branislav Kordic, Marko Popovic, Miroslav Popovic, Moshe Goldstein, Moshe Amitay, David Dayan: "A Protein Structure Prediction Program Architecture Based on a Software Transactional Memory"; Proceedings of the Sixth Conference on the Engineering of Computer-Based Systems, 2019, Bucharest, Romania. DOI: https://doi.org/10.1145/3352700.3352701

Courses

Learn advanced object programming paradigms in C++ variants 11, 14, and 17.

This course teaches you how to use the advanced object programming paradigms in C++ variants 11, 14, and 17. The course builds on basic C++ knowledge that enables you to utilize constructs such as move semantics, lambdas, templates, etc. in their C++ software solutions. Thanks to these high-level OOP, C++ is great to model complex systems, such as autonomous driving systems in vehicles.

Course topics:

  • C++ language extensions (C++11, C++14, C++17), nullptr, auto, scoped enumerations, compile-time assertions, string literals
  • C++ better class design: override, final, implicitly-declared operations, =delete, =default, delegating constructors, explicit, user-defined literals (UDL)
  • Move semantics: move constructor, move assignment, the rule of five, rvalue references, perfect forwarding, forwarding references
  • Lambdas: function objects, lambda expressions, variable capturing, generic lambdas, return type deduction, usage with STL algorithms
  • Multithreading: threads, passing parameters to threads, thread joining, mutexes, locking, condition variables, semaphores
  • Templates: function templates, variadic templates, tuples, template specializations, type traits, if constexpr

Modules:

Requirements

Software: IDE with C++ compiler (e.g Visual Studio Code, CMake, and C++ compiler supporting C++11 dialect or later, such as clang, g++ etc.).
Hardware: Computer with an Internet connection, working speakers, and microphone.
Prior knowledge: Participants should have basic knowledge of programming in C++.