1 month ago
Remote, WorldwideSenior
Responsibilities
- Design, implement, and maintain shared Kotlin Multiplatform modules for POS business capabilities across Android and JVM/Desktop targets.
- Define repository, service, facade, DTO, and bridge contracts between Kotlin, platform-specific code, and the VueJS/TypeScript UI layer.
- Implement platform-specific Android and Desktop code using expect/actual patterns while keeping shared business logic platform-agnostic.
- Build offline-first flows with local persistence, caching, synchronization readiness, conflict handling, and explicit failure handling.
- Write automated unit and integration tests for domain rules, use cases, repositories, bridge contracts, and coroutine-based flows.
- Collaborate with frontend engineers, QA, product owners, and architects on contracts, requirements, and feature delivery.
- Participate in code reviews, refactor existing modules, communicate technical decisions, and mentor less experienced Kotlin developers.
Requirements
- 5+ years of Kotlin experience, including strong hands-on Kotlin Multiplatform delivery to at least two targets, preferably Android and JVM/Desktop.
- Strong understanding of Clean Architecture, layered domain/use-case/infrastructure/platform design, dependency inversion, and repository abstractions.
- Practical experience with Kotlin Coroutines and Flow, including structured concurrency, suspend APIs, state and event flows, cancellation, and error propagation.
- Experience with offline-first or local-first client architecture, including persistence, caching, synchronization, and conflict handling.
- Familiarity with dependency injection patterns, preferably Koin, including constructor injection, module composition, and test overrides.
- Strong testing discipline using Kotlin Test or equivalent, test doubles, and coroutine testing utilities.
- Experience integrating REST/OpenAPI-style services with typed DTO mapping, serialization, and resilient client communication.
- Comfort with Gradle Kotlin DSL, modular builds, and CI-friendly project structures.
- Effective communication and collaboration with frontend developers, QA, product stakeholders, and architects.
- Ability to use AI tools responsibly for productivity and decision support while critically validating outputs and owning final results.
- Android application development, lifecycle awareness, and platform integration experience are advantageous.
- Desktop JVM client experience, VueJS 3 and TypeScript familiarity, plugin or extensibility architecture experience, performance engineering, and POS, retail, payment, promotion, or hardware peripheral integration experience are advantageous.
Benefits
- Holistic wellbeing benefits covering physical, emotional, social, and work-life wellbeing.
- Medical benefits, gym support, personalized fitness options, team events, and access to the Healthy Habits Club.
- Flexible work-life arrangements through a one-size-fits-one approach.
- Hybrid work environment with opportunities for social connection and community activities.
Tech Stack
Categories
Mobile
