newsmode
search
Меню
arrow_back Назад

Why Have a Data Science Portfolio and What It Shows

auto_awesomeКраткое саммари

Юджин Ян объясняет, зачем дата-сайентисту нужно личное портфолио и что оно показывает помимо технических навыков. Главный тезис: получение работы не должно быть единственной мотивацией — внутренние причины (учиться, помогать другим, получать удовольствие) делают проекты устойчивыми. Портфолио бывают двух видов: код (например, проекты Винсента Вармердама и Лилинга Тана) и контент (иллюстрированные гайды Джея Аламмара, еженедельные посты Амита Чаудхари, креативные эксперименты Элль О'Брайен). Помимо технических навыков, портфолио демонстрирует soft skills и черты характера: любопытство, способность учиться и упорство (grit), которые при найме автор ценит выше чистых tech-skills. Главный вывод: фокусируйтесь не на портфолио как артефакте, а на процессе — на интересных, личностно значимых проектах, которые растягивают ваши способности.

Why Have a Data Science Portfolio and What It Shows

Зачем нужно портфолио по data science и что оно показывает

[ datascience learning career ] · 15 min read

[ datascience learning career ] · 15 мин чтения

Thinking of building your data science portfolio? If we google for “data science portfolio”, we’ll get many results on “how” to build one.

Думаете о том, чтобы собрать портфолио по data science? Если погуглить «data science portfolio», мы получим множество результатов о том, «как» его построить.

Google search results for "data science portfolio". Many are related to getting a job.

Результаты поиска Google по запросу «data science portfolio». Многие из них связаны с поиском работы.

However, most resources don’t discuss enough about the “why” and the “what”. Why work on personal projects and build a portfolio? What does a portfolio demonstrate, other than technical skills?

Однако в большинстве материалов недостаточно обсуждаются «зачем» и «что». Зачем работать над личными проектами и собирать портфолио? Что демонстрирует портфолио помимо технических навыков?

Whether you’re starting on your first or fifth personal project, I hope this will help you find a meaningful “why” and make projects more enjoyable and sustainable. We’ll also hear from awesome creators on their motivations for building and writing (click on 👉). In addition, we’ll discuss the various skills (technical and non-technical) and traits projects demonstrate so you can pick projects that better demonstrate your strengths.

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

(Note: I’ll address portfolios and personal projects interchangeably. Nonetheless, portfolios can extend beyond personal projects to include work-related projects too.)

(Примечание: я буду говорить о портфолио и личных проектах как о взаимозаменяемых понятиях. Тем не менее, портфолио может выходить за рамки личных проектов и включать также рабочие проекты.)

Getting a job shouldn’t be the only “Why”

Получение работы не должно быть единственным «зачем»

Getting a job is usually the main reason for building a portfolio. Sometimes, it’s necessary if we don’t have the relevant education or experience. Nonetheless, it’s extrinsic motivation, where we do something for an external reward (i.e., a job) and not for its own sake. This can reduce intrinsic motivation and lead to dependence on external rewards. We might stop once we get that job or continuously fail (and don’t get rewarded).

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

Thus, other than to get a job, we should also find intrinsic reasons for working on personal projects. These reasons will make the project naturally satisfying, where the work is its own reward.

Поэтому, помимо получения работы, нам также следует найти внутренние причины для работы над личными проектами. Эти причины сделают проект естественно приносящим удовлетворение, где работа сама по себе является наградой.

One reason is to learn and practice. Perhaps we’re fascinated by a branch of deep learning. Or we want to get more hands-on experience to hone our skills. Either way, the knowledge and skills gained are often transferable to work and will make us more effective data scientists. It also aligns with a key factor of motivation: Mastery, the desire to improve.

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

“Learning is a treasure that will follow its owner everywhere.” — Chinese Proverb (学习是永远跟随主人的宝物)

«Учение — это сокровище, которое будет следовать за своим хозяином повсюду». — Китайская пословица (学习是永远跟随主人的宝物)

Another reason is to help others. This includes volunteering with non-profit organizations such as DataKind, developing and releasing a helpful package, or sharing about what we’ve learned (via writing or talks). This aligns with another key motivation factor: Purpose, the desire to contribute to the bigger picture.

Другая причина — помогать другим. Это включает волонтёрство в некоммерческих организациях, таких как DataKind, разработку и публикацию полезного пакета или обмен тем, что мы узнали (через статьи или доклады). Это согласуется с другим ключевым фактором мотивации: Цель, желание внести вклад в нечто большее.

“If you want to lift yourself up, lift up someone else.” — Booker T. Washington

«Если хочешь возвыситься, возвысь кого-то другого». — Booker T. Washington

Finally, we do personal projects because they’re enjoyable. We start projects for the sake of fun, or to scratch a “this should exist” itch. They could also be hobbies. Nonetheless, over time, it builds up to become an impressive portfolio created through consistent effort.

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

“It’s hard to beat someone who’s having fun.”

«Трудно победить того, кто получает удовольствие».

In the next section, we’ll see some amazing personal projects and hear from their creators on their “why”. Often, it’s to scratch an itch, a way to learn, and to help others.

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

Portfolios come in two flavors: Code and Content

Портфолио бывают в двух вариантах: Код и Контент

Most of the time, discussions on data science portfolios refer to code. Such projects involve acquiring public data, performing statistical analysis, plotting visuals, or training machine learning models. It could also include contributions to open-source libraries, as well as data science competitions. Some people may obsess over how much code they write, but don’t sweat it if you’re not committing daily.

Чаще всего обсуждения портфолио по data science относятся к коду. Такие проекты включают получение публичных данных, выполнение статистического анализа, построение визуализаций или обучение моделей machine learning. Сюда также может входить вклад в open-source библиотеки, а также участие в соревнованиях по data science. Некоторые люди могут зацикливаться на том, сколько кода они пишут, но не переживайте, если не коммитите ежедневно.

For folks worried about their contributions:

I work at Google. A friend on our team had the distinction of being the most prolific coder at Google for a quarter.🤯🥇🏆 Top coder. Number 1.

Two things
1) No one cares! Not even him.
2) His GitHub account is empty. Not even an avi https://t.co/VSZ2g46TDl

— Mekka *My Mask Protects You* Okereke (@mekkaokereke) May 28, 2020

Для тех, кто переживает о своём вкладе:Я работаю в Google. Один мой друг из команды получил отличие как самый плодовитый кодер в Google за квартал.🤯🥇🏆 Топ-кодер. Номер 1.Две вещи1) Никому нет дела! Даже ему самому.2) Его GitHub-аккаунт пуст. Даже аватарки нет https://t.co/VSZ2g46TDl— Mekka *My Mask Protects You* Okereke (@mekkaokereke) 28 мая 2020

Vincent Warmerdam has several projects listed on his site and most of the code is open source. The projects are a combination of useful (e.g., word embedding visualizations, scikit-lego) and fun (e.g., cron scheduler) and have great documentation. Here’s his take on why he builds and shares these projects:

У Vincent Warmerdam несколько проектов перечислены на его сайте, и большая часть кода открыта. Проекты — это сочетание полезных (например, визуализации word embeddings, scikit-lego) и забавных (например, cron-планировщик), и у них отличная документация. Вот его мнение о том, почему он создаёт и делится этими проектами:

“Some of those tools (mainly; whatlies) are written as part of my job. So I gotta admit that I’m a ‘lil bit lucky there. A lot of the other tools originated more from a “this should exist”-feeling. I’ve learned a lot from making these tools, sure, but the reason why they exist is because it is scratching an itch.”

«Некоторые из этих инструментов (в основном whatlies) написаны в рамках моей работы. Так что должен признать, мне немного повезло. Многие другие инструменты родились скорее из ощущения «это должно существовать». Я многому научился, создавая эти инструменты, но причина их существования в том, что они почесали зуд».

Another great example is Liling Tan’s work on NLP. He builds corpora and tools for NLP. This includes multilingual corpus, word sense disambiguation, and “character vomiting”. There’s a mix of quirky and useful, and a lot of learning. Here’s why he built them and his advice on sharing code publicly (without being embarrassed):

Другой отличный пример — работа Liling Tan по NLP. Он создаёт корпуса и инструменты для NLP. Сюда входит многоязычный корпус, разрешение лексической многозначности и «character vomiting». Есть смесь странного и полезного, и много обучения. Вот почему он их создавал и его совет о публичном размещении кода (без стеснения):

“Usually it starts with scratching my own itch or satisfying some curiosity. For example, the “character vomiting” tool was built to identify all possible unicode characters that can be generated for specific languages for an NLP task. So I dug into the unicode specification and learned a whole lot about similarities and peculiarities of languages and how Unicode categorize different character sets.

«Обычно всё начинается с того, что я чешу свой собственный зуд или удовлетворяю любопытство. Например, инструмент «character vomiting» был создан для идентификации всех возможных юникод-символов, которые могут быть сгенерированы для конкретных языков в задаче NLP. Поэтому я углубился в спецификацию Unicode и узнал очень много о сходствах и особенностях языков и о том, как Unicode классифицирует разные наборы символов.

Like viral TikTok videos, you’ll never know which open source becomes popular, so open sourcing your code often is a good way to expose yourself to feedbacks and sometimes get great ideas from feature requests. And for those that are afraid of people being critical at your code publicly, my two cents worth is never to be ashamed of the code you write/release, we all started from zero and everyone is constantly learning in the computing/data world, see how to concatenate strings.”

Как и с вирусными TikTok-видео, никогда не узнаешь, какой open source станет популярным, поэтому часто открывать исходники — хороший способ получить обратную связь и иногда отличные идеи из запросов на новые функции. А для тех, кто боится, что их код будут публично критиковать, мои два цента: никогда не стесняйтесь кода, который вы пишете/публикуете, мы все начинали с нуля, и все постоянно учатся в мире computing/data, посмотрите как соединять строки».

Made With ML (MWML) has a thread of personal projects showcased on their platform. It includes applying research to product, building ML apps, as well as teaching and sharing about data science journeys. The MWML team shared that a few of these folks got hiring into computer vision and joined Weights and Biases. (Also, here’s a great collection of projects from their DS Incubator.)

У Made With ML (MWML) есть тред с личными проектами, представленными на их платформе. Он включает применение исследований к продукту, создание ML-приложений, а также обучение и обмен опытом о пути в data science. Команда MWML рассказала, что нескольких из этих людей наняли в computer vision и они присоединились к Weights and Biases. (Также вот отличная коллекция проектов из их DS Incubator.)

👶 We are 4 months old today! 1.9K projects, 3K DAU, 5K MAU, 1.7K Slack (50K messages) & growing!

But what's MOST important to us is that the community has been building & we've become a place to showcase it! Check out a sample of the different kinds of portfolios 🔥

⬇️ Thread pic.twitter.com/ZA58KlTbOO

— Made With ML (@madewithml) July 18, 2020

👶 Нам сегодня 4 месяца! 1.9K проектов, 3K DAU, 5K MAU, 1.7K в Slack (50K сообщений) и продолжаем расти!Но что для нас ВАЖНЕЕ всего — это то, что сообщество строит, и мы стали местом, где это можно показать! Посмотрите подборку разных видов портфолио 🔥⬇️ Тред pic.twitter.com/ZA58KlTbOO— Made With ML (@madewithml) 18 июля 2020

Content-based projects are less discussed. These are (technical) content you share via papers or writing online, or talks you give at conferences and meetups. It includes well-written READMEs on git repos, as well as video walkthroughs (e.g., how-tos, summaries, etc.). After we complete a code-based project, we should follow up by writing about it and share it so others can benefit from it too.

Контентные проекты обсуждаются реже. Это (технический) контент, которым вы делитесь через статьи или публикации онлайн, или доклады, которые вы делаете на конференциях и митапах. Сюда входят хорошо написанные README в git-репозиториях, а также видео-разборы (например, how-to, summary и т.д.). После завершения проекта на основе кода мы должны написать о нём и поделиться, чтобы другие тоже могли извлечь из него пользу.

Jay Alammar’s site is a great example of amazing content-based projects. There’s virtually no one that learns about Transformers or BERT, ELMo, and co. without Jay’s illustrated guides. It’s clear that he enjoys demystifying NLP techniques for the rest of the world, and puts in care and effort into creating his content. This is due to his curiosity and desire to help others understand research easier.

Сайт Jay Alammar — отличный пример удивительных контентных проектов. Практически никто не изучает Transformers или BERT, ELMo и компанию без иллюстрированных гайдов Джея. Ясно, что ему нравится демистифицировать техники NLP для остального мира, и он вкладывает заботу и усилия в создание своего контента. Это связано с его любопытством и желанием помочь другим легче понимать исследования.

“My ML work is motivated by:

«Моя ML-работа мотивирована:

  • Intense curiosity about the topics I write about and fascination about the developments in NLP.
  • Writing, visualizing, and publishing my work forces me to learn much deeper than if I was just to read a paper.
  • Reading cutting-edge work in the field is often intimidating, I find. But I found if I give a certain concept enough time and focus, I can understand it in simpler terms than I would gleam from original papers. By elucidating my new-found understanding visually, I hope to make it easier for others to quickly grasp these concepts.
  • I love the collaborative and open sharing of code and concepts in software and ML fields. I’ve benefitted from incredible software, documentation, and research that people voluntarily put out there for everyone. I want to be a part of that virtuous cycle.”
  • Сильным любопытством к темам, о которых я пишу, и увлечённостью развитием NLP. Написание, визуализация и публикация моей работы заставляют меня учиться гораздо глубже, чем если бы я просто читал статью. Чтение передовых работ в области часто пугает, как я обнаружил. Но я нашёл, что если уделить определённой концепции достаточно времени и внимания, я могу понять её в более простых терминах, чем если бы извлекал из оригинальных статей. Излагая своё новообретённое понимание визуально, я надеюсь облегчить другим быстрое усвоение этих концепций. Я люблю совместное и открытое распространение кода и концепций в области software и ML. Я извлёк пользу из невероятного программного обеспечения, документации и исследований, которые люди добровольно выложили в открытый доступ для всех. Я хочу быть частью этого добродетельного цикла».

    Along the same vein, Amit Chaudhary writes weekly to explain machine learning concepts using diagrams, animations, and intuition. It’s part of his approach of taking small steps to get better at his craft. I enjoyed his breakdown of behavioral testing for NLP models and information retrieval evaluation metrics. It started as a hobby and has since helped him make new friends.

    В том же духе Amit Chaudhary пишет еженедельно, чтобы объяснять концепции machine learning с помощью диаграмм, анимаций и интуиции. Это часть его подхода — делать маленькие шаги, чтобы становиться лучше в своём ремесле. Мне понравился его разбор поведенческого тестирования NLP-моделей и метрик оценки information retrieval. Это началось как хобби и с тех пор помогло ему завести новых друзей.

    “I initially started writing just as a hobby to share what I was learning. In the process of helping others, it turned out to be a great way to discover my interest areas, connect with interesting people in the ML space, and build a portfolio. I feel everyone faces some unique challenges and resource gaps in their space and can help fill that gap through their writing.”

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

    Another interesting example is Elle O’Brien’s writing. Her content is data science with a touch of quirky. I enjoyed her content on using machine learning to bake the most average cookie and visualizing big data of big hair (mouse over the visuals!). They go beyond the cookie-cutter content we see on Medium. Here's her process of using side projects to learn and pay it forward, which also led to her current role.

    Другой интересный пример — работы Elle O'Brien. Её контент — это data science с долей странности. Мне понравился её материал об использовании machine learning, чтобы испечь самое среднее печенье и визуализировать большие данные о больших причёсках (наведите курсор на визуализации!). Они выходят за рамки шаблонного контента, который мы видим на Medium. Вот её процесс использования сайд-проектов для обучения и «передачи дальше», что также привело к её текущей роли.

    “I use side projects as a way to motivate myself to learn data science techniques really thoroughly. For example, once I realized you could teach neural networks to generate completely ridiculous content, I figured I could finally know how a computer would make up romance novel titles. And that started me wanting to use deep learning.

    «Я использую сайд-проекты как способ мотивировать себя по-настоящему тщательно изучать техники data science. Например, когда я однажды поняла, что нейросети можно научить генерировать совершенно нелепый контент, я подумала, что наконец-то могу узнать, как компьютер придумал бы названия любовных романов. И это побудило меня захотеть использовать deep learning.

    My process is to start with a question, go wherever that question takes me, and then share the project. Sharing your work is important. Everything I learned about the practical, hands-on aspects of data science, I learned, from people who have shared their software and their datasets and their thinking. So sharing is “paying it forward”. It also helps you build credentials and network; I got my current job through Twitter after I shared a project using a generative adversarial network.

    Мой процесс — начать с вопроса, пойти туда, куда этот вопрос ведёт, а затем поделиться проектом. Делиться своей работой важно. Всё, что я узнала о практических, hands-on аспектах data science, я узнала от людей, которые делились своим программным обеспечением, своими датасетами и своим мышлением. Так что делиться — это «передавать дальше». Это также помогает создавать репутацию и сеть; я получила свою текущую работу через Twitter после того, как поделилась проектом с использованием generative adversarial network.

    Something worth noting: When I did these side projects, I was doing a doctoral degree that was teaching a lot, but not much about modern machine learning (all the action happening the last few years in deep learning, for example). Side projects made sure I was establishing some credentials there, so I’d be able to get the jobs I wanted when I graduated. And also so I didn’t “miss out” on all the action :) ”

    Стоит отметить: когда я делала эти сайд-проекты, я занималась докторской диссертацией, которая многому учила, но не очень — современному machine learning (всё то, что происходило в последние годы в deep learning, например). Сайд-проекты гарантировали, что я создаю там некоторую репутацию, чтобы суметь получить желаемые работы, когда выпущусь. И также чтобы не «упустить» всё происходящее :)»

    Portfolios don’t just demonstrate technical skills

    Портфолио демонстрируют не только технические навыки

    Most portfolios demonstrate skills and traits. On skills, both technical and soft skills are shown and important to hiring managers.

    Большинство портфолио демонстрируют навыки и черты характера. Что касается навыков, и технические, и soft skills важны для нанимающих менеджеров.

    Technical skills are straightforward to demonstrate and also the most observable. Code-based portfolios show we’re able to do the work and are another data point beyond the resume. They also help to earn trust with recruiters and hiring managers. Depending on the project, you can demonstrate:

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

  • Data acquisition and preparation (e.g., scrape some data, and format and clean it)
  • Data storytelling (e.g., tell a story around the data, with statistics and visuals)
  • Machine learning (e.g., train and deploy a model, with validation and metrics)
  • Deployment (e.g., serve your machine learning app online for others to use)
  • Software engineering (e.g., readability, maintainability, unit tests, documentation)
  • Получение и подготовку данных (например, спарсить данные, отформатировать и очистить их) Сторителлинг данных (например, рассказать историю на основе данных со статистикой и визуализациями) Machine learning (например, обучить и развернуть модель с валидацией и метриками) Развёртывание (например, выложить ML-приложение онлайн, чтобы другие могли им пользоваться) Software engineering (например, читаемость, поддерживаемость, unit-тесты, документация)

    Portfolios also demonstrate soft skills. Over the long term, they have as much, if not greater, impact on performance. Their effect is obvious when tackling nebulous problems and working with other people. They include:

    Портфолио также демонстрируют soft skills. В долгосрочной перспективе они влияют на результаты не меньше, а может и больше. Их эффект очевиден при решении расплывчатых задач и работе с другими людьми. Они включают:

  • Solving problems from scratch: Problem framing and figuring out the right metrics
  • Writing and talks: Ability to communicate, a key skill for an effective data scientist
  • Teaching: Understanding of a subject and the ability to explain it simply
  • Contributing to a project: Teamwork and ability to collaborate remotely on code
  • Решение задач с нуля: формулирование проблемы и определение правильных метрик Публикации и доклады: способность к коммуникации, ключевой навык эффективного дата-сайентиста Преподавание: понимание предмета и способность объяснять его просто Вклад в проект: работа в команде и способность удалённо совместно работать над кодом

    “In a high-IQ job pool, soft skills like discipline, drive, and empathy mark those who emerge as outstanding.” — Daniel Goleman

    «В пуле работ с высоким IQ soft skills — такие как дисциплина, драйв и эмпатия — отмечают тех, кто становится выдающимся». — Daniel Goleman

    Beyond skills, portfolios also demonstrate traits. These are seldom mentioned but I think they can be more important when making hiring decisions.

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

    Having personal projects demonstrate curiosity and passion. It shows you’re curious to learn about something on your own. And working on it in your free time demonstrates you’ve more passion than 99% of people. Given the fast pace that tech—especially data and machine learning—evolves, this curiosity is essential to staying effective.

    Наличие личных проектов демонстрирует любопытство и страсть. Это показывает, что вам любопытно изучать что-то самостоятельно. А работа над этим в свободное время демонстрирует, что у вас больше страсти, чем у 99% людей. Учитывая быстрый темп, с которым развиваются tech — особенно data и machine learning — это любопытство необходимо, чтобы оставаться эффективным.

    It also shows willingness and ability to learn. Working on projects exposes challenges not faced in MOOCs. How to clean data. How to explore the search space of data preparation, feature engineering, and machine learning. How to build a basic front-end. How to train and deploy in the cloud. These aren’t taught in MOOCs; the way to learn is through hands-on experience. Personal projects show self-learning beyond regular MOOCs.

    Это также показывает готовность и способность учиться. Работа над проектами выявляет вызовы, с которыми не сталкиваешься на MOOC. Как очистить данные. Как исследовать пространство поиска для подготовки данных, feature engineering и machine learning. Как построить базовый фронтенд. Как обучить и развернуть в облаке. Этому не учат на MOOC; способ научиться — через практический опыт. Личные проекты показывают самостоятельное обучение за пределами обычных MOOC.

    Finally, a portfolio is evidence of persistence. Most data science projects are vague and difficult. If you’re new to programming, you might get frustrated with bugs and syntax errors, or mess up your virtual environment for the 128th time. You’ll also face less obvious issues such as:

    Наконец, портфолио — это свидетельство упорства. Большинство проектов по data science расплывчаты и сложны. Если вы новичок в программировании, вас могут расстраивать баги и синтаксические ошибки, или вы в 128-й раз сломаете своё виртуальное окружение. Вы также столкнётесь с менее очевидными проблемами, такими как:

  • How to work with data that doesn’t fit in memory (e.g., images, click logs)
  • How to make models converge faster, if they converge at all
  • How to run experiments quickly and cheaply in the cloud
  • Как работать с данными, которые не помещаются в память (например, изображения, click-логи) Как заставить модели сходиться быстрее, если они вообще сходятся Как быстро и дёшево запускать эксперименты в облаке

    Having a portfolio of non-beginner projects and being able to share the challenges faced while working on them demonstrates grit, which is a good predictor of success.

    Наличие портфолио с проектами не для новичков и способность рассказать о вызовах, с которыми вы столкнулись в процессе работы над ними, демонстрирует grit (упорство), который является хорошим предиктором успеха.

    When deciding between two similar entry/mid-level candidates, one who’s less technically qualified but is high on curiosity, grit, and learning ability (“traits”), and another who’s only strong on technical skills (“tech-skills”), I’m more likely to hire on traits.

    Когда я выбираю между двумя похожими кандидатами начального/среднего уровня — одним, который менее технически квалифицирован, но силён в любопытстве, grit и способности учиться («черты»), и другим, который только силён в технических навыках («tech-skills»), — я с большей вероятностью найму по чертам характера.

    I’ve observed both tech-skills and traits candidates hired and their progress over time. The tech-skills candidate will start contributing value earlier. But with the right environment, challenges, and mentoring, the traits candidate will learn fast, outperform, and eventually deliver superior results.

    Я наблюдал, как нанимались кандидаты обоих типов — и tech-skills, и traits, — и их прогресс со временем. Кандидат tech-skills начнёт приносить пользу раньше. Но при правильном окружении, вызовах и менторстве кандидат traits будет быстро учиться, превзойдёт других и в итоге даст превосходные результаты.

    “Hire for attitude, train for skill.” – Herb Kelleher

    «Нанимайте за отношение, обучайте навыкам». — Herb Kelleher

    From experience and anecdotes, hiring for traits and attitude leads to a stronger team. Hiring for strengths too. If so, why does tech hiring emphasize so much on technical skills? (e.g., leetcode questions, machine learning knowledge, etc.).

    По опыту и анекдотам, найм по чертам характера и отношению ведёт к более сильной команде. Найм по сильным сторонам тоже. Если так, почему tech-найм так сильно делает акцент на технических навыках? (например, leetcode-задачи, знания machine learning и т.д.).

    I think it’s because most hiring managers and recruiters start with filling a job (instead of hiring a person). Thus, they focus on the job description (JD) instead of a person's strengths. And JDs tend to focus on hard, technical skills; it's easier to measure programming proficiency than problem framing, communication, or grit.

    Я думаю, это потому, что большинство нанимающих менеджеров и рекрутеров начинают с заполнения вакансии (вместо найма человека). Таким образом, они фокусируются на описании работы (JD) вместо сильных сторон человека. А JD склонны фокусироваться на жёстких, технических навыках; легче измерить программистскую компетентность, чем формулирование проблем, коммуникацию или grit.

    Also, categorizing people makes it easier for large organizations to hire, train, and manage. Such categories are often based on skill sets. “Folks in armored division need to be able to drive tanks. People in artillery need to fire mortars and howitzers”. For the commander, this makes planning easier. Also, each individual's traits and strengths may not matter as much at her level.

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

    For example, Max Howell, author of Homebrew. He was rejected at Google for not being able to invert a binary tree. He admits he’s not computer science trained (he wasn’t clear what a binary tree was). Instead, he focuses on user-experience and builds awesome apps. Nonetheless, he didn’t meet the computer science requirements nor fit the job category.

    Например, Max Howell, автор Homebrew. Ему отказали в Google, потому что он не смог инвертировать двоичное дерево. Он признаёт, что не имеет образования в области computer science (он не очень понимал, что такое двоичное дерево). Вместо этого он фокусируется на пользовательском опыте и создаёт потрясающие приложения. Тем не менее, он не соответствовал требованиям computer science и не подходил под категорию работы.

    But fret not. The focus on leetcode and ML knowledge seems to have toned down. Now, most interviews I’ve attended focus on problem-solving, behavioral assessment, and values. Some companies also actively reach out to candidates for their strengths. Hopefully, their success will spur others to do the same.

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

    A great portfolio vs. the traits and skills to build one

    Отличное портфолио vs. черты и навыки для его создания

    Job offers are sometimes attributed to having a great portfolio. That’s no surprise as portfolio artifacts are directly observable relative to skills and traits. (And occasionally, it’s bootcamps touting themselves.) However, I think it’s hard to distinguish if someone got a job because of an awesome portfolio, or because they had the skills and traits to build one.

    Получение оффера иногда приписывают наличию отличного портфолио. Это неудивительно, поскольку артефакты портфолио непосредственно наблюдаемы относительно навыков и черт характера. (И иногда это буткемпы, рекламирующие сами себя.) Однако, я думаю, трудно отличить, получил ли кто-то работу из-за потрясающего портфолио или потому, что у него были навыки и черты для его создания.

    IMHO, the traits and skills are a prerequisite to building a great portfolio. And they reinforce each other. As we work on a project, we gain hands-on experience and improve our technical and soft skills. It also hones our persistence and learning ability. The growth is then reflected in the next project—it’s a virtuous cycle.

    По моему скромному мнению, черты и навыки являются предпосылкой для создания отличного портфолио. И они усиливают друг друга. По мере работы над проектом мы получаем практический опыт и улучшаем наши технические и soft skills. Это также оттачивает наше упорство и способность учиться. Затем рост отражается в следующем проекте — это добродетельный цикл.

    What’s more likely to help land a job? A great portfolio? Or the skills and traits to build one? The portfolio will help a resume stand out among the sea of resumes and get a first-round interview. But it’s the traits and skills that will secure the job offer and lead to high performance in the role.

    Что с большей вероятностью поможет получить работу? Отличное портфолио? Или навыки и черты для его создания? Портфолио поможет резюме выделиться в море резюме и попасть на первое собеседование. Но именно черты и навыки обеспечат оффер и приведут к высокой производительности в роли.

    Don’t focus on the portfolio; focus on the process

    Не фокусируйтесь на портфолио; фокусируйтесь на процессе

    A portfolio is just an artifact of our skills, traits, and working process. It’s the destination; it’ll take care of itself if we focus on the journey.

    Портфолио — это просто артефакт наших навыков, черт характера и рабочего процесса. Это пункт назначения; он сам о себе позаботится, если мы сфокусируемся на пути.

    While trying to build our portfolios, we should find projects that are intrinsically rewarding. They should be fun, personally meaningful, and stretch our abilities—this makes it more sustainable. Over time, brick by brick, a portfolio emerges. It’ll take a while, so let’s get to work.

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

    Most articles on data science portfolios focus on how to build one & get a job.

    Here, I'll share a different perspective:
    • Why work on personal projects
    • What they demonstrate

    We'll also have awesome creators share the motivation behind their work.https://t.co/6MacdxS5DR

    — Eugene Yan (@eugeneyan) October 21, 2020

    Большинство статей о портфолио по data science фокусируются на том, как его построить и получить работу.Здесь я поделюсь другой перспективой:• Зачем работать над личными проектами• Что они демонстрируютУ нас также будут отличные авторы, которые поделятся мотивацией, стоящей за их работой.https://t.co/6MacdxS5DR— Eugene Yan (@eugeneyan) 21 октября 2020


    Thanks to Vincent Warmerdam, Liling Tan, Jay Alammar, Amit Chaudhary, and Elle O’Brien for generously sharing their work and process.

    Спасибо Vincent Warmerdam, Liling Tan, Jay Alammar, Amit Chaudhary и Elle O'Brien за щедрый обмен своей работой и процессом.

    Thanks to Yang Xinyi, David Golden, Kyla Scanion, Robert Cobb, Ross Richey, and Compound for reading drafts of this.

    Спасибо Yang Xinyi, David Golden, Kyla Scanion, Robert Cobb, Ross Richey и Compound за чтение черновиков этой статьи.

    If you found this useful, please cite this write-up as:

    Если вы нашли это полезным, пожалуйста, цитируйте эту работу как:

    Yan, Ziyou. (Oct 2020). Why Have a Data Science Portfolio and What It Shows. eugeneyan.com. https://eugeneyan.com/writing/data-science-portfolio-how-why-what/.

    Yan, Ziyou. (Oct 2020). Why Have a Data Science Portfolio and What It Shows. eugeneyan.com. https://eugeneyan.com/writing/data-science-portfolio-how-why-what/.

    or

    или

    @article{yan2020portfolio, title = {Why Have a Data Science Portfolio and What It Shows}, author = {Yan, Ziyou}, journal = {eugeneyan.com}, year = {2020}, month = {Oct}, url = {https://eugeneyan.com/writing/data-science-portfolio-how-why-what/} }

    @article{yan2020portfolio, title = {Why Have a Data Science Portfolio and What It Shows}, author = {Yan, Ziyou}, journal = {eugeneyan.com}, year = {2020}, month = {Oct}, url = {https://eugeneyan.com/writing/data-science-portfolio-how-why-what/} }



    Join 11,800+ readers getting updates on machine learning, RecSys, LLMs, and engineering.

    Присоединяйтесь к 11 800+ читателей, получающих обновления по machine learning, RecSys, LLM и инженерии.