{"id":1437937,"url":"https://alion.io/job/snappy-shopper-android-developer","title":"Android Developer","company":{"id":1875596,"name":"Snappy Shopper","domain":"snappyshopper.co.uk","url":"https://alion.io/company/snappyshopper","size_band":"51-200","is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"Teamtailor","truth_index":null},"role":"Mobile","role_family":"Mobile","seniority":null,"employment_type":"full_time","work_mode":"remote","remote_scope":"stated_countries","remote_scope_basis":"posting_text","remote_working_hours":null,"hiring_geo_confidence":"inferred","locations":[],"countries":[],"hiring_countries":["GB"],"hiring_countries_total":1,"salary":null,"salary_estimate":null,"experience_years_min":null,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"Agile","optional":false},{"name":"Clean Architecture","optional":false},{"name":"Crashlytics","optional":false},{"name":"Dagger","optional":false},{"name":"Firebase","optional":false},{"name":"Hilt","optional":false},{"name":"Java","optional":false},{"name":"Jetpack Compose","optional":false},{"name":"JUnit","optional":false},{"name":"Koin","optional":false},{"name":"Kotlin","optional":false},{"name":"Kotlin Coroutines","optional":false},{"name":"Mockito","optional":false},{"name":"MockK","optional":false},{"name":"Room","optional":false},{"name":"Scrum","optional":false},{"name":"WebSockets","optional":false},{"name":"WorkManager","optional":false}],"status":"live","first_seen_at":"2026-09-22T14:18:26Z","employer_posted_date":"2026-09-22","last_verified_at":"2026-09-29T10:31:30Z","board_verified":true,"closed_at":null,"days_open":7,"trust":{"level":"ok","repost_count":null,"flags":[],"days_open":7},"description":"About Us\nSnappy Shopper is the UK’s fastest-growing quick commerce (Q-commerce) platform powering rapid grocery delivery from local convenience stores. We enable independent retailers and major partners, including SPAR, Nisa, Premier, Co-op and others, to digitally transform their business by offering same-day and rapid delivery of food, drink and everyday essentials within as little as 30-60 minutes. Customers on our platform typically spend significantly more online than in-store, helping retailers grow revenue and deepen community engagement.\nWe’re more than a delivery app, we’re a technology partner for local high streets, providing tools for digital sales, marketing solutions, and integrations that help retailers compete with larger online players.\nAt Snappy Shopper, we’re committed to innovation, retail empowerment and community impact, helping stores thrive digitally, offering exceptional local convenience to customers, and shaping the future of on-demand retail in the UK.\nOur location\nWe are a UK company with colleagues across the country and offices in Dundee and Edinburgh. This is a fully remote role, with occasional opportunities to connect with colleagues in person.\nAbout the team\nYou'll join our Android team, working closely with Product, Engineering and customer-facing colleagues across the business.\nOur Android estate is broader than a single consumer app.\nSnappy Shopper is our consumer ordering app, built in Kotlin with Jetpack Compose, Coroutines and Flow.\nOrder Manager receives orders in-store and supports picking, substitutions, refunds, receipt printing and driver assignment.\nSnappy Picker is used by store and warehouse teams to scan and pick products and manage gaps and substitutions.\nOrder Manager and Snappy Picker also mean working with older Kotlin, RxJava2 and XML codebases running on rugged hardware in thousands of stores, often over patchy connectivity and in sessions lasting all day. Here, reliability matters more than pixel polish.\nAbout the role\nAs an experienced Android Developer, you’ll combine strong hands-on Android development with the independent technical judgement and ownership.\nDay-to-day, you will:\nDesign, build and maintain Android features across Snappy Shopper, Order Manager and Snappy Picker.\n\nWork with other Android developers and wider stakeholders to turn business requirements into clear technical approaches and deliverables.\n\nMake sound technical decisions, considering architecture, reliability, maintainability and the wider impact of your implementation.\n\nTake ownership of the quality and completeness of your solutions before they reach review.\n\nReview other developers’ code and contribute constructively to technical discussions.\n\nTroubleshoot existing Kotlin and legacy Java code and help resolve complex production issues.\n\nWork pragmatically, recognising when something needs solving properly now and when improvement is better left for another day.\n\nTo be successful, you'll have:\nWe’re looking for someone with strong level of Android capability rather than a checklist of every technology we use.\nYou’ll bring strong modern Kotlin experience, including reviewing other developers’ Kotlin and contributing meaningfully to PR discussions.\nYou’ll also have:\nProduction experience with Jetpack Compose.\n\nStrong experience with Coroutines and Flow.\n\nHilt, Dagger 2 or Koin experience, with a good understanding of dependency scoping.\n\nExperience working with multi-module Clean Architecture, where architecture and code-quality standards are enforced through tooling and CI.\n\nA strong unit-testing habit, using technologies such as JUnit and MockK/Mockito.\n\nExperience with collaborative development, version control and code review.\n\nExperience working within an Agile/Scrum environment.\n\nOur apps currently ship at minSdk 24-26 and targetSdk 35-36.\nWe’d also like you to have done at least one of these:\nWorked with RxJava2, including good disposal discipline.\n\nShipped a hardware integration using a vendor SDK, AIDL service, Bluetooth device or partner-app Intent.\n\nShipped realtime functionality using WebSockets, including fallback and dead-connection handling.\n\nWorked with custom Dagger scopes or subcomponents with explicit teardown.\n\nExposure to XML/ViewBinding, Room, Crashlytics, payment SDKs, Firebase Remote Config, WorkManager, Bluetooth printing or similar technologies is useful, but isn't essential.\nAnd there are things we don't expect you to know before you arrive. You'll learn our store domain and the hardware behind it, including Sunmi POS devices and scanners, PayPoint terminals, Zebra scanners and Bluetooth label printers.\nWho you are\nCommunity: You collaborate well, share knowledge and help others reach better technical solutions.\n\nBe Snappy: You work at pace, adapt to changing priorities and take ownership of delivery.\n\nBreaking Barriers: You use sound technical judgement to solve difficult problems and aren't afraid to constructively challenge an approach when there's a better one.\n\nCraic on: You communicate clearly, build trusted relationships and enjoy working with technical and non-technical colleagues.\n\nWhat’s in it for you\nJoining Snappy as an Android Developer means working on more than another consumer mobile app.\nYou'll work across modern Compose development and established applications that sit at the heart of day-to-day store operations. You'll encounter interesting challenges around reliability, hardware, payments, realtime communication and applications operating in imperfect real-world conditions.\nYou'll have autonomy in how you solve problems, the opportunity to influence our Android engineering approach and a team that values good judgement as much as technical knowledge.\nWe offer a competitive salary, flexible remote working and ongoing opportunities for learning and development.\nApplying\nWe want our recruitment process to give you (and us) a proper opportunity to understand whether the role is the right fit.\nFollowing an initial application review, selected candidates will have an introductory conversation with our Engineering team to discuss your experience, the role and Snappy's Android environment.\nCandidates progressing from there will take part in practical technical sessions involving different Android development scenarios and live coding exercises, giving us the opportunity to understand how you approach problems, write and work with code, make technical decisions and respond as requirements or constraints evolve.\nWe welcome applications from people of all backgrounds and are committed to inclusive recruitment.\nPlease note that due to the volume of applications we receive, we’re only able to contact candidates who are selected to progress to the next stage.","description_format":"text","description_chars":6751,"description_truncated":false,"requirements":{"experience_years_min":null,"management_years_min":null,"team_size_min":null,"manages_managers":false,"education":null,"security_clearance":false,"languages":[]},"benefits":[],"hiring_locations":[{"name":"United Kingdom","iso":"GB","kind":"country"}],"hiring_excludes":[],"relocation_offered":false,"industries":["Consumer Goods","Delivery"],"lifecycle":[{"event":"open","at":"2026-09-29T04:02:03Z"}],"liveness":{"score":95,"band":"hot","label":"Hiring now","p_open":1,"p_active":0.946,"p_room":1,"age_days":6,"expected_fill_days":43,"reasons":["conf:1","urgency","win:early"],"computed_at":"2026-09-29T05:45:00Z"},"pay":null,"html_url":"https://alion.io/job/snappy-shopper-android-developer","json_url":"https://alion.io/job/snappy-shopper-android-developer.json","meta":{"generated_at":"2026-09-30T02:28:25Z","cache_seconds":300,"methodology":"https://alion.io/methodology","terms":"https://alion.io/terms","contact":"https://alion.io/contact","api":"https://alion.io/developers","usage":{"tier":"crawler","counted_by":"address","units_charged":1,"used_today":1679,"day_limit":5000,"remaining_today":3321,"minute_limit":60,"resets_at":"2026-10-01T00:00:00Z"}}}