discussion / Software and Mobile Apps  / 14 September 2018

Looking for a front-end developer for the AI for Earth call for project

In the context of the AI for Earth call proposal by Microsoft and National Geographic (1), I am looking for a front-end developer wishing to collaborate on a project aiming to develop an open-source tool for the annotation (2) and exploration of environmental acoustic data (with future extension to more environmental data) to feed scientific and educational applications.

The grant can be used for project members compensation, so if the project is selected this would be a paid project. For now I need help to estimate the budget needed for the front-end development to submit the proposal. The deadline for the proposal is the 8th of October and the project is supposed to start on the 1st of January 2019 and be finished on the 31st of December 2019.

I, Julien Ricard (3), am a data scientist and software developer with expertise in bioacoustics and a strong interest in conservation technology. I would develop the machine learning part and the backend (in Python, probably with Flask). Current partners include an ornithologist and the mayor of a small town strongly involved in conservation in the South of France and they will help selecting species of interest and deploying the system on site.

The tool will include:

  • A structured database to store the audio recordings and related data (recording location, format, timestamp, annotations, sensor reference…)
  • An ergonomic interface (UI + RESTful API) to manage (add/delete/modify) data in the database and export them to structured data format (e.g. JSON)
  • An audio player featuring spectrogram visualisation and an annotation interface (selection of an audio segment to add labels on it). It could be based on BAT (https://github.com/BlaiMelendezCatalan/BAT), based itself on wavesurfer.js.
  • Search engine to retrieve data (e.g. from location rectangle, dates, species given in the annotations…)
  • Data visualisation: maps, basic plots of spatio-temporal data, other type of visualisations to be defined that could help getting insights on data dynamics.
  • User management (authentication, profile page…)

Skills needed:

  • Expertise in front-end development (javascript, HTML, CSS, npm...)
  • Knowledge of Jinja template library (used by Flask to render HTML) would be great
  • Understanding and application of programming best practices: version control (git), documentation, tests, coding conventions…

Contact: [email protected]

 

(1) https://www.nationalgeographic.org/grants/grant-opportunities/ai-earth-innovation/

(2) An annotation is one or more labels associated to a segment of audio data, defined by an audio file id, a user id, start and end times, a set of labels (e.g. species: Common Redshank, quality: medium)

(3) http://www.linkedin.com/in/julien-ricard-4374328/