Мы в KonnektU разрабатываем программное обеспечение для фарм. компаний (CRM, мобильное приложение), используемые для организации работы полевых сил - медицинских представителей для автоматизации бизнес-процессов (планирование и проведение визитов к врачам и в аптеки, анкеты, согласия и договоры, фото/GPS, отчётность) в офлайн-режиме. Имеем государственную аккредитацию в области ИТ, являемся партнером MTC и резидентами Сколково. ㅤ ЧТО ВЫ БУДЕТЕ ДЕЛАТЬ: Визуализация данных в SuperSet: создание отчётов — от простых метрик до сложных аналитических дашбордов по продажам из различных источников Настройка автоматической отчетности: настройка регулярной отправки отчетов на почту, в S3-хранилище или другие системы Коммуникация с клиентами: участие в обсуждении сложных доработок в BI, настройки интеграций с их данными и решение нестандартных задач Автоматизация и документирование операционных задач: загрузка, изменение данных и создание скриптов с последующим документированием процессов Выполнение Ad-hoc запросов Разработка и поддержка ETL-процессов на Airflow (Python): перенос данных из PostgreSQL в ClickHouse для построения витрин и аналитики МЫ ЖДЕМ, ЧТО ВЫ ИМЕЕТЕ: опыт работы аналитиком данных от 2-х лет Имеете опыт работы с Git Имеете опыт работы аналитиком данных или в смежной должности от 1 года Понимаете основные архитектурные принципы PostgreSQL: первичные ключи, индексация, типы отношений (объектов). Понимаете основные архитектурные принципы ClickHouse: первичные ключи, ключи сортировки, «движки» таблиц MergeTree. Основные отличия от реляционных СУБД. Владеете SQL: (множественные JOIN, оконные функции) Владеете Python: понимание синтаксиса, структур данных (списки, словари), list comprehension, f-string, написание функций. Пользуетесь Jupyter для проверки гипотез. Понимаете, что такое виртуальное окружение, как настраиваются requirements.txt. Уверенно работаете с библиотекой Pandas: методы merge, concat, loc, slicing Владеете любым BI инструментом (PowerBi, Tableau, Superset, и т.д) Имеет опыт работы с запросами REST API, владеете библиотекой requests. Будет плюсом: Опыт работы с SQLAlchemy Умение писать чистый и поддерживаемый код. Понимание основ статистики: распределение, среднее и медиана, дисперсия, проверка гипотез Опыт работы в Jira Опыт работы в Confluence Опыт работы с GitLab МЫ РАДЫ ПРЕДЛОЖИТЬ: гибридный или удаленный формат работы оформление только по трудовому договору и официальную заработную плату график 5/2 ( с 09:00-18:00) грамотный онбординг и обучение работу с интересным продуктом и технологиями
Ищем в команду опытного full stack mobile developer. Мы в KonnektU разрабатываем CRM (мобильное приложение) для фармацевтических компаний (медицинских представителей) для организации их работы, автоматизации бизнес-процессов (осмотры, чек-листы, отчёты, подписи, синхронизация данных) в офлайн-режиме. Имеем государственную аккредитацию в области ИТ, являемся партнером MTC и резидентами Сколково. ЗАДАЧИ: Разработка и поддержка двух нативных приложений (Android на Kotlin, iOS на Swift) — написание нового кода, доработка существующего, обеспечение паритета функциональности между платформами. Работа с офлайн-синхронизацией — реализация надёжного обмена данными с сервером при ограниченной связи, кэширование, разрешение конфликтов. Реализация сервер-driven UI — приём конфигураций с сервера, динамическое построение форм/экранов, валидаций, навигации без перевыпуска приложения. Интеграция с локальной базой данных— проектирование объектной модели, миграции, оптимизация запросов. Интеграция с веб-контентом — использование WebView (WKWebView) для отображения HTML-форм, организация мостов (бриджей) между JavaScript и нативным кодом для доступа к локальным данным и вызова нативных функций. Взаимодействие с бэкендом — описание и согласование API (желательно через OpenAPI/Swagger), использование моков для параллельной разработки, генерация клиентских моделей. Обеспечение безопасности — хранение токенов в Keychain/KeyStore, подпись запросов, TLS, защита от повторов (опыт с кастомным шифрованием для Bluetooth-протокола приветствуется). Тестирование — написание unit-тестов (бизнес-логика, валидаторы) и UI-интеграционных тестов (сквозные сценарии на симуляторах с моками сервисов). Участие в архитектурных решениях — выбор паттернов (MVP, MVVM, VIPER), организация слоёв (репозитории, use cases), адаптация под современные фреймворки (SwiftUI, Compose, App Intents). Работа с публикацией — сборка, подпись, выкладка (процесс уже отлажен, но требуются знания). Поддержка существующего кода — правка багов, рефакторинг, перенос фич с одной платформы на другую. Коммуникация — участие в обсуждении требований с аналитиками, продактом, проджектами. Отслеживание трендов — оценка кроссплатформенных решений (Flutter, KMP) и их применимость для продукта. ТРЕБОВАНИЯ: Android: Kotlin, Compose (предпочтительно), знание старого стека (Java + XML) не критично, но приветствуется. iOS: Swift (включая SwiftUI), UIKit, работа с Core Data или SwiftData (опыт с Realm будет плюсом). Архитектурные паттерны: MVVM (основной), MVP, MVC – с пониманием их сильных и слабых сторон. Базы данных: Realm (прямой опыт не обязателен, но понимание принципов объектных БД, миграций, многопоточности важно). Сеть: REST, работа с URLSession, Alamofire / KTOR (для Android — KTOR приветствуется как кросс-платформенное решение). Безопасность: Keychain / KeyStore, TLS, подпись запросов. Дополнительные технические навыки (важные для продукта): Server-driven UI: опыт реализации динамических форм по конфигурации с сервера. WebView и JavaScript Bridge: работа с WKWebView / WebView, написание мостов для вызова нативных методов из JS и передачи данных обратно (понимание KVC, KVO, рефлексии в iOS; аналоги в Android). Офлайн-синхронизация: опыт проектирования фоновых задач, очередей, разрешения конфликтов при слабой связи. Работа с OpenAPI / Swagger: генерация клиентских моделей, использование спецификаций для параллельной разработки. Тестирование: JUnit / XCTest, Espresso / XCUITest, моки, стабы. Инструменты: Git, CI/CD (опыт с настройкой сборки приветствуется), Ansible (для DevOps-задач). Кроссплатформенность: понимание плюсов/минусов Flutter vs KMP vs натив; в перспективе компания рассматривает Flutter или KMP, поэтому взгляд кандидата на эту тему важен. УСЛОВИЯ: работа с интересным продуктом в ИТ компании; современный стек, грамотная команда, отлаженные процессы; официальное трудоустройство согласно ТК РФ (оформление трудовых отношений только по трудовому договору); график работы: гибрид, c 9:00 - 18:00 по МСК;