Are you a talent looking for an opportunity to prove yourself? Please apply here, and explain why Maniva Digital should invest in you. 

We are a strategic digital product development and consultancy company that exists to solve critical issues that our customers face, regardless of size and complexity. We are a startup which, to you, means that you get a lot of responsibility from day one.

For more information or questions, please contact us at info@manivadigital.com.

Thank you for submitting your application. We will get back to you as soon as possible.

Black Mobile

Native Android

We are recruiting!

The Native Android Coding Challenge is carried for recruiting purposes.

We are currently looking for a Native Android Mobile Developer to complete our existing team.

Turn in the challenge and prove your ability, experience and creativity.


Challenge Overview

The challenge is concerned with gps navigation.

The challenge is part of a bigger app development scope, which includes search and navigate through routes (coordinate linestrings) in our backend. Our services are structured as serverless functions with AWS lambda and our endpoints are deployed via API Gateway. Our tech stack involves Java (Android), Python (Flask), AWS, Neo4j, and Maps/Mapbox. We are collecting and maintaining the majority of data on DynamoDB in AWS. We also provide insights into data via Neo4j. It will be highly important to understand the best practices when consuming REST and WebSockets. 

Other key features one would be expected to work on include authorization and user profiles, geolocation and navigation, rerouting, and chat services. However, the challenge we present is only concerned with gps navigation.

Challenge Requirements

  • You are able to show a user (yourself in this case) progressing through a route and reaching a destination as you move along a path. We would like a Turn-by-turn navigation. 

  • We will provide an endpoint you should use (see 'Challenge Reference'), while for design take inspiration from the App Waze. However, the challenge does not need to be in a specific design. The endpoint contains the origin and destination coordinates that we want you to use from a trail. You must make a POST request with the query given here:


   "query": "SL1_5 Brotorpet-Vesslarp.gpx"


This POST request is in reference to a GPX file name that was later converted into GeoJSON to store in our database. You post a trail name and will be given a response where there is a data object that is the origin and destination coordinates as arrays of latitude and longitude.  That is the data you will need to display in your mobile demonstration. 

Challenge Reference

Endpoint: POST https://gofq5sbkeh.execute-api.eu-north-1.amazonaws.com/dev/navigate-inside-trail

For details about the request and response for this endpoint, see the 'Postman example' image, at the bottom.

Successful Response Example: https://docs.google.com/document/d/1EvCZWVtMaj5EPT8d5eQYUsJ39kGxPzxABCEQ-_6-kvM/edit?usp=sharing

Submission Guidelines

To submit your work we require you to send an email to dev@manivadigital.com "RE: Native Android Code Challenge". 

For your application to be considered valid, the email must include:

  1. A GitHub repository link with an updated application in Java.

  2. A brief recorded demonstration of the functionality as detailed in the Challenge Requirements. You must be able to demonstrate with an Android emulator in Java. We are looking for native development only.


Code can, of course, be submitted as soon as possible.

Criteria for evaluation

  • No code redundancy (DRY principle)

  • Limited latency

  • Dynamic map functionality

  • The sooner the better (without compromising quality)


What’s next?

As soon as you submit your work, we will be communicating our feedback and informing you whether we want to proceed or not.

In case we agree to proceed, there will be a final interview, after which, you can expect to be working with us.    

Submit your challenge and be part of our Maniva journey!

Motherboard Installation

Postman example