В специальном материале ко Дню программиста наши ребята рассказывают, как GTA и «Масяня» повлияли на выбор профессии, рассуждают о романтике программирования и «магии» машинного обучения и ломают стереотип о том, что программисты «общаются только с компьютером».

Тимофей Ефимов Тимофей Ефимов, Machine Learning Engineer 

— В eLama ты занимаешься Лингвогенератором. Расскажи, для чего он нужен и что конкретно делаешь ты. 
— Допустим, у нас есть задача — сделать рекламу для
интернет-магазина. Вручную — неудобно: очень много товаров. Лингвогенератор делает это автоматически: берет фид для Яндекс.Маркета и по этому фиду генерирует объявления. 
Я дорабатываю текущие решения с помощью машинного обучения. Если проще — делаю инструмент, который позволяет извлекать ключевые элементы для составления этих объявлений. 

 

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

 

— И как же она это опознает?
— С помощью магии машинного обучения. *смеется*

 

— Каково это — обучать машину? Наверно, не то же самое, что обучать ребенка.
— На самом деле, очень похоже. Есть определенная система разметки и модель. Я сделал штуковину, которая позволяет одновременно и обучать модель, и размечать данные. Это называется Human-in-the-Loop: модель подсказывает какие-то факты из текста, а ты либо соглашаешься, либо не соглашаешься с тем, как она это подсказала. На основании твоих ответов модель обучается и потом подсказывает тебе новые данные в другом тексте. И так далее. После определенного количества итераций модель учится извлекать что-то интересное. 

 

— Общался ли ты с пользователями? Что они думают об инструменте?
— Я присутствовал на нескольких Skype-интервью. Было довольно интересно. Понял, что мы людям помогаем, им нравится то, что мы делаем.

 

— Как ты пришел к программированию?
— Не знаю. В детстве много в компьютерные игры играл, в GTA, например. Решил, что раз столько времени за компьютером провожу, значит, буду программистом.

 

— Почему пришел работать в eLama?
— Меня позвал одноклассник. Я решил, что проект интересный и задача крутая — таким не везде можно заниматься. Пособеседовался, получил оффер и переехал.

 

— Откуда?
— Из Екатеринбурга.

 

— На чем пишешь?
— На Python в основном. На «плюсах» еще. Да много на чем
по чуть-чуть.

 

— Если окажешься перед создателем Python, что ему скажешь?
— Скажу: «Здравствуйте, Гвидо. Когда сделаете статическую типизацию?». Но он мне ничего не ответит, потому что уже этим не занимается, отошел от дел.

 

— Многие считают, что программисты странные. Ты с этим согласен? 
— Программисты — люди творческие, а все творческие люди немного странные. 

 

— Творческие?
— Программирование — это создание программ. Создание — это определение креатива. Значит, программист — креативная профессия.

 

— Самый страшный кошмар программиста?
— Быть ненужным. Но это страшный кошмар не только для программиста, а вообще для любого, наверно. 

 

— Что нужно, чтобы стать хорошим программистом?
— Желание программировать. 

Надежда Якуба Надежда Якуба, Mathlinguist 

— Ты занимаешься матлингвистикой. Как лингвистика сочетается с программированием?
— Отлично сочетается. *улыбается* Есть много задач, связанных с обработкой и созданием «человеческих» текстов, например, автоматизация перевода. 

 

— Почему ты выбрала именно это направление?
— В университете я училась на кафедре математической лингвистики. Хотя упор делался на фундаментальную лингвистику, у нас был матанализ и программирование. И оно меня увлекло: понравилась идея того, что можно создать программу, которая будет делать что-то за тебя или для тебя.

 

— Часто пристают с просьбами в духе «сделай мне что-нибудь, тыжпрограммист»? 
— Чаще — как раз с «тыжлингвист». *смеется* То есть «а как правильно произносится?» и с другими вопросами из той же серии.

 

— Как ты пришла работать в eLama?
— Искала на HeadHunter вакансии по специальности — да, я тот самый человек, который работает по специальности, *смеется* — и пришла на собеседование, потом сделала тестовое задание. Мне сказали: «Окей, берем!» — и я, не раздумывая, пришла. И уже почти четыре года работаю здесь.

 

— Что тебе нравится в eLama? 
— Атмосфера и команда, с которой я работаю: ребята очень классные. И мне интересно то, чем я занимаюсь. Я работаю над Лингвогенератором; проект растет, и я расту вместе с ним. В процессе я освоила много нового, в том числе из программирования. До eLama у меня было не так много опыта. Полноценно писать на Python, например, я начала именно здесь.

 

— Не сталкиваешься ли с предвзятым отношением из-за того, что ты девушка? Все-таки программистами чаще становятся парни. 
— Нет, мне повезло. Ни у наших ребят, ни у ребят из других команд нет предвзятого отношения. И мне это нравится. Многие мои подруги часто сталкиваются с тем, что даже просто женщина в коллективе — это уже проблема.

 

— С какими стереотипами о программистах ты сталкиваешься?
— Считается, что в программирование идут, чтобы не общаться с другими людьми — ведь ты «общаешься» с компьютером. На самом деле, это совершенно не так. У тебя есть команда, с которой нужно взаимодействовать, и другие команды, с которыми тоже нужно взаимодействовать.

 

— А с пользователями ты общалась? 
— Я была на встрече в качестве консультанта. Получать обратную связь важно, ведь твой продукт не существует в вакууме — им пользуются люди. И они помогают найти ошибки или недочеты, могут подсказать что-то, о чем ты даже не задумывался. Я считаю, что в разработке нужно идти прежде всего от того, что хотят пользователи, а не от того, что, как тебе кажется, они бы хотели. 

Владимир Краснов Владимир Краснов, Руководитель проекта стажировок Junior Lab 

— С чего начался твой путь программиста? 
— Когда мне было года три, дома появился первый компьютер. Это был ZX Spectrum, эдакая клавиатура с микросхемами. Его принес отец для каких-то своих задач: он инженер. Но это был неосознанный опыт. 
А когда мне было лет пятнадцать или шестнадцать, у меня не запускалась какая-то игрушка, и я пытался решить проблему. Что-то поправил, и все заработало. С тех пор я стал глубже интересоваться темой; плюс дома оказалась книжка по Java — начал изучать. Еще мне нравились флеш-мультики типа «Масяни», и во всей этой истории был встроенный язык программирования — ActionScript; я изучил и его. В школе потом делал презентации не в PowerPoint, а на флеше. Людям нравилось. 
А в универе от друзей я узнал про Linux и PHP, и меня окончательно затянуло.

 

— Как пришел в eLama?
— В марте 2017 года меня пригласили преподавателем. Опыта преподавания у меня не было, но до этого я долго работал тимлидом. В процессе обучал людей современным подходам и инструментам, в том числе практикам DevOps. И здесь мне понравилась задача — сформировать «школу» стажеров для компании.

 

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

 

— А в чем она — романтика программирования?
— Ну, у меня таких представлений уже нет, а вот многие думают, что станут новыми Цукербергами, весь интернет будет у них на кончиках пальцев, они изменят мир. Но на деле все часто сводится к точечным задачам, которые ставит бизнес.

 

— Какими навыками нужно обладать, чтобы попасть на стажировку в Junior Lab?
— Суперспособностей не нужно. Достаточно иметь живой ум, базовые знания о программировании (знать, что такое функция и т.д.) и не бояться ошибаться — уметь после падения встать и пойти дальше. И нужно, чтобы глаза горели. Мы, конечно, можем это и здесь организовать — любая группа получает задачу, от которой горят и глаза, и еще одно место, — но и у самих стажеров должна быть мотивация.

 

— Как происходит отбор? 
— У нас постоянно идет тестирование, зарегистрироваться и начать выполнять задания можно в любой момент. Новый поток рассчитываем запустить в ноябре. В среднем в месяц есть около 300 желающих попасть на стажировку. Некоторым пишем сразу и даем тестовые задания; смотрим на активность в выполнении учебных проектов и зовем восемь-десять человек на групповое собеседование. Мы рассказываем о том, чем занимается компания и как будет проходить стажировка, а ребята — о себе. В зависимости от ситуации можем сразу кого-то отобрать или провести техническое собеседование.

 

— Как проходит стажировка?
— Мы делим ребят на группы; у каждой свой проект. Длится стажировка два-три месяца. Для стажеров созданы идеальные условия. Во-первых, они постоянно находятся в профессиональной среде. Во-вторых, есть полностью оборудованное рабочее место со всем фаршем — хоть два монитора себе возьми. Когда я учился, о таком мог только мечтать. И конечно, компания дает стажерам полный доступ ко всем специалистам, которые готовы ответить на любые вопросы — было бы желание их задавать.

 

— А что потом?
— Выдаем сертификат и либо забираем к себе (у нас было примерно 50 стажеров, из них в eLama сейчас работают около десяти), либо отпускаем на волю, на рынок труда. Получается такой джун с «гарантией» — у каждого выпускника в портфолио есть проект. В среднем за месяц ребята находят работу. 

Алексей Харченко Алексей Харченко, Development Teamlead

— Как ты решил стать программистом?
— Классе эдак в восьмом ко мне подошел товарищ и сказал: «Я хочу пойти учиться на программиста после школы, пошли со мной! — Да не проблема, пошли!»

 

— А как пришел в eLama?
— Похожим образом. Решил уйти с предыдущей работы, а в eLama у меня товарищ работал. Сказал: «Приходи, здесь круто!». И не обманул. *улыбается*

 

— Расскажи о работе над Импортом лидов из соцсетей. 
— Изначально он был для Facebook. Мы обнаружили, что соцсеть не присылает оповещения о лидах из Lead Ads. То есть человек в реальном времени ждет, что ему скоро ответят, но рекламодатель об этом не знает. Информацию о лидах можно только вручную выгружать из кабинета Facebook. Это неудобно. И мы подумали, что надо эту проблему решить.

 

— И как решали?
— Это был первый инструмент по Facebook. Поэтому большую часть времени потратили на ресерч проблемы: выясняли, что мы можем и чего не можем сделать. Главная сложность состояла в том, что мы не знали, как это работает в Facebook: документация была устаревшая, а система разрешений у Facebook не самая тривиальная. Много занимались административными нюансами. Первую версию выкатили месяца через два. И судя по отзывам пользователей, мы сделали то, чего им правда не хватало. Импортом лидов действительно пользуются.

 

— Помнишь свой первый компьютер? 
— Да. Он появился у меня в 2005 году. Я очень радовался, потому что уже учился на программиста, но компьютера у меня еще не было. И где-то ко второму курсу отец мне его купил. Как известно, все родители детям покупают компьютеры для учебы, но дети в основном играют.

 

— Во что ты играл?
— Во все, до чего мог дотянуться. Civilization III очень любил, даже пытался ее написать на Паскале. Но быстро забросил эту идею.

 

— С какими стереотипами о программистах ты сталкиваешься? 
— Не знаю насчет стереотипов, но видимо, мы действительно как-то по-другому выглядим. Не знаю, как нас остальные люди опознают. Как-то раз я зашел сфотографироваться на документы, и женщина, которая делала фото, посмотрела на меня и сказала: «О, вы точно разбираетесь в компьютерах! Помогите, у меня принтер не печатает». 

 

— Починил?
— Починил. Потом еще года три фотографировался там на документы бесплатно. *смеется*

 

— На чем пишешь?
— На РНР. 

 

— Если бы ты оказался перед создателем РНР Расмусом Лердорфом, что бы ему сказал? 
— Скорее всего, похвалил бы и сказал спасибо за то, что у меня есть работа.

Хотите стать частью нашей команды? Следите за актуальными вакансиями — возможно, работа мечты уже ждет вас. Или расскажите о своем опыте и навыках в письме на [email protected]  

 

Узнать о вакансиях

eLama, контент-маркетолог