Формат: Удаленно, Full-time (МСК) ПО РФ ❗️
Неизвестный работодатель · На сервисе с: 01.07.26 10:59
ID 3019
#Flutter разработчик
Lead
❗️гражданство: РФ
Формат: Удаленно, Full-time (МСК) ПО РФ ❗️
#Требования:
Умение применять динамическое программирование для решения задач, хорошее знание алгоритмов графов и алгоритмов численных вычислений, способность идентифицировать NP-проблемы
Знание и опыт применения менее используемых шаблонов проектирования (Прототип, Легковес, Шаблонный метод etc)
Опыт построения архитектуры проекта с нуля. Отличное знание нескольких паттернов управления состоянием
Знание продвинутых структур данных, таких как B-деревья, биномиальные кучи и кучи Фибоначчи, AVL / красно-черные деревья, деревья с разделением, списки пропусков, попытки и т. Д.
Обмен данными между изолятами, группы изолятов.
Понимание проблемы видимости общих объектов в многопоточном программировании для разных потоков, race condition
Как происходит компиляция Dart-кода в нативный код для Android/iOS. Dart VM, типы компиляции AOT/JIT, в чем разница и когда используются
Большой опыт написания generic-функций и классов. Наследование generic-классов
Подробные знания о процессе отрисовки: устройство дерева виджетов, дерева элементов, дерева рендера, их функции. Низкоуровневое создание UI-элементов с помощью CustomPainter/RenderObject
Подробное знание API используемых пакетов. Умение полностью настроить сервис для отправки запросов с конвертированием данных, обработкой ошибок, логированием. Использование WebSockets для постоянного соединения с сервером
Способы хранения зашифрованных данных, умение писать сложные SQL-запросы
Углубленное знание API навигации. Когда происходит и как работает восстановление стека с помощью restorationScopeId
Знания о различиях с другими платформами: замена Isolate на WebWorkers, ограничения в навигации при использовании Navigator/Router
Глубокое знание API RxDart. Использование продвинутых операций преобразования потоков: debounce, merge, zipWith, distinct
Большой опыт использования пакетов для DI. Глубокое теоретическое понимание проблемы, знание о других подходах к решению (Service Locator), разница между DI и SL
Знание продвинутых комманд (patch, stash/unstash, cherrypick)
Умение полностью настроить CI/CD pipeline для проекта с нуля
Опыт развертывания тестирования приложения через PlayMarket/AppStore, работа с метриками
Запрашивает обратную связь по итогу выполнения задачи. При решении большинства задач пользуется целями бизнеса, внутренними процессами и мнением коллег
Может выполнять базовое администрирование баз данных, оптимизацию производительности, оптимизацию индексов, писать расширенные запросы выбора, способен заменить использование курсора на реляционный sql, понимает, как данные хранятся внутри, понимает, как индексы хранятся внутри, понимает, как базы данных могут быть зеркально отражены, реплицированы и т.д. Понимает, как работает двухфазная фиксация.
Код легко понятен и читается естественным образом. Отсутствует глубокая вложенность условных выражений или методов
Умеет структурировать, запоминать и делиться полезной информацией
Предлагает новые идеи и улучшения для проектов
Способен визуализировать и проектировать сложные системы с несколькими линейками продуктов и интеграциями с внешними системами. Также должен уметь разрабатывать системы поддержки операций, такие как мониторинг, отчетность, отказоустойчивость и т. д.
Использование соответствующих структур данных и алгоритмов и разработка общего / объектно-ориентированного кода, который инкапсулирует аспекты проблемы, которые могут быть изменены.
Писать ••••••••⚡️⚡️⚡️⚡️
HireSeeker собирает вакансии со всех площадок и присылает только релевантные. Бесплатно.