We propose the first routing engine for computing driving directions in large-scale road networks that satisfies all requirements of a real-world production system. It supports arbitrary metrics (cost functions) and turn costs, enables real-time queries, and can incorporate a new metric in less than a second, which is fast enough to support real-time traffic updates and personalized cost functions. The amount of metric-specific data is a small fraction of the graph itself, which allows us to maintain several metrics in memory simultaneously. The algorithm is the core of the routing engine currently in use by Bing Maps.