Mapbox Minsk R&D center (OOO MapData) is building a live location platform. Our maps represent the ever-evolving world, accessing, aggregating, and adapting anonymous data from millions of sensors and phones in real-time.
What We Do
Search is about location and it can be highly adjustable to the end-user use cases, like navigation routable points, along the route search, limited connectivity search, etc. We focus our efforts on relevance, geo-context optimisations, data conflation, merging offline and online solutions and measuring all of that with high-volume user feedback. Search is the key component of our solutions.
For more information, please visit our website.
What You’ll Do
Search interacts with many internal systems, making an opportunities to collaborate across the company. As a Senior C++ Engineer, you'll be responsible for designing, developing, and operating significant areas of our search services.
In this role, you can expect to:
- Write algorithms in C++ and (as you gain expertise) in Rust to build the best location search on the market, grow you search-specific knowledge and tech stack;
- Be on the cutting edge of a brand new search engine with the ability to experiment and improve without being held back by the old ways;
- Design and implement scalable services for our API and search engines, following and establishing best practices for deployment, resilience, and observability;
- Participate in end-to-end feature implementation within the larger search organization; review code and design documents, shepherd feature releases, and participate in an on-call rotation;
- Evaluate the quality, reliability, and capacity requirements of our user-facing search products and become a well-rounded owner of what you deliver;
- Work with product owners, sales engineering, and management to drive future product direction.
What We Believe are Important Traits for This Role
- Strong proficiency in C++ with 4+ years of experience and fair knowledge of the language specification, C++14/17 standard is appreciated;
- System architecture experience and understanding of architectural concepts;
- Knowing algorithms and data structures, ability to improve the service based on data analysis and performance profiling;
- Being excellent team player with the ability to work within a collaborative environment;
- Enthusiasm for learning and knowledge sharing, supported by mentorship experience and strong communication skills in English;
- Passion about programming and having a strong focus on performance aspects;
- Strong knowledge of the standard libraries;
- Implementation of automated testing platforms and unit tests;
- Proficient understanding of code versioning tools such as Git;
- Knowledge of writing a cross-platform code is appreciated.
What Would be a Huge Advantage to Have
- Experience engineering web services in at least one backend language, e.g. Node.js, Rust, Go, or Java;
- Experience building highly-available API services within container-based environments (e.g., Docker, ECS, Kubernetes, etc. on AWS);
- Proficiency implementing monitoring instrumentation, operational diagnostics, resolving customer issues, and continuous product improvement;
- Knowledge of operating systems and distributed systems (e.g., fault-tolerance, consistency, service discovery, etc.);
- A high-level understanding of mobile SDK development (iOS or Android).