{"id":2851758,"url":"https://alion.io/job/bureau-1440-flutter-razrabotchik-2","title":"Flutter-разработчик","company":{"id":1306,"name":"Bureau 1440","domain":"1440.space","url":"https://alion.io/company/bureau-1440","size_band":"1001-5000","is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"HeadHunter","truth_index":{"grade":"B","score":78,"open_postings":22,"ghost_share":0.227,"stale_share":0,"repost_share":0.591,"time_to_fill_p50_days":23,"computed_at":"2026-10-23T05:54:15Z"}},"role":"Mobile","role_family":"Mobile","seniority":"middle","employment_type":null,"work_mode":"remote","remote_scope":"stated_regions","remote_scope_basis":"board_field","remote_working_hours":null,"hiring_geo_confidence":"structured","locations":["Moscow, Russia"],"countries":["RU"],"hiring_countries":["RU","BY","KZ","KG","AM"],"hiring_countries_total":5,"salary":null,"salary_estimate":{"min_usd":15000,"max_usd":45000,"period":"year","method":"role_seniority_country_remote_cell","sample_n":8},"experience_years_min":3,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"Bloc","optional":false},{"name":"CI/CD","optional":false},{"name":"Dart","optional":false},{"name":"Fastlane","optional":false},{"name":"Flutter","optional":false},{"name":"GitLab","optional":false},{"name":"GitLab CI","optional":false},{"name":"GraphQL","optional":false},{"name":"Rest API","optional":false},{"name":"Riverpod","optional":false}],"status":"live","first_seen_at":"2026-10-19T13:27:13Z","employer_posted_date":"2026-10-19","last_verified_at":"2026-10-23T04:33:41Z","board_verified":true,"closed_at":null,"days_open":4,"trust":{"level":"ok","repost_count":null,"flags":[],"days_open":4},"description":"Мы ищем сильного мобильного разработчика, который не просто пишет код, а закладывает фундамент продукта: проектирует архитектуру, отвечает за безопасность клиентского приложения и выстраивает процессы доставки релизов. Основная задача - разработка корпоративных сервисов.\n Чем предстоит заниматься:\n Проектированием архитектуры мобильных приложений и принятием ключевых технических решений с учётом долгосрочной поддержки и масштабирования;\n Разработкой клиентской части системы двухфакторной аутентификации (2FA): генерацией одноразовых кодов (TOTP/HOTP), добавлением аккаунтов через сканирование QR-кодов, безопасным хранением секретов;\n Интеграцией механизма подтверждения входа через push-уведомления совместно с серверной командой;\n Настройкой и реализацией сценариев входа по биометрии и PIN-коду, а также логики блокировки приложения при подозрительной активности или потере устройства;\n Организацией и ведением релизного цикла: настройкой CI/CD-пайплайнов, управлением подписями и сертификатами, автоматизацией выкладки приложений в App Store и Google Play;\n Обеспечением UX-логики экранов, навигации, работы приложения в офлайн-режиме и корректной синхронизации данных с сервером;\n Покрытием тестами критически важных участков кода, оперативным исправлением багов, анализом и устранением сбоев, участием в код-ревью;\n Поддержанием чистоты и прозрачности кодовой базы, документированием архитектурных решений для упрощения онбординга новых разработчиков.\n Мы ожидаем:\n Опыт коммерческой мобильной разработки - от 3 лет, из них не менее 2 лет - на стеке Flutter/Dart;\n Подтверждённый опыт публикации как минимум двух приложений в App Store и Google Play (с предоставлением ссылок для проверки);\n Практические навыки обеспечения безопасности на стороне клиента: работа с Keychain/Keystore, flutter_secure_storage, реализация биометрической аутентификации, базовое шифрование данных;\n Понимание принципов работы 2FA, стандартов TOTP/HOTP (RFC 6238 и 4226), кодирования base32, сканирования QR-кодов и безопасного хранения секретов - будет существенным преимуществом;\n Опыт проектирования архитектуры и настройки CI/CD с нуля, а также ведения нескольких приложений одновременно (не только доработки чужого кода);\n Уверенную работу с self-hosted инфраструктурой: GitLab CI, собственными серверами, понимание специфики и ограничений on-prem-развёртываний;\n Глубокие знания Flutter/Dart, уверенное владение подходами к управлению состоянием (Bloc или Riverpod), навыки построения модульной и масштабируемой архитектуры;\n Опыт работы с API (REST или GraphQL), протоколом OAuth 2.0, локальными базами данных и реализацией синхронизации данных;\n Навыки настройки CI/CD на базе GitLab, автоматизации релизов через Fastlane, публикации приложений через App Store Connect и Google Play Console.\n Условия:\n Возможность выбора формата работы (гибрид/удаленка);","description_format":"text","description_chars":2853,"description_truncated":false,"requirements":{"experience_years_min":3,"management_years_min":null,"team_size_min":null,"manages_managers":false,"education":null,"security_clearance":false,"languages":[{"language":"Russian","level":"Advanced (C1)","optional":false}]},"benefits":[],"hiring_locations":[{"name":"Russia","iso":"RU","kind":"country"},{"name":"Belarus","iso":"BY","kind":"region"},{"name":"Kazakhstan","iso":"KZ","kind":"region"},{"name":"Kyrgyzstan","iso":"KG","kind":"region"},{"name":"Armenia","iso":"AM","kind":"region"}],"hiring_excludes":[],"relocation_offered":false,"industries":["Satellite Communications","Satellite Manufacturing"],"lifecycle":[{"event":"open","at":"2026-10-19T13:31:08Z"}],"visa":[],"liveness":{"score":90,"band":"hot","label":"Hiring now","p_open":1,"p_active":0.896,"p_room":1,"age_days":3,"expected_fill_days":23,"reasons":["conf:1","velocity","win:early"],"computed_at":"2026-10-23T05:54:15Z"},"pay":null,"html_url":"https://alion.io/job/bureau-1440-flutter-razrabotchik-2","json_url":"https://alion.io/job/bureau-1440-flutter-razrabotchik-2.json","meta":{"generated_at":"2026-10-23T15:47:30Z","cache_seconds":300,"methodology":"https://alion.io/methodology","terms":"https://alion.io/terms","contact":"https://alion.io/contact","api":"https://alion.io/developers","about":"Alion is a live layer of people, companies and AI agents: who they are, whether they are real and active right now, what they do and how to work with them, readable by people and by agents and paid per call.","catalog":"https://alion.io/catalog.json","usage":{"tier":"crawler_verified","counted_by":"address","units_charged":1,"used_today":23702,"day_limit":null,"remaining_today":null,"minute_limit":300,"resets_at":"2026-10-24T00:00:00Z"}},"offers":[{"id":"company.slices","title":"One company in depth, by slice","status":"live","price":{"credits":0.02,"usd":0.002,"plus_per_slice":{"credits":0.05,"usd":0.005}},"unit":"per company, plus each slice with data","note":"the employer in depth","call":{"mcp_tool":"get_company","arguments":{"id":1306},"rest":"https://alion.io/mcp/rest/get_company?id=1306"},"human":"https://alion.io/catalog?offer=company.slices&for=job%2Fbureau-1440-flutter-razrabotchik-2"},{"id":"market.stats","title":"A market slice: pay, demand and time to fill","status":"live","price":{"credits":1,"usd":0.1},"unit":"per slice","note":"pay, demand and time to fill for this role and place","call":{"mcp_tool":"market_stats"},"human":"https://alion.io/catalog?offer=market.stats&for=job%2Fbureau-1440-flutter-razrabotchik-2"},{"id":"job.search","title":"Open jobs by role, technology, place, pay and visa","status":"live","price":{"credits":0.02,"usd":0.002},"unit":"per posting in a list","note":"similar open postings","call":{"mcp_tool":"search_jobs"},"human":"https://alion.io/catalog?offer=job.search&for=job%2Fbureau-1440-flutter-razrabotchik-2"},{"id":"company.verify","title":"Is this company real and active right now","status":"pilot","price":null,"unit":"per company","request":{"url":"https://alion.io/catalog/request","method":"POST","body":"{\"offer\": \"company.verify\", \"for\": \"job/bureau-1440-flutter-razrabotchik-2\", \"note\": \"what you need it for\"}"},"human":"https://alion.io/catalog?offer=company.verify&for=job%2Fbureau-1440-flutter-razrabotchik-2"}]}