Portfolio Killer Data Science, które zapewni Ci zatrudnienie

Nov 24 2022
Dowiedz się, jak zbudować najlepsze portfolio analityki danych, które zapewni Ci wymarzoną pracę analityka danych!
Jeśli ubiegasz się o pracę w branży data science bez portfolio projektów, w których można zaprezentować swoje umiejętności, sprzedajesz się słabo. W tym artykule opowiem o tym, dlaczego portfolio jest koniecznością dla każdego analityka danych lub naukowca danych i jak zabrać się do budowania oszałamiającego portfolio analityki danych.

Jeśli ubiegasz się o pracę w branży data science bez portfolio projektów, w których można zaprezentować swoje umiejętności, sprzedajesz się słabo. W tym artykule opowiem o tym, dlaczego portfolio jest koniecznością dla każdego analityka danych lub naukowca danych i jak zabrać się do budowania oszałamiającego portfolio analityki danych.

Czy potrzebuję portfolio projektów data science?

Wyobraź sobie, że zatrudniasz zespół na swoje wesele, nie wiedząc, jaką muzykę grają! To strategia typu „czuję się szczęśliwy”, która może prowadzić do trudnego startu.

Teraz obrazowanie ma trzy pasma do wyboru. Jeden z nich zawiera portfolio SoundCloud, w którym mają podglądy swoich piosenek uporządkowane według gatunków jako listy odtwarzania. Czy nie doprowadziłoby to od razu do posłuchania ich muzyki, podzielenia się nią ze swoim partnerem i wspólnego podjęcia decyzji o zatrudnieniu go, a także zasugerowaniu dostosowań?

To samo dzieje się z rekruterami i menedżerami ds. Rekrutacji, którzy przeglądają Twoje CV. Jest bardziej prawdopodobne, że klikną Twoje portfolio, zapoznają się z Twoimi projektami, przeczytają publiczne komentarze, zobaczą Twoją historię aktywności itp.

Dołączając portfolio, drastycznie zwiększasz szanse swojego klienta (HM lub Rekrutera) na dowiedzenie się więcej o Tobie , Twoich umiejętnościach związanych z danymi, umiejętności zastosowania tych umiejętności i, miejmy nadzieję, prawdziwej pasji do analizy danych. Więc TAK , absolutnie potrzebujesz portfolio.

Jak zbudować niesamowite portfolio nauki o danych

Przyjrzyjmy się, w jaki sposób naukowcy zajmujący się danymi, analitycy danych i inni entuzjaści danych mogą stworzyć niesamowite portfolio, które z pewnością wzbudzi emocje i zainteresowanie potencjalnych pracodawców. Poza zatrudnieniem, portfolio to świetny sposób na utrzymanie motywacji do nauki i zaprezentowania się — zbuduj własną markę!

Najlepsze portfolio do nauki o danych obejmuje 4 komponenty , które muszą być wyjątkowo solidne:

  • Gdzie przechowywać portfolio: niezwykle ważne jest, aby hostować swoje portfolio na platformie, która została stworzona w celu publicznego prezentowania Twojej pracy oraz podkreślania głębi i jakości kodu. GitHub jest zdecydowanie najpopularniejszym wyborem z obu tych perspektyw. Normalną praktyką menedżera ds. Rekrutacji jest również proszenie o profil GitHub kandydata do pracy lub proaktywne eksplorowanie go w celu zrozumienia poziomu umiejętności kandydata.
  • Uporządkuj projekty w zrozumiałe kolekcje: Starannie zorganizowane portfolio pokazuje światu, że masz wszystko, czego potrzeba, aby dostarczać złożone i połączone ze sobą informacje w łatwym do zrozumienia formacie.
  • Wybierz wywierające wpływ projekty , które przekazują wiadomość, którą chciałbyś przekazać menedżerowi ds. rekrutacji lub rekruterowi — są to: „jesteś dobry w rozpoczynaniu od niejednoznaczności „jesteś dobry w eksploracji w zaplanowany sposób” „jesteś dobry w podstawowe techniki ML ” „jesteś dobry w szacowaniu wpływu ” → oraz „możesz to wszystko zrobić z wyjątkową jakością kodu

Korzystaj z GitHub dla swojego portfolio Data Science

Istnieje wiele powodów, dla których GitHub jest preferowaną platformą do hostowania kodu, projektów i danych. GitHub jest darmowy i ma płatne opcje z zaawansowanymi funkcjami, takimi jak CI/CD. Do użytku osobistego, takiego jak hosting portfolio data science, projekty uczenia maszynowego i podobne, bezpłatna wersja to świetny wybór.

Oprócz tego, że jest darmowy, istnieją trzy powody (spośród wielu), dlaczego GitHub jest idealny do naszego przypadku użycia:

  • Readme: Pliki readme są absolutnymi klejnotami, jeśli są efektywnie używane. Pomyśl o plikach readme jako o wprowadzeniu, wyjaśnieniu i wnioskach — podobnie jak w raporcie laboratoryjnym. W tym miejscu opowiadasz słuchaczom o projekcie, problemie, podejściu, które przyjmujesz i dlaczego, przyjętych założeniach, zebranych spostrzeżeniach, zastosowaniu tych spostrzeżeń w prawdziwym świecie i przyszłych ulepszeniach chciałbyś zrobić. Zbyt wiele szczegółów sprawi, że będziesz wyglądać na niedojrzałego. Zbyt mało szczegółów sprawi, że będziesz wyglądać na niewykwalifikowanego. Podaj więc odpowiednią ilość szczegółów, które są niezbędne dla czytelnika, aby uzyskać przegląd. Jest to ważne, ponieważ właśnie to robią analitycy danych, kiedy nie modelują — wyjaśniają problemy biznesowe i opisują ich rozwiązania .
  • Wykrywalność: Portfolio ma być publiczne, tzn. każdy w sieci może znaleźć Twoje portfolio i zobaczyć projekty, nad którymi pracujesz. GitHub ma wyjątkową widoczność w wyszukiwarkach — co oznacza, że ​​każdy, kto szuka podobnych projektów, będzie mógł trafić na Twój!
  • Profil: Twój profil GitHub jest tym, co najlepiej udostępniłbyś innym. W twoim profilu będą repozytoria, a także wykres twojego wkładu. Wykres wkładu to szybki sposób dla menedżerów ds. zatrudniania i rekruterów na ocenę, czy Twoje umiejętności są aktywne, czy pasywne.
  • Mój profil GitHub jako przykład mówi ci, że dużo koduję i dużo robię. Trochę przeglądam kod i czasami tworzę pull requesty. Nie tworzę problemów. Jako menedżer oznacza to, że jestem BARDZO praktycznym menedżerem, który nadal codziennie koduje (na GitHub lub poza nim). To jest dokładnie to, co chcę, aby mój profil przekazywał na tym etapie mojej kariery.
  • Jupyter Notebook Preview: większość analityków danych używa notatników Jupyter do pracy nad projektami danych i udostępniania ich publicznie. GitHub renderuje Jupyter Notebooks natywnie, umożliwiając czytelnikom zobaczenie Twojego kodu, tekstu i wykresów wyświetlanych dokładnie tak, jak je zapisujesz. Zapewnia to wysoką czytelność.
  • Use a modern notebook platform
    Rather than using Jupyter Notebooks locally, I would recommend using a modern notebook platform like Noteable. The interactive data explorer and visualizations will help speed up your projects and allow you to focus on your the strength of your models, insights, discussions and conclusions.
    You can then export the project as a Jupyter Notebook and upload to GitHub. Needless to say, you should also make your Noteable project public.
    

Gdy masz konto GitHub, następnym pytaniem jest, które projekty chcesz zaprezentować. W zależności od wybranego obszaru i ewentualnie specjalizacji projekty te mogą się znacznie różnić.

Jakie tematy omówić w portfolio dla naukowców zajmujących się danymi

Analitycy danych muszą wykazać się biegłością w następujących trzech obszarach:

  1. Identyfikacja problemu biznesowego: Twoja umiejętność pobrania publicznego zestawu danych, przeczytania o nim, a następnie sformułowania kilku hipotez lub kilku wymyślonych problemów biznesowych pokaże, że potrafisz zastosować swoją wiedzę w rzeczywistych zastosowaniach. Na przykład w tym publicznym zbiorze danych o handlu elektronicznym możesz wymyślić problem biznesowy „Znajdź najlepiej sprzedające się produkty i zdecyduj, czy reklamować je w mediach społecznościowych, czy nie”.
  2. Ekstrakcja danych
    Wyszukiwanie, czyszczenie, agregowanie niechlujnych zestawów danych przy użyciu SQL, Pand (i innych bibliotek, które lubisz). Nie mogę wystarczająco podkreślić, jak ważne jest zaprezentowanie umiejętności SQL . Jako menedżer ds. rekrutacji jest wysoce nieprawdopodobne, że zatrudnię naukowca danych, który jest świetny w Pythonie, ale nie zna SQL.
    - Pisz SQL bezpośrednio w plikach Excel i CSV : Pisanie SQL w notatnikach Jupyter jest uciążliwe. Zwykle musisz użyć biblioteki, a następnie napisać SQL w cudzysłowach. Polecam korzystanie z nowoczesnego notatnika, takiego jak noteable.io , który umożliwia uruchamianie zapytań bezpośrednio w pliku Excel lub CSV bez potrzeby korzystania z bazy danych. W końcu, ponieważ nie ubiegasz się o stanowisko Architekta Bazy Danych, walka o stworzenie lokalnej bazy danych ma niewielką lub żadną wartość.
    - Połącz się z bazą danych: Oczywiście możesz łączyć się z bazami danych w Noteable, ale uzyskanie dostępu do publicznej bazy danych może nie być takie łatwe (lub bezpłatne). Jeśli masz dostęp (Google: „BigQuery public datasets”) do bazy danych, będziesz mógł pisać natywny SQL w Noteable. Nie potrzeba paczek, ofert i innych bzdur.
    - Utwórz lokalną bazę danych: Alternatywnie możesz utworzyć lokalną bazę danych na swoim komputerze, ale to wszystko wymaga czasu i zmusza do wymyślenia danych, które musisz wprowadzić do tabel. W końcu Twoim celem jest zaprezentowanie swoich umiejętności SQL, a nie umiejętności administrowania bazą danych SQL.Trasę tę uważam więc za dość dużą stratę czasu .
  3. Eksploracja danych, wizualizacja
    Dla każdego specjalisty ds. danych niezbędna jest umiejętność pisania dobrej jakości kodu w celu szybkiego segmentowania, filtrowania, eksploracji i wizualizacji danych. Większość będzie używać Pythona lub R. Tak więc, podczas gdy nowoczesne platformy notebooków, takie jak Noteable, umożliwiają interaktywne tworzenie wykresów, nadal polecam dorzucić kilka naprawdę fajnych wizualizacji (zobacz r/dataisbeautiful, aby uzyskać inspirację), które pokażą Twoje umiejętności korzystania z Pand, lambda funkcje (opcjonalne, ale świetne) i matplotlib/seaborn itp.
  4. Uczenie maszynowe
    Jednak większość analityków danych, inżynierów danych, inżynierów Business Intelligence i inżynierów uczenia maszynowego uzna za korzystne włączenie do swoich projektów niektórych z następujących metod:
    ● Drzewa decyzyjne
    ● Grupowanie K-średnich
    ● K-najbliższych sąsiadów ( KNN)
    ● Regresja liniowa
    ● Regresja logistyczna
    ● Naiwny Bayes
    ● Analiza głównych składowych (PCA)
    ● Lasy losowe
    ● Maszyna wektorów nośnych
    Ta lista zawiera niektóre z najpopularniejszych i najczęściej stosowanych metod w świecie zawodowym, dlatego jest doskonałym źródłem inspiracji dla Twoich przyszłych projektów. Dysponując dogłębną znajomością choćby kilku z tych metod, znacznie zwiększasz swoje szanse na zaimponowanie menedżerowi ds. rekrutacji podczas następnej rozmowy kwalifikacyjnej. Zalecam rozważenie rodzaju pracy, którą chciałbyś otrzymać, a następnie pracę z niektórymi z powyższych algorytmów, które są powszechnie stosowane w wybranej dziedzinie.

Jeśli chodzi o wybór następnego projektu, najlepszą radą, jaką kiedykolwiek spotkałem, jest skupienie się na prawdziwym problemie życiowym i próba jego rozwiązania. Oczywiście większość problemów w świecie rzeczywistym jest wypełniona nieznanymi zmiennymi i dużymi ilościami danych.

Spróbuj więc wybrać problem, który jest nieco ograniczony, albo pod względem zakresu, albo złożoności, a może nawet obu! Pamiętaj też, że powinieneś być pasjonatem, przynajmniej w pewnym stopniu, w wybranym przez siebie projekcie .

Jeśli w ogóle nie jesteś zaangażowany w proces lub wyniki, jakość twojej pracy prawdopodobnie będzie poniżej normy i bardziej prawdopodobne jest, że wypalisz się i poddasz przed jej ukończeniem. Dlatego znajdź coś, co Cię pasjonuje, nawet jeśli już to robiłeś . Nadal nauczysz się cennych lekcji i będziesz mieć pełny projekt do wykorzystania w swoim portfolio!

Inspiracja do kolejnych projektów

To są moje ulubione źródła, z których mogę znaleźć pomysły na projekty lub nauczyć się nowego tematu. Oba mają bogactwo zasobów - więc upewnij się, że nie zgubisz się w szerokości treści. Zamiast tego wybierz temat i skup się na głębokości, do której możesz zejść.

  1. https://goodboychan.github.io/categories/: To jest moje ulubione repo/blog do obserwowania. Ma oszałamiającą liczbę samouczków i przykładów, które są starannie uporządkowane według tematów.
  2. Kaggle : pozostaje kopalnią zestawów danych, a także publicznych notatników, które mogą pomóc w nauce i poprawie jakości kodu.

Przykładowy projekt

Na przykład jedną z popularnych metod jest grupowanie k-średnich, które jest niezwykle prostym algorytmem uczenia maszynowego, w którym wystarczy znać kilka różnych zmiennych i punktów danych, aby uzyskać interesujące wyniki.

Wyobraźmy sobie, że pracujesz dla dużej firmy zajmującej się handlem elektronicznym online i że ta firma zebrała pewne kluczowe informacje od swoich klientów. Dane te obejmują wiek klientów, kwotę, jaką wydają, oraz rodzaje zakupionych produktów.

Grupowanie K-średnich pozwala następnie podzielić każdy zakup i użytkownika na klastry, aby uzyskać przegląd różnych osobowości kupujących. Wszystko to za pomocą zaledwie 3 różnych zmiennych.

Jak podejść do projektów

Jeśli Twoim głównym celem tworzenia internetowego portfolio projektów związanych z nauką o danych jest przyciągnięcie potencjalnych pracodawców, do każdego projektu powinieneś podchodzić z zestawem ścisłych zasad, które ustalasz . To uchroni Cię przed pełzaniem zakresu i drenażem czasu.

Jeśli jesteś nowy w świecie nauki o danych, po prostu zdobycie większego doświadczenia będzie największą nagrodą, jaką możesz otrzymać. W końcu konkurujesz z tysiącami innych programistów, inżynierów i naukowców zajmujących się danymi, więc musisz dać z siebie wszystko. A praktyka czyni mistrza.

Kontynuuj pracę nad różnymi projektami, kiedy znajdziesz czas, a prędzej czy później zdasz sobie sprawę, że jesteś teraz o wiele poziomów wyżej niż kilka miesięcy temu.

Należy również pamiętać, że bardzo niewielu rekruterów przejrzy cały Twój kod na GitHub, a jeszcze mniej pobierze i skompiluje Twoje skrypty. Ważne jest, abyś wykazał się znajomością powszechnych algorytmów, umiejętnością rozwiązywania problemów i podejmowania niejednoznacznych wyzwań oraz umiejętnościami programistycznymi potrzebnymi do ich realizacji .

Oczywiście nie powinieneś też po prostu przesyłać zepsutych projektów. Ważne jest, abyś sam napisał kod, nawet jeśli postępujesz zgodnie z samouczkiem lub przewodnikiem online. W ten sposób staniesz się bardziej intymny z każdą linijką kodu, a twoje zrozumienie będzie znacznie lepsze. Z drugiej strony, jeśli po prostu skopiujesz/wkleisz inny projekt i zmienisz nazwy kilku zmiennych, mogę ci zagwarantować, że zbombardujesz wywiad.

Generowanie zainteresowania dla Twojego profilu

Jeśli ciężko pracowałeś nad projektem naukowym o danych, z którego jesteś dumny, możesz rozważyć generowanie ekspozycji dla siebie i swojego projektu. Nie powinieneś oczekiwać, że mnóstwo ludzi dowie się o twoim projekcie, po prostu przesyłając kod źródłowy do GitHub.

Ale to nie znaczy, że Twój projekt musi pozostać niezauważony. Zalecam napisanie dogłębnego posta na blogu na Medium.com lub na własnej stronie internetowej, który szczegółowo opisuje specyfikę twojego projektu, i napisanie go w taki sposób, aby był postrzegany jako ekspert w temacie.

I oczywiście pamiętaj, aby dołączyć linki do swojego profilu GitHub i projektów również w tym poście na blogu.

Końcowe przemyślenia

Masz to. Omówiłem niektóre z najważniejszych rzeczy, o których należy pamiętać, budując niesamowite portfolio jako naukowiec zajmujący się danymi. Trzymając się tematów, które Cię interesują i które wykorzystują niektóre z wiodących metod i algorytmów w branży, możesz odnieść sukces na przyszłych rozmowach kwalifikacyjnych. To naprawdę takie proste!

— Napisane z ❤️ pod północą ️

PS: Jestem tylko skromnym blogerem. Popełniam błędy i mam martwe punkty. Jeśli zauważysz rzeczy, które mogę poprawić lub jeśli chcesz po prostu porozmawiać, napisz do mnie na DM :)