Я хотел бы поделиться недавним опытом собеседований на рынках Канады и США на позицию инженера данных. У меня был больше научный интерес, чем необходимость. Я хотел поделиться со своим сообществом в телеграмм Канале – Инжиниринг Данных. Вообще тема обсуждения оплаты труда, запрлат и корпоративной культуры довольно частая на нашем канале.
У меня не было цели найти новою работу, но у меня была необходимость провести исследование рынка и зарплат, чтобы лучше понять куда двигается индустрия, понять про разброс зарплат на рынке и возможности для специалистов моего уровня.Так же это отличная возможность подчерпнуть новые знания, проверить свои и познакомиться с новыми людьми.
PS Возможно будут ошибки, отмечайте и присылайте, обязательно поправлю. Спасибо!
PPS За лучший "троль" комментарий поставлю лайк;)
Мне было интересно узнать ответы на некоторые вопросы:
-
Как опыт в FAANG компании влияет на поиск работы, дает ли преимущества или нет?
-
Реально ли FAANG компании настолько хороши, или может быть другие компании ничем не хуже, а может даже и лучше?
-
Какие варианты есть для Канадцев в США?
-
Можно ли работать по контракту на свою корпорацию (аналог ООО)
-
Сколько времени занимает процесс?
-
Какие технологии популярны на рынке
-
Какие вопросы задают и многое другое
Мой опыт может быть полезен не только будущим и текущим специалистам данных, но, возможно, и другим специалистам в ИТ.
На вопрос, почему собеседования полезны, я отвечу следующей картинкой:
Есть еще множество интересных причин вот в этой статье - «Вредные» советы для карьерного развития. Еще одна интересная статья на это тему, правда на английском – статья. В которой мне понравилось определение взаимоотношений между компанией и сотрудником (извиняюсь, что на английском): In our culture we call entering the employment market “trying to get a job.” This is an unfortunate turn of phrase. “Getting a job” implies that jobs are a resource out in the world, and you’re attempting to secure one of these resources. But that’s completely backwards. What you are actually doing is selling your labor, and a company is bidding for it. Employment is just striking a mutual deal in the labor market....A job is just a deal. It is a deal between you and a company to exchange labor for money (and other things you value). Если кратко, то работа это контракт между вами (вашим временем) и компанией, которая покупает ваши навыки и знания, а вы выбираете на кого работь.
Мое резюме
У меня много разных резюме от инженера до директора. Для этого исследования я использовал резюме обычного работяги инженера.
Вот мои вводные данные перед началом посика работы:
-
У меня 10 лет опыта.
-
6 лет в Канаде + канадское гражданство.
-
5 лет в Амазон.
-
Допустим, что сейчас работаю в консалтинге Rock Your Data простым инженером данных (по сути это мой сайт, и компания не функционирует, но справляется с задачей работадателя отлично - выглядит легитимно, вот более подробная информация про Опыт создания аналитической консалтинг-компании в Северной Америке).
Где искать работу
Вариантов много, но мне было интересно заглянуть в стартап культуру и небольшие компании. Вот основные ресурсы:
-
LinkedIn Jobs очень достойный вариант, там все хорошие вакансии и нет всякой ерунды.
-
Очень понравился сайт Angel.co, на котором стартапы и компании публикуют вакансии.
-
У известного стартап акселератора - Y Combinator есть сайт с работами
Этих 3-х сайтов хватит с головой. Конечно, для Российских специалистов будет не так просто. Но стартапы всегда любят умных людей и готовы платить меньше рынка. Возможно стоит попробовать.
Выводы
Это самая важная часть статья, мои выводы
-
Вакансий по инжинирингу данных и аналитике огромное множество, все компании осознают важность этой роли и ценность данных, аналитика для компании это как средство гигиены. Из-за нехватки хороших кадров вам могут идти на встречу, например более гибкий график, 100% удаленка и другое. Но самое интересно, что абсолютно все компании понимают ценность данных и аналитики и хотят их максимально эффективно использовать. Это очень радует!
-
Опыт собеседований сам по себе очень полезный, я за 3 недели узнал больше, чем за прошлый год.
-
На рынке есть жесткие рамки зарплат, рекрутеры как будто знают потолок и не будут вам платить выше.
-
Стартапы часто хотят инженера данных, но совершенно для других целей, например делать backend их продукта и ни слова про аналитику. Тут лучше справится инженер программист.
-
Опыт в Амазон дает преимущество только в одном – с вами хотят познакомиться, поговорить, узнать про ваш опыт. Но после 1-й встречи вас уже воспринимают как еще одного кандидата.
-
Если в процессе присутствует HR специалист, то он/она являются своего рода узким местом, процесс затягивается, коммуникация нарушается. В большинстве случаев «клиентский опыт кандидата» страдает. Самое маленькое, что можно улучшить – это давать обратную связь в течение 24 часов.
-
Компания начинает расширять штат и растить команду аналитики при наличии инвестиций от 2 млн долларов.
-
Если компания небольшая, то вы будете общаться с основателями, у них есть чему поучиться. Да и вообще очень интересно делать срез индустрий, смотреть какие технологии и сценарии более популярные и прибыльней.
-
Другим FAANG компаниям вообще на вас наплевать. У них на одну позицию по 1000–1500 откликов, элементарно они могут не увидеть ваше резюме и им все равно, потому что они смогут выбрать хорошего кандидата, возможно даже лучше вас. И кстати, я откликнулся в Амазон раз 5 в Канаде и США, было бы интересно узнать их зарплатные возможности, спустя год после ухода, я сновал стал для них как external кандидат.
-
FAANG компания может платить больше, за счет публичных стоков – RSU Stock. То есть вам дают акции на 4 года, что за вычетом огромного налога, это дает вам деньги. Более мелкие компании таких опций не имеют.
-
Многие стартапы использует NLP для решение базовых потребностей индустрий.
-
В Канаде никто не хочет торговаться, стоят насмерть. Им проще потерять человека и потом искать несколько месяцев нового, чем дать на 10т канадских в год больше. Потому что в таком случае, все кто работают уже в компании, могут узнать и захотеть сравнять зарплату.
-
Максимальная базовая зарплата для дата инженера - 150т канадских, это на руки около 9т канадских в месяц. На семью и ипотеку хватит даже в Ванкувере. А вот мой сосед профессор математики и data scientist получил оффер на 180т канадских, вот вам и разница между инженером и грамотным математиком.
-
С точки зрения технологий, абсолютны все используют облачные вычисления, именно поэтому мой недавний открытый и бесплатный курс по «Введению в облачные вычисления» такой актуальный. Для аналитики в 70% случаев используют open source Airflow, DBT + облачное хранилище Snowflake, я как раз недавно опубликовал урок про этот продукт на своем курсе инженеров данных.
-
Все компании понимают ценность DevOps, CI/CD и других инженерных практик.
-
SQL must have для любой аналитической задачи, далее идет Spark и Python. Но язык SQL нужно знать в 100 % случаях.
-
Открытый проект Data Learn и курс по «Введению в Аналитику и Инжиниринг Данных» закрывает потребности компаний в 95% случаев. Такого курса на русском просто не существует. И это не реклама ресурса, а констатация фактов.
Кто такой Дата Инженер и почему его все так хотят?
Последние лет 7 я работаю дата инженером. В интернете полно информации про такого специалиста, его часто сравнивают с сантехником, так как он работает с pipelines. Если по-простому, то инженер данных отвечает за создание инфраструктуры, как правило, для аналитических сценариев.
Если посмотреть на слайд ниже, на котором я выделил несколько слоев, то мы увидим концептуальной архитектурой аналитического приложения:
Всего я выделяю 5 слоев:
-
Слой источников данных, обычно это бизнес-приложения и другие системы, которые создают данные
-
Слой обработки данных – это инструменты для забора данных их источников, обработки данных и загрузки в целевое хранилище данных. Есть два варианта – пакетная загрузка и потоковая.
-
Слой хранения данных – это про инструменты для хранения наших данных, как правило для аналитики мы используем хранилище данных или озеро данных.
-
Слой углубленной аналитики и экспериментирования – это про data science, ML. В моей интерпретации эти специалисты забирают данные из слой хранения, а не строят сами потоки загрузки и хранилища данных.
-
Бизнес-слой – слой для наших нетехнических пользователей, которым нужно смотреть на данные и принимать бизнес-решения.
Инженер данных отвечает за выбор инструментов хранения и обработки данных, создания аналитической инфраструктуры, чтобы другие пользователи могли получить доступ к данным и делать свою работу. Решение должно быть безопасным, легко масштабируемым, и соответствовать законодательству хранения данных (один GDPR чего стоит).
С одной стороны все просто, а с другой сторону у инженера данных есть огромный выбор технологического стека и много переменных, часто бинарных, например – облако или не облако, контейнер или виртуальная машина, потоковая и пакетная обработка данных, хранилище данных или озеро данных и так далее.
Все хотят человека, кто уже решал такие проблемы и задачи и сможет построить современное аналитическое решения (modern data stack) и раскрыть потенциал данных.
В каждой компании есть свои нюансы, своя структура и модель данных. Абсолютно все знать нельзя, но нужно уметь находить правильную информацию и оптимальное решение исходя из неполных исходных данных, за это и платят.
Обзор компаний и процесса собеседования
Теперь можно и перейти, непосредственно, к обзору компаний, которым «посчастливилось» пообщаться со мной. Весь процесс наверно занял 3 недели.
Компании были в разных часовых поясах. Чтобы не мешать моей основной работе я проводил собеседования утром с 7 до 9 утра, в обед или после работы. Практически каждый день в течение 3-х недель у меня было по 3-4 собеседования в день. Часто я даже не читал описание компании и вакансий, иногда попадал в неловкие ситуации на собеседовании.
Для каждой компании я упомяну:
-
специфику бизнеса
-
технологический стек
-
раунд инвестиций если есть
-
наличие тестового задания
-
наличие HR
-
общий feedback по процессу
Компания 1: Alexei
Alexei – канадский стартап, занимается созданием NLP моделей для обработки документов связанных с законами, судами и юриспруденции. Идея простая, заменить работу дорогих юристов, цена базовой консультации 500 долларов в час. Есть интерфейс, в который можно закинуть вопрос и получить документ на 4-6 страниц про свой вопрос.
Инженер данных должен строить pipelines для сбора текстовых документов и их парсинга с использование NLP. Лично для меня это новая область, и этот кейс не ложится на картинку концептуальной архитектуры. Было несколько встреч с основателем и потом пару встреч с их главным инженером. В общем мы не понравились друг другу, можно было приврать, но мне незачем. Да и инвестиции у них дохленькие и я далек от law.
HR у них нет, тестового задания тоже нет. Попросили лишь только ссылку на GitHub, посмотреть пример кода. У меня его все равно не было.
Стек: AWS, AWS Sage Maker, Python, Apache Airflow, Elasticsearch (как морда продукта).
Компания 2:Tenjin
Компания предоставляет услугу по анализу мобильных приложений и игр. Можно назвать это как dashboards as a service и data warehouse as a service, то есть они создают инфраструктуру и поддерживают ее для клиента. Так же они предоставляют SDK, который можно добавить в свои продукты, чтобы собирать данные внутри приложений. Офис у них в Сан-Франциско и Берлине.
Пообщался с СЕО, он все классно рассказал и ему все понравилось, а вот СТО был какой-то уставший, и вообще как-то забил на все и ушел в отпуск.
Прислали тестовое задание, но платформа реально тормозила и глючила. Вместе с ребятами из Data Learn мы вместе порешали задачки через Zoom, было весело, но результатов так и не узнали.
Стек: AWS, Amazon Redshift, Flink, Looker (embedded для клиентов).
Как я понял из беседы, из-за того, что Apple и Google закручивают гайки в вопросах приватности, все этим компании скоро не смогут отслеживать активность клиентов в магазинах приложений и онлайн. И это реально проблема индустрии, и четкого решения нет еще.
Это был интересный стартап тем, что их поглотила китайская компания, и все сотрудники получают акции этой публичной компании. Может поэтому у СТО не было энтузиазма там работать.
Компания 3: Pythian
Это чистой воды консалтинг, они уже давно на рынке и внедряют аналитические решения. У них есть распределенные команды в Канаде, Штатах и Индии. У них очень хорошие отношения с google cloud.
Я давно знаю их VP Product и пообщался с архитекторами, спрашивали про архитектуру облачных решений, безопасность и облачных инструментов в AWS, Azure, GCP. Спрашивали про моделирование данных на примере Uber. На один вопрос про разницу multiprocessing vs threading я вообще не знал ответ.
Насколько я понял, в консалтинге большая текучка кадров. HR работает быстро, но бюджеты на фонд оплаты труда маленькие, а хотелки большие. 135т канадских в год.
Компания 4: Lunch Box
Компания занимаются создание онлайн решений для оффлайн ресторанов. Я общался с продукт менеджером. И как-то разговор не задался, все мои идеи воспринимались в штыки. Данных у них мало. HR не было. Долго спрашивали про моделирование данных для доставки еды. В итоге, сказали, что мы не подходим друг другу.
Стек: AWS, RDS, MongoDB
Компания 5: ActiveState
Компания разрабатывает софт для программистов. Пообщался с техническим лидом, он спрашивал абстрактные вопросы про сложные архитектурные решения, про проблемы и их решения, как я проектирую аналитическую систему и оптимизирую производительность.
Потом мне прислали тестовое задание – вот оно . Совсем не по моей теме, я даже не стал тратить на него время.
Компания 6: Jobber
Это был самый приятный «клиентской опыт», если воспринимать себя клиент (соискателем). Все были очень дружелюбны, процесс работал как часы. В основном общался с менеджерами и staff (это следующий грейд после senior, но до principal) инженерами.
Они искали инженера в команду ML, чтобы делать инфраструктуру для ML решений их приложения.
Компания делает решения для малого бизнеса. Видно было, что в компании отличная атмосфера и люди любят свою работу. Было несколько тестовых заданий. Вот пример решение одного из них. Задача было не сложная - SQL + Python, но я решил решить ее креативно и несколькими способами.
По деньгам у них лучше, чем Pythian, базовая зарплата 140т канадских + опцион на 20т канадских. Ничего сверхъестественного.
Их промо ролик очень хороший, действительно помогают малому бизнесу быть эффективней. Возможно в будущем я еще с ними встречусь.
Стек: AWS, Amazon Redshift и другие популярные инструменты.
Компания 7: Eqtble
Компания делает решения в стиле data warehouse as a service, но для HR компаний. На выходе клиенты получают готовые показатели в удобных дашбордах.
Поговорил с 2мя молодыми ребятами. Я так и не понял, что и кого они ищут.
Стек: Snowflake, Airflow, DBT
Компания 8: Flywheel Software
Компания делает решения по сегментации клиентов, что для меня выглядит, снова, как data warehouse as a service. То есть они для каждого клиента поднимает кластер Redshift/Snowflake/Bigquery использую готовые шаблоны – Terraform и интегрируют данных.
HR был в процессе, и она реально тормозила процесс, приходилось ей писать и напоминать о себе и о следующем шаге.
Стек: Redshift/Snowflake/Bigquery, Airflow, DBT.
После 2х встреч, я сам уже спрыгнул, устал. Но поидее должен был быть live coding.
Компания 9: Snyk
Компания оказалась 10x Unicorn. Возможно, это будущий FAANG. Насколько я понял, сейчас хорошее время входа в компанию, так как вы получает опцион и после выхода на биржу его цена вырастает в несколько раз. Опционы все дают стандартные часто – 20т канадских. Вообще в Канаде никто не торгуется про зарплату, я давно заметил, или я просто не умею=)
Очень бодро пообщался с VP. Прислали тестовое для аналитика – нужно было запустить свой кластер BigQuery и использовать открытые дата сеты – GitHub и StackOverflow, чтобы написать SQL запросы и визуализировать данные. Решение и мой ответ тут.
Компания 10: Polymarket
Общался с основателем, очень молодой парнишка, сыпал терминами из мира cryptocurrency и blockchain. Я понимал процентов 10. Потом прислал мне тестовое задание, и сказал, что если я его выполню, то будет мне вознаграждение в 1000 американских долларов. Больше было похоже на доработку или разработку функционала продукта.
Вообще идея работы в этой индустрии очень интересно, мир активно развивается в этом направлении, а я ничего не знаю про кейсы аналитики в cryptocurrency и blockchain. Я даже не инвестировал в биткоин.
Компания 11: Chartable
Общался с основателем. Идея стартапа хорошая – сервис для подкастов, чтобы управлять и измерять рекламу.
Классный способ работы с Канадцами – работа по контракту, то есть заключаете договор со своим канадским ООО и работает, вам платят американские доллары. Главное преимущество американского ООО, что я могу нанять свою жену и платить ей половину денег, так как налоги в Канаде прогрессивные, то 150 тысяч в год на одного или 75т в год у двоих это очень большая разница по чистой прибыли.
Прислали тест на back end разработчика. С ребятами из нашего сообщества. Даже решили половину задачек, но не помогло.
Кстати, они очень классно расписали процесс собеседования в QUIP (это такой блокнот редактор, мы его использовали в Амазоне). Можете сами посмотреть насколько все грамотно - Candidate’s Guide to Eng Interviewing at Chartable.
Стек: Snowflake, DBT, Airflow, Python, RDS
Компания 12: AbCellera
В пандемию и после компании в Biotech сегменты поднялись. Я пообщался с разными командами и менеджерами. По их словам, у них работают крутые специалисты из Amazon и Microsoft. Они хотят построить платформу данных с нуля. В процессе был HR, такого медленного процесса я не встречал. Никаких фидбеков, просто одно письмо раз в неделю.
Потом надоело ждать и я просто завершил процесс. На вопрос про зарплатные ожидания я не получил ответ. Но согласно glass door отзывам зарплаты там не большие.
Компания 13: DataPrime
С этой компаний разговор был короткий, они для Канадцев визу не делают, и судя по описанию они совсем крохотные.
Компания 14: Provision
Компания решает интересные задачи с использование NLP, что-то связано с агробизнесом. Была встреча с основателями, но в итоге они взяли местного специалиста. Кстати зарплата у них уже была 150т канадских. Как я понял это потолок для инженера данных.
Стек: AWS, Databricks, Apache Superset, Airtable, Preset.
Компания 15: Fathom Health
Компания занимается анализом медицинских карт, это называется medical charts. Я вообще думал, что charts это графики и визуализация данных. Общался с их CPO. У них офисы в Сан-Франциско, Торонто и Польше. CPO мне рассказал про 42 часовую рабочую неделю. 42?! Я тоже не понял и переспросил несколько раз, все верно 42, не меньше!
Рассказали про следующие интервью с live coding и прислали требования, мягко говоря, out of the box. Посмотрите сами - Live Code Screen Evaluation + Preparation.
Стек: Google Cloud, GCP, Google ML сервисы
Компания 16: GetBasis
Компания делает ETL продукт. Очень классно пообщался с основателями. Даже помечтал о своей роли в роде Chief Evangelist, рассказал им про возможные пути развития продукта через интеграцию маркетплейс Snowflake, партнерство с Firebolt и кучу других идей.
Поговорили о развития продуктов, про мой путь в развития компании в Северной Америки и дата сообществ. Они хотели бы, чтобы я к ним переехал в Сан-Франциско это нужно зарплату в 400т американских в год, где столько взять. Решили остаться друзьями. Вот тут больше информации и описание их продукта.
Мне понравилися их концепт от современного data stack к еще более современному:
Вообще идею о своем дата продукте меня не покидает, осталось придумать продукт. Делаете дата продукт на запад? Давайте пообщаемся;)
Компания 17: Bite
Хорошая компания, один из основателей Стас, мы с ним поговорили по-русски. Идея простая, ставим в ресторан планшет и пользователь сам заказывает и оплачивает. Дальше получает свой заказ. Если крупные бизнесы как Макдональдс, потратили 1,5 млрд. на внедрение такой технологии по всему миру, то малый бизнес такого позволить себе не может. Ребята сделали офигенный продукт, нашли классных консультантов и внедряют свое решение.
Я пообщался с их новым дата инженером, их консультантом аналитиком, почти дедушка на пенсии в NY, который, между прочим, изучил мой блог на medium и похвалил меня за то, что я не использую buzz words, пишу понятным и простым языком, следовательно понимаю, о чем пишу и что делаю.
Стек: AWS Snowflake, DBT, Airflow
Где-то здесь я понял, что у меня кончились силы говорить с ними и рассказывать одно и тоже, снова и снова. Идея «ковровой бомбардировки» хороша, но тратится много эмоциональной энергии. Так что, я уже начал закругляться.
Компания 18: AppAnnie
Было интересно поговорить с этой компанией. Все, что я о них знал – это недавний скандал про обман клиентов и разработчиков - Company Will Pay $10 Million to Settle First Enforcement Action Against Alternative Data Provider. Но я перепутал время и пропустил встречу. HR мне больше предложил перенести время.
Компания 19: HomeStars
Пообщался в пол силы с HR, узнал, что компания использует Snowflake+Informatics+Tableau. Informatica – это такой ETL продукт, который я еще внедрял в Сбербанке в 2011 году. Не знаю, как им так не повезло, что у них Snowflake + Informatica. HR в итоге куда-то пропал.
Стек: Snowflake, Informatica, Tableau
Компания 20: Sonder
Пообщался с HR, следующую встречу они хотели посвятить live coding. Но я ее отменил.
Стек: Snowflake, Airflow, DBT.
Компания 21: KOHO
Стек: Google Cloud, BigQuery, Data Flow, PubSub, Apache Spark
Компания 22: Gooten
Пообщался с HR из Колумбии. Сложилось впечатление, что она с удовольствием практикует английский. Была супер вежливая и веселая. Рассказала, что у них маленькая дата команда, всего 3 человека в Штатах и в Сербии. Предложили тоже работать через канадский ООО, в год 90-100т американских. Это конечно очень мало для такой позиции, но как я говорил, у такого решения есть преимущества и можно пристроить жену на зарплату своего ООО.
Стек: AWS, Python, Snowflake, DBT, ThoughtSpot.
Заключение
На этом мои встречи закончились, скажу честно, сильно устал эмоционально, я даже никогда про это не думал, что это так выматывает. Можно сделать спринт 3-4 компании за недельку другую, но 20+ компаний за 3 неделю это даже для меня оказалось тяжело. Для некоторых компаний я еще решал тестовые задания, а это минимум 6 часов. Но как говорится без труда, не выловить рыбку из пруда. Каждый раз я пробовал что-то новое. Именно в такие тяжелые моменты понимаешь, что жизнь кипит. Особенно это полезно в времени lockdown/пандемии или как там это безумие называется.
Вы же знаете, что ресурсы можно масштабировать вертикально, как у SMP баз данных, и горизонтально, как у MPP баз данных. Карьерный рост - это вертикальное масштабирование, и оно не дает значительного прироста, а вот горизонтальное масштабирование может. Я слышал про случаи - These People Who Work From Home Have a Secret: They Have Two Jobs. Интересно узнать как у отечественных инженеров дела обстоят с подработками и сторонними проектами.
Автор: Дмитрий Аношин