Select Page

Data/Geospatial Engineer

Remote or On-Site

Responsibilities

  • Help to design and implement a circular routing algorithm that generates A-to-A walking routes tailored to a user’s step count or distance goal. The solution should leverage Valhalla’s graph traversal and routing capabilities, while accommodating dynamic distance constraints.
  • Extend Valhalla’s default routing behavior beyond point-to-point and Travelling Salesman Problem (TSP) routing to support flexible looped routes that begin and end at the same location. This may involve customising routing profiles, cost functions, or graph traversal strategies.
  • Incorporate spatial heuristics and routing rules that help diversify or personalise routes (e.g., avoiding retracing paths, favouring varied loop geometries, optimising for user satisfaction or scenic value).
  • Integrate historical user data in the form of heatmaps and user ratings to inform route generation—biasing routing decisions toward paths commonly walked or preferred by users. This will likely require spatial analysis techniques and a strategy for translating heatmap density into route preference weights.
  • Lay the groundwork for contextual routing enhancements, such as incorporating environmental data like weather conditions, time of day, seasonal changes, flood zones, and lighting availability. You will advise on relevant datasets and help prototype how they could influence routing decisions dynamically.
  • Participate in the ingestion and preprocessing of OSM tile data on a regular basis, ensuring the graph representation used by Valhalla supports all required features for advanced routing (e.g., surface types, elevation, pedestrian access).
  • Optimise for performance and scalability by managing memory, caching, and preprocessing steps—especially as the volume of user data and route complexity grows.
  • Write clear, maintainable, and well-documented code to support long-term maintainability and integration into a mobile application ecosystem.