For Employers

Alliance Bioversity & CIAT

Android Developer Consultancy: In-App Plot Imaging for Ona

Posted 8 hours ago
5-10 years experience
Apply Now

Please mention DailyRemote when applying

?
Resume Match Score

See how much of this job your resume covers, and what’s missing.

Want a recruiter to go through it line by line?

Get professional review

Create a cover letter for this job

Upload your resume and we draft a letter for this exact role, tailored to what it asks for.

  • Tailored to this role
  • Based on your resume
  • Fully editable
AI Summary

Assess and prototype multiple approaches for capturing whole-plot images, recommend a solution based on field testing, and implement it in the Ona Android app with plot-linked metadata. Validate the feature with breeding teams, then deliver maintainable code, documentation, tests, and a handover.

THE ORGANIZATION
The Alliance of Bioversity International (www.bioversityinternational.org) and the International Center for Tropical Agriculture (CIAT) (www.ciat.cgiar.org) delivers research-based solutions that harness agricultural biodiversity and sustainably transform food systems to improve people’s lives. Alliance solutions address the global crises of malnutrition, climate change, biodiversity loss, and environmental degradation.
With novel partnerships, the Alliance generates evidence and mainstreams innovations to transform food systems and landscapes so that they sustain the planet, drive prosperity, and nourish people in a climate crisis.
The Alliance is part of CGIAR, a global research partnership for a food-secure future.

1. Background:
The Alliance of Bioversity International and CIAT seeks a senior Android developer for a 3-month consultancy. The goal is to capture a whole-plot image inside the Ona app, so breeders no longer switch to the phone's native camera.
Ona is a mobile and web digital phenotyping tool for on-station breeding teams in Sub-Saharan Africa. It runs at Alliance sites and with national partners such as TARI in Tanzania, Uganda and Malawi. Ona covers common bean, cowpea and sorghum, with more crops coming. Breeders use an Android phone, often mounted on the Bruno physical aid, to image plots. Machine-learning models then extract traits such as plant stand, flower count and pod count.
Plant stand (number of established plants per plot) is measured from one image of the full plot. A standard plot row is about 4 m long. Today this image is a panorama taken with the phone's native camera app.

2. Problem statement
The panorama step breaks the Ona workflow: users leave Ona, take the panorama in the native camera, then return and link the image to the right plot. This adds time and errors at scale.
• Time. Switching between apps adds time to every plot, which adds up across large trials.
• Data integrity. Images taken outside Ona can be linked to the wrong plot, lost, or saved without Ona metadata (plot ID, GPS, timestamp, device, capture settings).
• Inconsistency. Native panorama behaviour, resolution and stitching differ by phone brand and Android version. This makes model input less consistent.
• Hard to build. Two Ona developers looked at in-app panorama capture. Android has no standard panorama API, and real-time stitching on low- and mid-range phones is hard. They concluded it needs specialist skills.
We are not tied to panorama. The need is one reliable, plot-linked image (or image set) from which plant stand can be counted for a ~4 m plot.

3. Objective
Deliver a production-ready, in-app whole-plot capture feature in the Ona Android app, so a user can image a ~4 m plot without leaving Ona and the result is good enough for automated plant-stand counting.
Specific objectives:
1. Assess and prototype at least three capture approaches (section 4) and recommend one, based on field evidence.
2. Build the chosen approach into the Ona app, linked to Ona's plot registration and metadata.
3. Validate it on target devices and in the field with Ona breeding teams.
4. Hand over clean, documented, maintainable code to the Ona team.

4. Scope of work
The consultant will start open on method, test the options below, and commit to one by the end of month 1. The consultant may propose other options.

Option How it works Main strengths Main risks
A. In-app panorama, on-device stitching Guided sweep in Ona's camera screen (e.g. CameraX), live overlap guide, stitched on the phone (e.g. OpenCV) Works offline; instant result to check Heavy on low-end     phones; stitch errors from wind or uneven sweep
B. In-app guided multi-frame capture, cloud stitching Ona captures overlapping frames with sensor data (gyroscope, accelerometer); stitched on the server after sync Light on the phone; stronger stitching on the server No result until sync; poor connectivity at field sites
C. Short video sweep 3–5 s video of the plot; server extracts frames, then stitches or counts plants with tracking Fast and simple for the user Large files; motion blur; needs a counting or tracking pipeline
D. Stitch-free counting Overlapping frames counted one by one; duplicates removed by tracking or position Avoids stitching artefacts Needs model and pipeline work with the Ona ML team
E. Single wide shot Ultra-wide lens or a higher Bruno mount to fit the plot in one frame Simplest workflow Not all phones have ultra-wide; distortion and lower detail at plot ends

Tasks:
• Review the current Ona capture flow, codebase and the panorama work done by the Ona developers.
• Build quick prototypes for the most promising options and test them on the target devices.
• Compare options on capture time, stitching or counting success rate, image quality for plant-stand models, phone load (memory, battery, heat), offline behaviour and data size.
• Agree the chosen approach with the Ona product and ML teams.
• Build the chosen approach into the Ona app, including any server-side component if needed.
• Support at least one field validation round with an Ona breeding team.
Out of scope: training new plant-stand models, and redesigning Ona features outside plot capture.

5. Technical requirements
The solution must meet these requirements:
• No app switching. The full capture happens inside Ona and is linked to the active plot automatically.
• Whole plot. The output covers the full ~4 m plot row at a resolution the plant-stand model can use.
• Speed. Capture plus review takes no longer than today's panorama step, with a target of under 20 s per plot.
• Devices. Works on the mid- and low-range Android phones used by Ona teams.
• Offline first. Capture works with no network. Any server step runs after sync and does not block the user.
• Field conditions. Works in bright sun, wind and uneven terrain, with the phone handheld or on the Bruno aid.
• Feedback. The user sees a clear guide during capture and a quality check after (e.g. failed stitch, blur, missing section), with a quick retake.
• Metadata. Each image keeps plot ID, timestamp, device and capture settings in Ona's existing data model.
• Fit with the Ona stack. Code follows Ona's Android architecture and standards [stack details shared at onboarding]. Any cloud component fits Ona's existing backend and image pipeline.
• Open licences. Third-party libraries must allow use in a publicly funded, non-commercial tool.

Requirements

6. Deliverables and timeline
The consultancy runs 3 months (about 60 working days), in three phases with a go/no-go point at the end of month 1.
# Deliverable Due

# 

Deliverable 

Due 

D1 

Inception note: review of the current flow and earlier attempts, test plan, device list 

Week 2 

D2 

Options report with working prototypes, test results and a recommended approach, agreed with the Ona team 

Week 4 

D3 

Beta build in the Ona app, with any server component, ready for field testing 

Week 9 

D4 

Field validation report: capture time, success rate, image quality for plant-stand counting 

Week 11 

D5 

Final release merged into the Ona codebase, technical documentation, tests and a handover session 

Week 12–13 


Fees are paid in three instalments, each on acceptance of the linked deliverables: 

Payment 

Linked deliverables 

Share of fee 

1 

D1 + D2 

30% 

2 

D3 

35% 

3 

D4 + D5 

35% 

If no option meets the requirements at D2, the Alliance and the consultant will agree a revised plan or close the consultancy after D2. 



7. Qualifications and experience
The consultant must show shipped Android camera and image-processing work, not only general app development.
Required
• 5+ years of native Android development (Kotlin; Java a plus).
• Shipped at least one app with a custom camera feature using CameraX or Camera2.
• Hands-on image stitching, panorama or computer-vision work (e.g. OpenCV, feature matching, homography, image registration).
• Use of phone sensors (gyroscope, accelerometer) for capture guidance or motion tracking.
• Performance tuning on low- and mid-range Android phones (memory, battery, heat).
• Offline-first apps and background sync.
• Fluent written and spoken English.

Desirable
• Server-side image processing (Python, OpenCV, cloud functions) or video frame extraction.
• On-device ML (TensorFlow Lite, ML Kit, ONNX) or object tracking.
• Native code with the Android NDK (C++).
• Experience in agriculture, field data collection or apps used in Sub-Saharan Africa.
• Work on open-source or publicly funded projects.
Applicants should include links to code, apps or demos that show camera or stitching work.

8. Working arrangements
• Reporting. The consultant reports to the Head of Product, and works daily with the Ona Android developers and ML team.
• Location. Remote.
• Rhythm. Weekly progress call; code reviewed through Ona's repository and pull-request process.
• Equipment. The Alliance gives access to the codebase, test devices or device list, sample plot images and the Bruno aid where needed.
• Intellectual property. All code, documentation and data produced belong to the Alliance and may be released under an open licence.
• Data. The consultant follows Alliance data-protection and data-sharing policies.
• Fees. Paid per deliverable on acceptance (section 6). 

Benefits

9. How to apply
Attach the below documents alongside your application.
1. CV, highlighting Android camera, stitching and computer-vision work.
2. Portfolio links: apps, repositories or demo videos of similar features.
3. Financial proposal: daily rate and total fee for about 60 working days.

Shortlisted applicants will have a technical interview with the Ona team, which may include a walk-through of past camera or stitching code.

Applications
Applicants are invited to visit  https://www.bioversityinternational.org/jobs/ to get full details of the position and to submit their applications. Applications MUST include Ona in-app plot imaging consultancy as the position applied for.
Application including CV, technical proposal, and financial proposal should be saved as one document using the candidate’s last name, first name for ease of sorting.
Note: The Alliance does not charge a fee at any stage of the recruitment process (application, interview meeting, processing or training). The Alliance also does not concern itself with information on applicants' bank accounts.

Applications closing date: 30 October 2026
Please note that email applications will not be considered.
Only short-listed candidates will be contacted.
We invite you to learn more about us at:



Automatically Apply to the Best Remote Jobs

Stop the endless job search. Our AI finds and applies to the best jobs for you.

Try it Now
Keep looking

Similar Jobs

See all Remote Software Development jobs →

FIU Fraud Data Analyst (Remote)

Full Time United States $87282 - $139K per year Software Development

Senior Software Engineer

Full Time United States $150K - $180K per year Software Development

Senior HR Data Analyst

Full Time United States $70 - $77 per hour Software Development

Business Analyst III ATI (Contract Talent)

Full Time, Freelance, Contract United States $45.19 - $66.35 per hour Software Development

Lead Application Developer

Full Time India Software Development

AR Specialist

Full Time United States Software Development
Apply Now

Personalize your Remote Job Search in 3 Easy Steps!

Featuring 222,343+ Jobs in Android Developer

Answer easy questions

Answer easy questions

222,343+ jobs across 15+ categories

Get your best job matches

Get your best job matches

Only hand-screened, legit jobs

Find a remote job faster

Find a remote job faster

No ads, scams, or junk

“I was the first applicant for a remote marketing position that got listed on the company website the same day I applied. Had an interview within 48 hours!”

Sarah J. — Sarah J. · Marketing Manager ★★★★★ Verified