Upplabs

Joined in 2018
There are two unique features of UppLabs we cherish. And we do not talk about professional level, technical skills, or experience – these are obvious qualities. Talking about these special 2, we mean the company’s organizational structure and company’s values.
  • · 122 views · 31 applications · 3d

    Senior Android Developer (Contract)

    Part-time · Full Remote · Countries of Europe or Ukraine · 5 years of experience · English - B1
    Location: Remote (Contract) Language: English – B1+ Level: Senior Engagement: Contract (8–12 weeks, possible extension up to 3–4 months; Full-time or Part-time, main focus — meeting the project deadline) ⏰ Start: ASAP Project Overview This is an...

    📍 Location: Remote (Contract)

    🗣 Language: English – B1+

    💼 Level: Senior

    👥 Engagement: Contract (8–12 weeks, possible extension up to 3–4 months; Full-time or Part-time, main focus — meeting the project deadline)

    Start: ASAP

    🏢 Project Overview

    This is an internal project at UppLabs. We are looking for a Senior Android Developer to work on an Android Digital Signage network for retail.

    The project includes:

    • Android Player App running in kiosk mode on dedicated screens
    • Scheduled media playlists (video/images) playback
    • Offline-first caching: download media, validate integrity, manage storage cleanup
    • Remote device management and monitoring
    • Close collaboration with backend and frontend teams for smooth integration

    The role is focused on delivering the MVP/Pilot phase with a clear deadline of 3–4 months. This is a contract role, either Full-time or Part-time, with the main goal being project completion within the timeline.

    ✅ Technical Stack

    • Android: Kotlin, AndroidX
    • Media Playback: ExoPlayer / Media3
    • Architecture: MVVM / Clean Architecture (preferred), Coroutines + Flow
    • Background Work: WorkManager, Foreground Services (if required)
    • Networking: Retrofit / OkHttp
    • Storage: Local caching (files), checksum validation
    • DI: Hilt / Dagger
    • Backend Integration: REST APIs over HTTPS, JWT-based device authentication
    • CI/CD: GitHub Actions, Gradle
    • Monitoring / Crash Reporting: Firebase Crashlytics / Sentry (optional)

    🎯 Ideal Candidate

    • 5+ years of professional Android development experience
    • Experience with kiosk mode / lock task mode
    • Strong understanding of offline-first architecture and caching
    • Experience with media playback on Android (ExoPlayer / Media3), including video rendering performance and device codec differences
    • Experience integrating with REST APIs and device authentication
    • Experience with background processing tools (WorkManager, Foreground Services if required)
    • Debugging and performance profiling skills (memory leaks, playback issues, ANRs)
    • Ability to write clean, maintainable code and follow architecture best practices

    Nice to Have:

    • Android Enterprise / Device Owner provisioning
    • MDM deployments or Private Play Store distribution
    • Real-time device monitoring / IoT-like systems
    • Familiarity with crash reporting and remote diagnostics (Firebase Crashlytics, Sentry, etc.)
    • OTA update strategies for Android fleets

    🛠 Responsibilities

    • Develop the Android Digital Signage Player App (Kotlin)
    • Implement kiosk mode / lock task mode reliably on multiple devices
    • Auto-start on boot and recovery mechanisms for unattended devices
    • Build a media playback engine for videos and images (playlists, loops, transitions)
    • Offline-first caching and storage management
    • Integrate with backend APIs: device registration/pairing, heartbeat/status reporting, playlist synchronization, remote commands (refresh/reboot)
    • Ensure performance and reliability for long-running playback sessions
    • Collaborate with backend and frontend teams to define API contracts and ensure smooth integration
    • Support testing, debugging, and pilot deployment on real devices

    🚀 Hiring Process

    1️⃣ Screening with recruiter

    2️⃣ Technical interview

    3️⃣ Offer

    More
Log In or Sign Up to see all posted jobs