Personnel Management
IT career
АСКОН corporate blog
IT-companies
February 27

Военный лётчик, физик-ядерщик и главный инженер Кремля – кем были в прошлой жизни разработчики АСКОН

Инженер по тестированию КОМПАС-3D Евгений очень хотел полететь на Луну и подал заявку в отряд космонавтов. Об этом мы и собирались рассказать в этом посте – как наш сотрудник проходил открытый отбор в экипаж нового космического корабля «Федерация». Не срослось. Женю срезали на первом этапе по медицинским показаниям.

Но благодаря более тесному знакомству с героем родилась идея другого поста. До прихода в АСКОН Женя работал на авиационном заводе, где участвовал в наземных испытаниях истребителей МиГ-29К. Немного поразведав, мы узнали, что в наших рядах есть физик, который побывал в ЦЕРНе на Большом адронном коллайдере, бывший главный инженер Коломенского кремля, военный лётчик, совершивший более 200 боевых вылетов.

Расспросили коллег с нетипичной биографией об их прошлой жизни и истории прихода в разработку.

image
Евгений Васин, руководитель отдела тестирования ЛОЦМАН:PLM

Евгений Васин, руководитель отдела тестирования ЛОЦМАН:PLM (Курган)



После школы я поступил в Ставропольское высшее военное училище лётчиков и штурманов, которое окончил в 1981 году. Для прохождения дальнейшей службы был направлен в Закавказский военный округ. Службу проходил в городе Марнеули Грузинской ССР на должностях: командир экипажа, старший лётчик, командир звена, заместитель командира эскадрильи, начальник ВОТП (Воздушной огневой и тактической подготовки). Полк выполнял задачи по несению боевого дежурства на самолётах Су-15 в составе войск ПВО ЗакВО. В 1983 году полк был переведен из Истребительной Авиации (ИА) в Истребительно Бомбардировочную Авиацию (ИБА), а лётный состав переучили на самолёты Су-17 М3.

В период с октября 1985 года по конец ноября 1986 года находился в составе ограниченного контингента советских войск в Афганистане (более 200 боевых вылетов). После возвращения службу проходил там же, в Марнеули.

image

В 1989 году полк снова был переведен в систему ПВО, но уже на самолёты Су-15 ТМ. Военный лётчик 1-го класса, имею налёт более 1200 часов, был подготовлен в полном объёме Курса боевой подготовки ИБА и ИА (к инструкторским полетам), днём и ночью, в простых и сложных метеоусловиях, а также при минимуме погоды. В связи сокращением в 1992 году был уволен из вооружённых сил и вернулся на родину в Курган.

image

Следующие семь лет я проработал инженером в отделе технической документации СКБМ (Специальное конструкторское бюро машиностроения, где разрабатывают боевые машины пехоты). Здесь и познакомился с компьютером и с продуктами АСКОН – чертёжным редактором КОМПАС 4 и системой для хранения документации КОМПАС-Менеджер. Учились мы на рабочем месте, в процессе использования программного обеспечения, да и его разработчики были рядом, в Кургане.

Еще во время службы я заинтересовался «программированием» на микрокалькуляторе (Электроника 52). В СКБМ писал на WordBasic, занимался приведением бумажной технической документации к электронному виду, работал с растровой и векторной графикой. Там же учился работе с трёхмерными САПР: SolidWorks, потом Unigraphics и Solid Edge, затем и КОМПАС-3D.

В 2001 году меня пригласили в АСКОН. Тогда как раз формировался центр разработки в Кургане. Поначалу приходилось заниматься всем: обучением КОМПАС 5 и КОМПАС-Менеджер, техподдержкой КОМПАС-Менеджер, тестированием КОМПАС-Менеджер и библиотек КОМПАСа, немножко разработкой – рисованием ICO в первых версиях системы управления инженерными данными ЛОЦМАН:PLM. По мере роста объёмов задач моя зона ответственности ограничилась тестированием ЛОЦМАН:PLM.

Константин Гулевский, Senior C++ Developer (Рязань)



До АСКОН я работал в компании EasyTrace, которая занимается оцифровкой картографической информации, т.е. с помощью данного ПО переводятся бумажные или цифровые изображения в векторные данные, например, такие как в 2Гис, Яндекс-картах и подобных сервисах. Компания была небольшая – то самое чувство, когда «все свои». По работе приходилось придумывать и воплощать в жизнь разнообразные инструменты векторизации.

Все 10 лет, которые я провёл в этой организации, работать было нескучно. Входные данные постоянно менялись, и приходилось придумывать всё новые и новые инструменты. Если раньше в моде были мелкомасштабные карты и требовались инструменты выделения синих водоёмов, красного рельефа, чёрных дорог, то сейчас всё чаще стали решаться задачи оцифровки «невидимых» человеческому глазу снимков (лазерного сканирования). Одной из интересных была работа по подсчёту ёлок – да, да, заказчик просил посчитать количество ёлок в своём лесу и собрать некоторую статистику по ним. Разработанным нашей командой функционалом такая задача решается в пределах часа.


Перейдя в АСКОН я осознал, насколько же устарел инструментарий, которым я привык пользоваться. Здесь нет неактуальных сред разработки, систем контроля версий или методологий разработки. Процесс настроен, работать очень комфортно.

image

Я попал в команду Quick, основная зона ответственности которой – быстродействие КОМПАС-3D. Математическое образование и опыт разработки высокопроизводительного ПО помогли мне найти себя. Знакомясь с исходниками КОМПАСа, пришло понимание того, насколько это функциональный, мощный сложный продукт. В то же время поддержка такого функционала программистам порой давалась путём больших временных и ресурсных затрат приложения, иногда необоснованно больших. Мне кажется, я уже смог помочь компании немного разогнать нашего «монстра», а в будущем, надеюсь, он научится летать :-).


Рабочее видео команды Quick: скорость проецирования в КОМПАС-3D версий v17 и v18


Александр Алахвердянц, математик-программист C3D Labs, дочерней компании АСКОН (Коломна)



После окончания физфака МГУ я работал в Объединенном институте ядерных исследований в составе научной группы по поиску кварк-глюонной плазмы в эксперименте STAR. Solenoidal Tracker At RHIC — это крупнейшая экспериментальная установка ускорительного комплекса RHIC (коллайдер релятивистских тяжелых ионов), который располагается в Брукхейвенской национальной лаборатории (BNL) на Лонг-Айленде. Участники эксперимента разбросаны по всему миру – всего около 40 институтов. Это крупнейший эксперимент по физике элементарных частиц в BNL, куда я дважды летал в служебные командировки по набору данных. Обе командировки длились по 3-4 месяца.

image
В Брукхейвенской национальной лаборатории

Работа лаборатории организована следующим образом. Сперва все готовятся к запуску коллайдера, потому что он потребляет очень много энергии и не может работать круглый год. Руководители Лаборатории договариваются с Департаментом энергетики, чтобы ведомство обеспечило работу электростанции, питающей коллайдер. Затем производится запуск, и коллайдер работает без остановки 4-5 месяцев.

Данные собираются круглые сутки – нужно сидеть за компьютером и следить за множеством графиков для того, чтобы контролировать корректность записи экспериментальных данных. Важно, чтобы процессы протекали нормально: детекторы были исправны, давление газа в проекционной камере было на нужной отметке и т. д. Для этого приезжают ученые, сдают экзамены, получают различные допуски и заступают на свою смену, которая длится неделю. Работа заключается в том, что 4-6 человек сидят 8-часовую смену и управляют записью экспериментальных данных, контролируя протекающие в детекторе процессы. По истечении этого срока формируется новая смена. За каждую командировку я отработал 10-12 смен, познакомился со многими коллегами из разных стран. Непосредственно наука заключается в анализе полученных данных, который делается уже после в своём родном институте.

В России не проводятся эксперименты по моей специальности, поэтому для ознакомления с современной физикой элементарных частиц от университета нас возили на Большой адронный коллайдер в Швейцарию, в Европейский центр ядерных исследований. Это было ещё до командировок в BNL.

image
В шахте БАК

В университете нам давали фундаментальные знания по физике и математике, а программирование было третьестепенным предметом. Достаточно было знать самый базовый синтаксис C/C++, чтобы уметь закодировать численные алгоритмы, решающие дифференциальные уравнения, для выполнения практикума по информатике.

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

Поэтому после прихода в АСКОН пришлось по большому счёту учиться программировать с нуля: изучить нормально C++ и Python – два основных языка, используемых нами в разработке, узнать о критериях качества промышленного ПО, о том, что такое тестирование ПО и зачем оно нужно, в конце концов, узнать о том, что у ПО есть архитектура и к её качеству тоже предъявляются некоторые требования. Помогло чтение книг и документации, видеолекции, коих сейчас полно на ютубе. Если говорить о книгах, то Python я изучал по книгам Лутца и официальной документации, а C++ по книгам Лафоре, Саттера, Мейерса, Александреску.

Что касается математики, то университетских знаний для работы над геометрическим ядром, в целом, было достаточно. Из нового понадобилось изучить сплайновые кривые и поверхности, графы и разнообразные способы декомпозиции систем уравнений. На первых порах было особенно важно, что рядом всегда есть специалист по каждой сопутствующей области, к которому в любое время можно обратиться за помощью или советом, т.к. далеко не всегда ответы можно найти в книгах.

В итоге моей специализацией стал решатель – модуль геометрического ядра, отвечающий за параметризацию чертежей и 3D-моделей.

Евгений Филимонов, инженер по тестированию КОМПАС-3D (Коломна)



Раньше я работал на Луховицком авиационном заводе (входит в РСК МиГ) инженером-конструктором в КБ электрооборудования. В мои обязанности входило сопровождение чертежей (электрические схемы, монтаж жгутов), конструкторско-технологической спецификации, программ испытаний и другой документации. Это подразумевало решение возникающих вопросов, устранение неточностей и при необходимости разработку новой документации. Одним из важных элементов работы было посещение цехов и взаимодействие со смежными КБ/отделами.

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

В АСКОН я пришёл весной 2010 года на должность инженера по тестированию. Мне эта тема показалась близкой, потому что ранее я фактически тестировал компоненты истребителя. Задачи заключались и заключаются в том, чтобы вовремя обнаружить критические ошибки в КОМПАСе. Я человек ответственный и может слегка зануден, мне вообще по жизни не нравится, когда где-то что-то не в порядке. Поэтому новая работа пришлась мне по душе. Здесь не так много начальников, больше порядка и комфортные условия труда. Главным же отличием для меня стала более высокая ценность сотрудников для компании, в том числе более высокая зарплата.

image
Женя — тот самый участник отбора в отряд космонавтов

На новом рабочем месте я освоил КОМПАС-3D, фактически с нуля. Но до этого был хорошо знаком с 3D-моделированием в других системах, поэтому сложностей не возникло. Кроме того, пришлось изучить методы и технологии тестирования ПО. Вначале это происходило с наставником Риммой Верхорубовой (ей отдельное спасибо). А затем уже стал изучать самостоятельно, посещать курсы и конференции. Наиболее полезной оказалась SQA-Days: я участвовал в нескольких конференциях, на одной из них был докладчиком. Еще обучался в «Школе тест-аналитиков». И, конечно, главные знания и опыт принесла сама работа: проверки по реальным сценариям использования, самостоятельный поиск и анализ интересных сценариев.

В последнее время я занимался производительностью в команде Quick. Основной темой была новая отрисовка, а также типы загрузки, исполнения, приёмы работы с большими сборками в КОМПАС-3D. В данный момент тестирую произвольные массивы листовых операций, впереди – текстуры, зазоры и еще много интересного.


Рабочее видео команды Quick: скорость отрисовки в КОМПАС-3D версий v17 и v18

Сергей Лазутченков, инженер по тестированию КОМПАС-3D (Коломна)



По образованию я инженер-конструктор, несколько лет проработал на Коломенском заводе, занимался компоновкой дизелей. Но последний год перед приходом в АСКОН был связан с Коломенским кремлём – занимал должность главного инженера в МБУ ВИСКК «Коломенский кремль». Эта организация отвечает за содержание и реставрацию комплекса, проведение экскурсий, спортивных занятий и соревнований. Круг моих обязанностей был довольно широким: заключение и сопровождение договоров на свет, связь, воду и т.д., распределение и контроль технических работ, управление закупками для технических и спортивных нужд, встреча и сопровождение туристов.

image
Коломна: день города

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

image

На чемпионате России по артистическому фехтованию снимал выступления участников. Была острая нехватка технического персонала – пришлось самому стать за камеру.

image
Чемпионат России по артистическому фехтованию — 2015

В АСКОН я пришёл в 2016 году инженером по тестированию и попал сразу на разработку КОМПАС-3D v17 с новым интерфейсом. Естественно, процесс тестирования я представлял довольно смутно, тут всё пришлось изучать с нуля с помощью коллег и наставника. Впоследствии дополнительно были и курсы, и конференции SQA-Days, которые дают более полные и системные знания, а также представление, как построены процессы тестирования в других компаниях.
Основные отличия, которые я ощутил придя в разработку, это более молодой коллектив и сидячая работа. Раньше приходилось постоянно мотаться по городу, решая бесконечные вопросы, если говорить о Кремле. Или ходить по отделам и цехам на заводе, согласовывая чертежи и модели.

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

Сергей Бирюков, математик-программист C3D Labs (Коломна)



Почти 10 лет я отработал в школе – преподавал математику и физику. Кипучая деятельность с детьми мне жутко нравилась, но были свои минусы административного характера. Кроме того, ощущался «потолок» для дальнейшего роста. Так в 2011 году я пришёл на собеседование в математическое подразделение компании АСКОН, о которой знал, что фирма занимается компьютерами. Ни с разработкой ПО, ни с САПР до этого я не сталкивался, а мой единственный программистский опыт заключался в изучении С++ на курсах во время учёбы в Коломенском пединституте. Поэтому собеседование закончилось неудачно: математическую часть я прошёл, а тестовое задание по программированию провалил. Но мне дали еще одну попытку. В итоге я во время летнего отпуска изучал С++ и в августе пришёл на второе собеседование. На этот раз успешно. Моим местом работы стала команда геометрического ядра.

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

image
На Великой Китайской стене

В геометрическом ядре я занимался практически всеми составляющими моделлера: булева операция, листовые тела, скругления, тела по сечениям. Кроме того, отладил систему автоматического регрессионного тестирования. Изначально она была написана не на C++, мне достался смешанный код: Pascal, Visual Basic, скриптовый язык Windows. Всю эту россыпь скриптовых файлов предстояло собрать, преобразовать в стройную систему, которая бы работала для нас. Изучал все по ходу работы: с какими методами сталкивался, то и шел искать в интернете, что на этом языке используется. Здорово пригодился Stack Overflow, где разбирались ошибки.

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

image
Поверхность по сечениям с несколькими направляющими

Александр Спиваков, руководитель разработки конвертеров данных C3D Labs (Коломна)



До разработки ПО у меня был опыт научной работы в разных областях. Разнообразие связано в первую очередь с тем, что я окончил Высшую школу общей и прикладной физики Нижегородского государственного университета (факультет для «маньяков» с набором всего 25 человек). То, что тема бакалаврской и магистерской работы должны отличаться – как раз одна из «фишек» этого факультета. Диплом бакалавра я защищал по теме визуализации СВЧ-излучения в газоразрядной плазме; мой научный руководитель работал (и продолжает работать) в Институте прикладной физики РАН. Магистерскую работу по исследованию фото- и электролюминесценции диодных гетероструктур Si/SiGe:Er/Si я выполнял уже на базе Института физики микроструктур РАН, а позднее поступил в его аспирантуру.

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

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

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

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

После окончания аспирантуры у меня появилась альтернатива: идти работать программистом в компанию «Мера», где я стажировался на 5 курсе, или попробовать себя в другой сфере. Поскольку я уже черпнул немного работы с железом, то хотелось быть поближе к инженерному делу. Но так уж вышло, что в Нижнем Новгороде в основном занимаются телекоммуникациями, не считая подразделения Intel, где пишут компиляторы и различные средства ускорения, поэтому ближе всего к моим запросам оказалась разработка САПР в АСКОН.

Сначала я заинтересовался проектом КОМПАС-3D, но мне посоветовали пойти в математическое подразделение, и я согласился. На испытательном сроке я разрабатывал функции построения поверхностей по четырём кривым и по сети кривых. Уже после испытательного срока мне поручили работу над конвертерами (один из модулей геометрического ядра), которыми я до сих пор и занимаюсь.

image
На работу на велосипеде

Если говорить о каких-то технологических вещах, то их освоение не стало шоком. Тот же SVN или CMake на минимально достаточном уровне были освоены в рабочем порядке. В прикладной области пришлось очень глубоко вникать в спецификации обменных стандартов, но это я не считаю чем-то выдающимся. А вот в коде я впервые увидел паттерн Visitor. Да что там! Я до того в принципе не знал, что есть на свете паттерны, а тут открыл для себя и «банду четырёх», и Александреску.

Проработав полгода, я смог увидеть результат своего труда – распознавание элементарных поверхностей и кривых, представленных в сплайновой форме. Оно было задействовано в конвертерах трёхмерных моделей очередной версии КОМПАС-3D.
+21
8.4k 24
Comments 20