Routing engine is one of the key components of the Automotive Navigation SDK. It provides a family of routing algorithms employing heuristics fitting each scenario best: resource constrained embedded vs cloud that could benefit from more resources as well as more information such as real time traffic or precomputed routes, car routing vs truck routing or pedestrian or public transit.
To assure smooth user experience and adapt in real time, the routing engine works closely with the user guidance graphical and voice interfaces, and online traffic information service.
The SDK is in use by world leading automotive brands for many years, so the scope of work is both maintenance as per real world scenarios as well as development for the future of automotive industry: electric cars, autonomous driving, etc.
Technically, the Routing engine is a C++14 cross platform library (primarily targeting Linux) excessively covered with automated tests at multiple levels: unit, map integration, user scenario acceptance. BDD-style acceptance tests make use of Python and Cucumber framework. Cross component integration within the SDK is ensured with mandatory Gerrit peer code reviews and verified with central CI and CD pipelines.