**Company Description**
VinSmart Future (VSF) is the leading technology company within the Vingroup Corporation, formed by the merger of the group's entire technology ecosystem, including VinApp, VinIT, VinBigdata, and other tech units. As a core driver of Vingroup's future growth, VSF is at the forefront of technological development, with artificial intelligence (AI) as its foundation. With a talented team of nearly 4,000 local and international technology experts, VSF focuses on creating high\-utility technologies that enhance lives and connect data, models, and infrastructure to unlock new possibilities.
**Responsibilities**
- Design and ship feature modules in Kotlin and Jetpack Compose, from API contract to release.
- Define the public surface of your module — what other teams may call, and what stays internal.
- Migrate RxJava flows to Coroutines and Flow, keeping Rx and Coroutines working side by side during the move.
- Cut cold start time, build time, and app size, and prove the change with a measurement.
- Extend the host shell so partner and internal teams can plug features in without touching our code.
- Review designs and code, and write the decision down: what we chose, why, and what we rejected.
**Requirements**
Experience
- 5\+ years building Android apps in Kotlin, shipped to production.
- At least 2 years in a codebase where more than one team commits to the same app.
Kotlin and async
- Coroutines and Flow in production: structured concurrency, cancellation, scopes, StateFlow vs SharedFlow , cold vs
- hot streams, back pressure.
- RxJava or RxKotlin in production: Observable vs Flowable , schedulers, disposal, and the common leak causes.
- You can convert an Rx chain to Flow and name where the behavior differs.
UI
- Jetpack Compose in production: state hoisting, recomposition scope, stability and skipping, remember vs
- rememberSaveable , side\-effect APIs, Modifier order.
- Compose navigation, deep links, and screen\-level state that survives process death.
- Material 3 theming and a shared design system; layouts that adapt to phone, tablet, and foldable.
- Accessibility basics: content description, touch target size, dynamic font scale.
Architecture
- Clean Architecture with MVVM or MVI. You can say where a rule belongs — view model, use case, or repository — and defend it.
- Unidirectional data flow, explicit UI state model, explicit error model.
- Dependency injection with any of Hilt, Dagger 2, Anvil, Koin, or Kodein: scopes, graph shape across modules, and the startup cost of that graph.
Scale
- A multi\-module codebase: module boundaries, api vs implementation , and how to stop a shared module from
- becoming a dumping ground.
- Gradle Kotlin DSL and version catalogs; you can read and fix a build file.
- Testing as a habit: unit tests for domain logic, fakes over heavy mocks, Compose UI tests on critical paths.
Data
- Retrofit or Ktor, OkHttp interceptors, kotlinx.serialization or Moshi.
- Local storage with Room or DataStore, plus a cache and offline strategy you can explain.
Strong plus
These separate a good candidate from the one we hire fastest. You do not need all of them.
*Build and modularization at scale*
- Gradle convention plugins, composite builds, KSP, configuration cache, remote build cache.
- Dependency\-graph rules enforced in CI, not by convention.
- Measured build\-time work: a number before and after.
*Runtime performance*
- Baseline Profiles and Startup Profiles, Macrobenchmark, Perfetto or the Android Studio profiler.
- Cold start, jank and frame timing, memory leaks (LeakCanary), R8 rules, app size and Play delivery.
- Reduced ANR rate or crash rate with a named root cause.
*Superapp platform work*
- A host shell with pluggable features: feature registry, entry\-point contract, versioned API between host and feature.
- Mini\-app or partner integration: sandboxing, an API bridge with a permission model, and containment when a plugin misbehaves.
- Dynamic feature delivery, remote config, feature flags, staged rollout, kill switch.
- SDK or internal library design: source and binary compatibility, deprecation path, migration guide.
*Quality engineering*
- Turbine for Flow tests, Robolectric, screenshot tests (Paparazzi or Roborazzi), macrobenchmark running in CI.
- CI/CD for Android: build matrix, signing, release train, automated regression gates.
*Nice to have*
- Kotlin Multiplatform or Compose Multiplatform; shared logic with iOS.
- Interop with Flutter or React Native modules inside a native host.
- gRPC or protobuf; WebSocket or long\-lived connections; real\-time sync and conflict handling.
- Security work: Android Keystore, encrypted storage, certificate pinning, tamper or root checks, obfuscation. Payment, KYC, or wallet flows.
- On\-device ML: ML Kit, Gemini Nano, or a similar on\-device model.
- Wear OS, Android Auto, TV, or another surface of the same product.
- Open\-source work, conference talks, or public writing on Android architecture.
**Benefits**
- Attractive compensation and bonus packages, highly competitive in the market.
- Exclusive employee benefits across the Group’s ecosystem in accordance with company policies.
- Opportunity to work on large\-scale and strategic technology projects.
- Professional technology environment with leading scientists, experts, and engineers from top technology companies in Vietnam and around the world.
- Free access to learning platforms such as Udemy, Coursera, and O’Reilly; internal workshops; sponsorship for professional certifications; and exclusive mentoring programs from the Group and Company leadership team.
- Full statutory insurance coverage in accordance with Vietnamese Labor Law (Social Insurance, Health Insurance, Unemployment Insurance), along with private healthcare insurance based on job grade and annual health check\-ups at reputable hospitals and healthcare centers nationwide.
- Participation in internal activities, team\-building programs, and annual company events.
**Working hours**
Flexible check\-in 8:30 AM \- 9:30 AM \& check\-out 5:45 PM \- 6:45 PM (Monday \- Friday \& 2 remote Saturdays/month.)
Location: Gia Lam, Hanoi
Contact: Ms. Huyền Zalo/Call: 0963 957 235