Senior Kotlin / KMP Engineer
Senior Kotlin / KMP Engineer Desktop · Real-time · Ukrainian MilTech partner (GCF)
Наш партнер — український MilTech-стартап, що розробляє програмні рішення для перехоплення ворожих дронів. Місія — створювати технології, які захищають наше небо. Продукт — десктопний застосунок для наведення дронів-перехоплювачів: працює локально, в реальному часі, обробляє дані з радарів та інших сенсорів, стійкий до нестабільного/офлайн зв'язку.
Чому ця роль має місце зараз
Команда масштабується. Один з Senior Kotlin/KMP інженерів уже тримає значну частину складних архітектурних і real-time задач. Тепер, ми шукаємо другого сильного інженера-власника (не заступника і не Lead), який самостійно проєктує, реалізує і доводить до production складні ділянки продукту — і знімає залежність команди від однієї людини.
Технологічний стек
Kotlin Multiplatform, Compose Multiplatform, Decompose, Koin
Coroutines / Flow, структурована конкурентність
SQLDelight, Ktor
MAVLink
WorldWind — плюс, не вимога.
Що ви робитимете
Самостійно берете складну ділянку продукту (real-time потік, інтеграція, продуктивність або порівнянний за складністю архітектурний скоуп) від проблеми до production-релізу;
Приймаєте і документуєте архітектурні рішення (trade-offs, ADR де доречно);
Працюєте з даними реального часу: latency, reconnection, back-pressure, офлайн/retry-сценарії.
Розвиваєте UI на Compose Multiplatform і модульну архітектуру спільного коду;
За можливості та відповідно до security policy прагматично використовуєте AI/coding tools для прискорення роботи — з обов'язковою перевіркою та розумінням результату;
Працюєте в парі з іншим Senior-інженером команди: ділите скоуп, даєте і приймаєте рев'ю, без конкуренції за території.
Must-have
Сильний інженерний бекграунд і здатність самостійно занурюватись у складні предметні області — не лише знання Android API, фокус на Desktop;
Глибокий комерційний Kotlin: Coroutines/Flow, структурована конкурентність, cancellation — фундаментальне розуміння;
Production Kotlin Multiplatform досвід (production-реліз або серйозний, доведений PoC — точний поріг уточнюється, курси окремо не рахуються);
Production Compose for Desktop на Windows/Linux (або серйозний доведений PoC): білди/дистрибуція, Gradle targets, розуміння відмінностей desktop vs Android.
macOS — плюс;
Архітектура/системний дизайн: модульність, спільний код, навігація/стан (Decompose або порівнянний підхід), Ktor/WebSockets, SQLDelight, явні trade-offs;
Ownership до production: самостійно приймає рішення, відповідає за наслідки, доводить фічу від нечіткої проблеми до релізу;
Продуктове мислення: розуміє кінцевого користувача, time-to-value, може здорово оскаржити "спеку" (читаємо-специфікацію)), якщо є простіше рішення з тим самим результатом;
Швидке навчання нового домену/стеку з власної ініціативи — темп ramp-up очікується високий;
Безпека/відповідальність/OPSEC: дисципліноване поводження з даними, логами, скріншотами; мінімум зайвого публічного розголошення.
Буде плюсом
Досвід з дронами на ArduPilot, MAVLink (heartbeat/sequence/message-rate, fail-safe, reconnect).
Досвід з радарними даними або даними інших сенсорів через стандартизовані протоколи.
Карти/GIS/геодані/трекінг; WorldWind — плюс, не вимога.
Досвід менторства, код-рев'ю, технічного ownership — це зона можливого зростання для цієї ролі, не стартова вимога.
Ми цінуємо
Відкритість і чесність у комунікації: «я не знаю, як це зробити» цінується вище за вдавану впевненість)
Ownership до кінця — доводить функціонал до готового стану і сам підіймає ризики.
Роботу в парі/командну роботу: ділиться контекстом, спокійно приймає рев'ю, не конкурує за території.
Прагматичне ставлення до AI-інструментів: прискорює роботу, перевіряє і розуміє результат, може захистити кожне важливе технічне рішення.
Темп і фокус на пріоритетах навіть за високої невизначеності.
Формат і умови
Full-time, віддалено, Україна (буде перевагою); синхронна робота в українських робочих годинах.
Робочий ноутбук від компанії.
Можливі періодичні офлайн-зустрічі/польові демо.
2–3 сінки/тиждень на ramp-up; buddy — інший Senior-інженер команди.
Контракт: ФОП 3 група. За потреби — можливе бронювання.
Компенсація для Senior-рівня: €4 000–5 000 gross / місяць; для Staff/Principal рівень і вилка калібруються окремо до офера.
Процес відбору
1. Скринінг із Lead TA (45–60 хв). Узгоджуємо мотивацію, релевантність досвіду Kotlin/KMP, очікування щодо ролі та формату співпраці.
2. Технічна співбесіда з наймаючими менеджерами - Ростиславом і Броніславом (60–90 хв). Обговорюємо системний дизайн і архітектурні підходи, real-time/офлайн-сценарії, практики якості; за потреби — коротка симуляція (~10 хв).
3. Фінальна співбесіда зі Стейкхолдерами (60–90 хв).
Фокус — цінності, відкрита комунікація, ownership і готовність працювати в місійному defense-контексті.
4. Перевірка бекграунду (за вашою згодою і узгодженим флоу).
Референси та базова верифікація інформації.
5. Офер і підсумкове узгодження з Lead TA.
Обговорюємо фінальні умови, дату старту та кроки онбордингу.
Без тестового завдання; за потреби — коротка симуляція (~10 хв) на технічному етапі.
Фідбек протягом 24 годин після кожного етапу.
Як податись
Аплайтесь тут чи CV / LinkedIn / GitHub на + 2–3 речення про ваш найскладніший інженерний кейс (архітектура/продуктивність/real-time), де ви самостійно провели рішення від проблеми до релізу.
*У темі листа вкажіть: «Kotlin Engineer — Київ (як приклад)»
Ми цінуємо не лише хард-скіли, а й мотивацію, чесну комунікацію та відповідальність (за потреби, деталі продукту обговорюємо після підпису NDA).
Originally posted on Himalayas
This role requires you to be in Ukraine. If that means relocating or flying in, it is worth checking fares before you commit to a start date.
Compare flights and hotels →Get remote developer jobs like this by email
10 hand-picked jobs, one email a day. No spam, unsubscribe anytime.
Similar for you
Get 10 hand-picked remote jobs like this one in your inbox every morning. One email a day, matched to what you browse. No spam, one-click unsubscribe.
No thanks — continue to the application ↗