Android TV & Flutter Developer

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Any

SALARY

5.00

HOURS PER WEEK

40

DATE UPDATED

Jun 29, 2026

JOB OVERVIEW

We are looking for a developer to complete an existing Android and Flutter application for a healthcare technology platform. The project is well underway with solid foundations already built.
Core skills required:
Android native development in Kotlin is the primary requirement. The senior-side app is built in Kotlin and this is where the majority of remaining work sits.
Flutter and Dart for the caregiver-side app which is already built in Flutter.
Android TV development experience is essential. This is the specialist skill that matters most and the first question we will ask any applicant. If you have not built specifically for Android TV or set-top box devices, this role is not suitable.
Firebase — Realtime Database, Authentication, and Cloud Messaging.
Agora RTC SDK for video calling. Experience with Agora is preferred though strong candidates familiar with WebRTC will adapt quickly.
Background services, foreground services, alarm scheduling, and Android battery optimisation handling.
Android system-level development including device policy management and overlay windows.
OpenAI API integration — already partially implemented, requires extension.
Nice to have:
Experience with HDMI-CEC on Android devices.
Experience building kiosk or locked-down device applications.
Prior work in aged care, healthcare, or assistive technology.

Please answer the below question to see if you are a good fit.
In this project the senior app runs on a KA2 Android TV device and must automatically wake the television and switch the HDMI input when a call arrives, then return to the previous input when the call ends. The senior does nothing at any point.
Can you describe specifically how you would implement this using Android's HdmiControlManager API? Which classes and methods would you use to send the CEC commands, and how would you handle the case where the television manufacturer's CEC implementation is non-standard or partially compliant?

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0150
Total Execution Time  0.0164
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,485,416 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Android-TV-Flutter-Developer-1675421
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0097 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0012   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1675421
 LIMIT 1 
0.0009   SELECT *
FROM `employers`
WHERE `employer_id` = 947855
 LIMIT 1 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1675421
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-11',ej.date_added) duration_daysDATEDIFF('2026-08-11',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-08-11',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1675421' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1675421 
0.0009   UPDATE employer_jobs SET hit_counts '***Jun-24-2026=2***Jun-25-2026=66***Jun-26-2026=60***Jun-27-2026=25***Jun-28-2026=22***Jun-29-2026=253***Jun-30-2026=39***Jul-01-2026=35***Jul-02-2026=24***Jul-03-2026=19***Jul-04-2026=10***Jul-05-2026=8***Jul-06-2026=13***Jul-07-2026=15***Jul-08-2026=8***Jul-09-2026=9***Jul-10-2026=16***Jul-11-2026=2***Jul-12-2026=4***Jul-13-2026=5***Jul-14-2026=6***Jul-15-2026=12***Jul-16-2026=9***Jul-17-2026=10***Jul-18-2026=3***Jul-19-2026=6***Jul-20-2026=2***Jul-22-2026=4***Jul-23-2026=6***Jul-24-2026=1***Jul-25-2026=8***Jul-26-2026=15***Jul-27-2026=14***Jul-28-2026=11***Jul-29-2026=17***Jul-30-2026=13***Jul-31-2026=17***Aug-01-2026=19***Aug-02-2026=13***Aug-03-2026=13***Aug-04-2026=12***Aug-05-2026=16***Aug-06-2026=9***Aug-07-2026=19***Aug-08-2026=21***Aug-11-2026=1' WHERE job_id'1675421'  
0.0020   UPDATE employer_jobs SET monthly_hits '***Jun-2026=467***Jul-2026=322***Aug-2026=123' WHERE job_id'1675421'  
0.0008   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1675421' AND status LIKE 'sent%' ORDER BY id DESC  
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1675421 
0.0004   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '947855'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0003   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)