Как проводят тесты в космосе и что такое Lottie: репортаж с конференции Career Day 2022

Для специалистов в IT-сфере конференции не менее важны, чем для начинающих: ведь именно тут можно поделиться знаниями, обсудить спорные вопросы с коллегами и узнать о новых технологиях. Именно это и предлагала конференция Career Day 2022. Участники офлайн-мероприятия могли принять участие в нетворкинге, пообщаться на стендах компаний с коллегами и узнать об открытых вакансиях, а для тех, кто не смог присутствовать вживую, велась онлайн-трансляция.

Конференцию открыл Игорь Мамоненко, генеральный директор Belhard. Он отметил, что IT-отрасль в Беларуси переживает непростые времена: часть разработчиков уровня senior и middle уехали. Также некоторые заказчики из стран Запада по разным причинам остановили сотрудничество или потребовали релокации команд. Если раньше западные заказы составляли примерно 90% бюджета ПВТ, теперь эта цифра опустилась ниже 80%. Но часть специалистов уезжать не хочет, и встаёт вопрос: чем заниматься, если проект закончился или сократился? На самом деле заказы всё ещё появляются, и нехватка программистов в мире ощущается, особенно на Востоке – в РФ, Китае, странах Юго-Восточной Азии. Этот рынок для нас достаточно непривычный. Например, российский удобен тем, что не надо знать английский, но там используются не самые новые технологии.

Тем, кто остаётся в Беларуси, можно обратить внимание на ИИ, блокчейн и работу с криптовалютами. Создаются новые команды и поступают заказы на криптотехнологии, набирает популярность язык Rust, на котором создаётся большинство криптовалют. Так и с искусственным интеллектом: обработка видеоизображений, текста, речи, их семантический анализ, работа с Big Data, IoT — это отличный путь для технологического развития.

 

Карьера в QA. Почему она не уступает Dev. Как развивались QA в моей команде

Евгений Карандасов, старший инженер по обеспечению качества в "Тинькофф", обратил внимание на направление обеспечения качества, которое ошибочно называть просто «тестированием», поскольку сфера деятельности QA гораздо шире и включает в себя не только тестирование, являющееся лишь одной из составляющих. Кроме того, было рассказано почему QA – это самостоятельная интересная профессия, а не промежуточный этап для последующего перехода в разработчики.

Для тех, кто хочет совместить написание кода и обеспечение качества, стоит обратить внимание на автоматизацию. В команде Евгения в работе важен так называемый ETL-процесс (от Extract – Transform – Load). Например, существуют какие-то продуктовые базы данных, откуда берётся информация для дальнейших преобразований: фильтрации, группировки, добавления новых показателей, и очистки при необходимости. Преобразованная информация загружается в хранилище данных или DWH (Data Warehouse).

Затем команда визуализации строит отчёты, используемые для принятия управленческих и стратегических решений в группе компаний. Работу этих ETL процессов нужно тщательно тестировать, т.к. в случае плохих данных в хранилище могут быть приняты неправильные решения на основе неправильных отчетов. Часть проверок автоматизировать нельзя, т.к. нужна человеческая экспертиза. Но, например, интеграционные тесты автоматизировать можно. Сейчас в «Тинькофф» хранилище содержит 6 тысяч ETL-процессов и 5 петабайт данных, управляются с этим 330 человек, из которых 28 – это QA. Сперва автоматизации у них не было, работа велась только с использованием скриптов на SQL. Постепенно появились первые интеграционные тесты, подключили Python к проверкам автоматизации.

В начале проверки выполнялись полуавтоматически, потому что периодически возникали трудности, скрипты «падали» и требовалась ручная экспертиза. В дальнейшем в компании написали фреймворк автоматизации, стали использовать его для полного покрытия всех интеграционных тестов, и необходимость в ручном тестировании интеграции исчезла.

Сейчас QA на разных проектах в управлении представляет собой баланс человеческой экспертизы и автоматизированных тестов. На данный момент автоматизация внедрена во всех основных проектах. Где-то используется первоначальный фреймворк, а на самых новых направлениях, использующих ряд других технологий, была разработана собственная кодовая база для автоматизации тестирования.

Всему этому способствовали шаринг знаний внутри команды и планирование карьерного роста, где для каждого сотрудника расписана матрица компетенций, позволяющая ему поставить цели для своего развития на квартал/полгода/год вперёд. Согласно этим целям сотрудник понимает прозрачность критериев перехода на следующий уровень карьеры.

Также важно доверие – руководство поощряет активность, и, если ты предлагаешь решение, которое может существенно улучшить существующие процессы, но опасаешься каких-то рисков, тебе разрешают попробовать это реализовать. Если вдруг что-то не получится — никто не уволит и ругать не будет. В команде никто не боится брать дополнительные задачи, работает подход «делай больше»: если ты на позиции middle можешь покрыть 75% функций сеньора, то можно запросить перевод на более высокую позицию.

 

Тестирование по-космически

Алексей Ткаченко, начальник отдела программирования наземных систем НКУ "Космос", ОАО "Пеленг", поделился по-настоящему космическими знаниями. Он отметил, что при разработке спутника никто не занимается разработкой целиком: создаются отдельные системы для его функционирования. Ведь спутник представляет собой набор функциональных блоков, которые соединены между собой интерфейсами.

Часть приборов типовые, часть – специализированные. Между подсистемами могут быть совершенно разные интерфейсы: механические (например, посадочная платформа, на которую устанавливается прибор), тепловые, электрические (способы подключения интерфейсов друг к другу), информационные (передача данных между приборами), оптические – и это далеко не полный список.

В итоге платформа выполняет только функцию интегратора. Для тестирования механической аппаратуры, которая имеет ограничение на ресурс, берётся из всей партии несколько случайных элементов и предполагается, что остальные сделаны так же хорошо, как и тестируемый объект. Стопроцентной надёжности не бывает, она гарантируется с некоторой вероятностью для всей партии.

Также можно тестировать на макетах или аналогах, для которых создаются схожие с требуемыми условия (например, вакуум). Тестирование, конечно, стоит денег, но оно же позволяет сэкономить в процессе разработки. Каждый найденный баг имеет свою стоимость, восстановление сломанного объекта стоит денег, поэтому иногда некоторые известные баги лучше оставить, чем пытаться исправить: написать строчку «не доводить до такого состояния» в руководстве пользователя может быть дешевле, чем пытаться это состояние предусмотреть.

Механическое оборудование требует защиты от выхода из строя, и не стоит забывать, что оно работает в экстремальных условиях космоса. Некоторые состояния и отказы системы невозможно сымитировать на Земле, по крайней мере без разрушения оборудования, поэтому важно предусмотреть имитацию логических отказов в штатном ПО.

Со стороны тестирующего комплекса важно проверить большинство отказов, которые могут случиться. Если же что-то пошло не так уже в процессе эксплуатации, важно получать телеметрическую информацию – ту, что снимается с оборудования. Её должно быть достаточно, но при этом она должна быть минимизированной, для экономии канала передачи, но и быть многоуровневой – для настройки потока данных. И телеметрические каналы тоже требуют функционального резервирования.

 

Варианты развития карьеры БА

Эксперт предметной области (ЭПО) Виталий Бирченко, ведущий бизнес-аналитик в домене HealthCare из компании Andersen, обозначил один из путей развития бизнес-аналитика. Это эксперт предметной области (ЭПО, SME – subject-matter expert), и расти в эту сторону можно после достижения уровня миддла. ЭПО – тот, кто обладает знаниями в области бизнеса, технологий или любой полезной для проекта области, может описать процессы и их результаты.

В зависимости от компании и домена, требования к такому специалисту будут разные. Например:

  • Опыт работы в соответствующем домене от 3 лет;
  • Владение английским на уровне не менее В2 (в частном случае компании Andersen это связано с тем, что основные заказчики – западные компании);
  • Навык написание документации к проекту, составление бэклога;
  • Навыки грамотной работы со стейкхолдерами с учётом их региональных и возрастных особенностей, подходов к какому-то конкретному проекту; Умение управлять изменениями требований, риск-менеджмент;
  • Моделирование бизнес-процессов, знание нотаций (BPMN, UML);
  • Прохождение необходимых курсов\сертификаций для работы в предметной области.

Что же эксперт предметной области делает на проекте? Участвует в интервью для выявления всей необходимой информации, чтобы задать те вопросы, которые не попали в заранее собранный и унифицированный чек-лист вопросов к заказчику. Также ЭПО проверяет требования на полноту, правильность, осуществимость и недвусмысленность, изучает соответствие требований бизнес-правилам, предлагает варианты решения возникающих вопросов, участвует в приёмочном тестировании и передаёт знания.

Чтобы развиться в эксперта, необходимо постоянно получать знания в определённом домене. Важно участвовать в новых проектах, где используется последние технологические наработки. Чем раньше начать с ними работать, тем быстрее появится экспертиза – и можно будет выступать как проводник этих технологий в компании. Необходимо помнить, что экспертиза не сохраняется пожизненно: за несколько лет домен и экспертиза могут значительно измениться, поэтому нельзя останавливаться в своём развитии.

Одно из преимуществ ЭПО — глубокое знание домена. В каждом новом проекте всё равно будут повторяющиеся модули, и вы будет тратить всё меньше времени на их понимание, описание и изучение. Благодаря этому на вас будет расти спрос как на специалиста. К тому же чем больше вы будете работать в домене, проходить курсы и развивать экспертизу, тем больше вы унифицируете себя на международном рынке. Однако же такое глубокое погружение одновременно является и недостатком: рано или поздно вам станет неинтересна ваша доменная область.

Также может стать сложностью необходимость постоянной переподготовки: при выходе нового стандарта вы будете первым человеком, которому будут задавать на эту тему вопросы. В случае смены домена вам фактически придётся начинать всё с начала, некоторые практики придётся учить заново, и ещё можно потерять в зарплате. ЭПО – это всегда уход в узкую специализацию, и при работе с проектами в смежной области какие-то общие элементы вы сможете охватить, а вот углубиться в детали будет сложнее.

 

Создание рекламных роликов на iOS-устройстве без сервера

Андрей Добыш, Senior iOS Developer, Godel Technologies Europe, поделился знаниями по работе с Lottie. Это библиотека, которую используют мобильные разработчики, чтобы добавлять анимированные элементы, в том числе кнопки. Такая анимация получается хорошего качества, с высоким FPS и занимает мало памяти – считанные мегабайты.

Сперва анимации делаются в Adobe After Effects, причём при работе с Lottie остаются все те же имена слоёв, что и в AE, и впоследствии в приложении мы сможем привязывать к слою элементы UI и повторять анимации этого слоя. После подготовки шаблона АЕ его можно экспортировать при помощи расширения Bodymovin, и на выходе получается JSON-файл, в котором описаны преобразования, эффекты и шейпы. Lottie поддерживает не весь функционал АЕ, это зависит от платформы.

Одной из важнейших частей решения является возможность кастомизации шаблона. Изменять можно изображения – при экспорте из АЕ мы получаем картинки и JSON, при этом картинки лежат отдельно. Именно их мы и можем менять, главное — оставить прежнее соотношение сторон и размеры.

Также можно изменять цвет шейпов — элементов, которые могут быть в анимации: прямоугольников, кругов, полосок и других. Текст также возможно изменить, хотя в iOS с этим есть нюансы. Если используются кастомные шрифты, они должны быть добавлены в проект. Для правки текста можно попытаться изменить его прямо в JSON, но это требует дополнительного изучения того как текст описан в JSON.

Либо можно ещё в АЕ на этапе создания шаблона создать текст, а на этапе экспорта его скрыть. Затем найти слой, где был текст, и добавить ему UILable — и его нам будет легко кастомизировать, изменяя шрифт, цвет и размер. Он прикрепится к слою, где был текст, и будет повторять за ним все преобразования, в том числе движение и зумирование. Есть возможность изменять положение элементов, сдвигая слои в Lottie. В теории можно добавить видео в шаблон, но важно понимать, насколько это будет уместно.

 

Материалы конференции: можете скачать презентации спикеров, тут посмотреть фотографии, здесь найдете видеозапись конференции. Просим уделить 3 минуты вашего времени, чтобы пройти опрос, который поможет нам стать лучше.

Organizer: KV.by

Golden Partners: ОАО "Пеленг"rabota.by

Silver Partners: МТБанк, Minsk WorldZepter

 

 

Читайте новости первыми в нашем Telegram-канале!

Подписывайтесь на наш канал в Дзен!

Версия для печатиВерсия для печати

Рубрики: 

  • 1
  • 2
  • 3
  • 4
  • 5
Всего голосов: 0
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!