Marcin Kurczewski

Marcin Kurczewski

Programista Python/JS, freelancer

Jako doświadczony programista full-stack oferuję skuteczne utrzymanie, skalowanie, bezpieczeństwo i zarządzanie systemów. W połączeniu z umiejętnościami komunikacyjnymi oraz zdolnością do efektywnej pracy zespołowej, gwarantuje to płynną realizację wszelkich powierzonych mi projektów.

Historia zatrudnienia

    • Różne projekty freelancerskie (Wrzesień 2023—obecnie)
  • Nodal (Medycyna, U.S.A.)
    Platforma do weryfikowania oraz łączenia surogatek z przyszłymi rodzicami.
    • Senior lead Python developer (Luty 2022—Sierpień 2023)
    • Sworzyłem od podstaw flagowy produkt firmy bazując na designach klienta.
    • Zintegrowałem produkt z wieloma zewnętrznymi usługami do sprawdzania wiarygodności danych osobowych.
    • Zapewniłem zgodność produktu z wymaganym standardem HIPAA.
    • Rozwinąłem system rozliczeń i fakturowania klientów oparty na Stripe.
    • Mój prototyp był na tyle dobry, że pomógł nam uzyskać finansowanie na zwiększenie zespołu z jednej osoby do 4 pełnoetatowych programistów.
    • Po intensywnym okresie rozwoju MVP, który przyciągnął uwagę wielu klientów indywidualnych, mój zespół i ja przekierowaliśmy nasze wysiłki na pozyskanie klientów korporacyjnych. Starania te zaowocowały opracowaniem atrakcyjnych interfejsów API i pomogły nam podpisać umowę z ważnym szpitalem.
  • Motoinsight (E-commerce/Samochodowa, Kanada)
    Platformy sprzedaży online dla luksusowych marek i dealerów samochodowych.
    • Senior full-stack engineer (Wrzesień 2020—Kwiecień 2023)
    • Team lead (Kwiecień 2020—Wrzesień 2020)
      Tymczasowe zastępstwo mojej przełożonej, która udała się na urlop macierzyński.
    • Full-stack engineer (Maj 2019—Marzec 2020)
    • Z wykorzystaniem systemu płatności Stripe, stworzyłem platformę do zamówień przedsprzedażowych nowego modelu samochodu dla jednej z najbardziej rozpoznawalnych marek. Po uruchomieniu, wszystkie dostępne egzemplarze zostały wyprzedane w ciągu zaledwie 10 minut.
    • Konserwowałem flotę istniejących projektów i wprowadzałem nowe funkcje.
    • Zoptymalizowałem znacząco główne obszary kilku kluczowych produktów.
    • Dzierżyłem samodzielną odpowiedzialność za utrzymanie kodu platformy internetowej dla jednej z klienckich marek.
    • Oczyściłem backlog w jednym z większych projektów ze wszystkich błędów.
    • Osiągnąłem najwyższą w firmie aktywność w recenzjach kodu, zarówno pod względem liczby komentarzy, jak i szybkości odpowiedzi.
    • Często pełniłem rolę spoiwa pomiędzy zespołami programistycznym, menedżerskim oraz testerskim.
    • Miałem duży wpływ na architekturę kodu. Aktywnie uczestniczyłem w opracowaniu strategii przekształcenia całej firmy w kierunku architektury mikroserwisowej.
    • Byłem członkiem zespołu dyżurnego odpowiedzialnego za rozwiązywanie bieżących problemów produkcyjnych.
    • Przeprowadzałem rozmowy kwalifikacyjne z nowymi kandydatami.
  • Decernis (Żywność, U.S.A.)
    Zarządzanie łańcuchami dostaw oraz zgodności z regulacjami dla amerykańskich i europejskich rynków żywnościowych.
    • Senior technical team lead (Listopad 2019—Styczeń 2021)
    • Senior full-stack engineer (Kwiecień 2019—Październik 2019)
    • Regular full-stack engineer (Kwiecień 2018—Marzec 2019)
    • Stopniowo doskonaliłem swoje umiejętności w kilku kluczowych produktach, ostatecznie w naturalny sposób obejmując rolę lidera zespołu.
    • Jako lider zespołu przeprowadziłem nieszablonową migrację z przestarzałego rozwiązania opartego o LDAP na relacyjną bazę danych. Projekt ten dotykał wszystkich produktów klienta. Rozwiązanie to pozwoliło nam zredukować wcześniejsze częste problemy z synchronizowaniem danych, co przełożyło się na lepsze relacje z klientami, oraz pozwoliło na dodanie funkcji single sign-on.
    • Zmigrowałem kod z Pythona 2 na Pythona 3, co pozytywnie wpłynęło na wydajność oraz łatwość utrzymania kodu produktów.
    • Wprowadziłem konteneryzację Docker, dzięki której proces wdrożenia nowych pracowników został znacznie skrócony, a praca z repozytoriami przyjemniejsza, co podniosło morale zespołu.
    • Kiedy pełniłem funkcję lidera miałem przyjemność obserwować, jak nasz zespół urósł z dwóch osób do siedmiu pełnoetatowych programistów.
  • Przebranżowienie na Pythona
    Lata doświadczenia z Pythonem w niekomercyjnych projektach pozwoliły mi docenić, jak bogaty jest jego ekosystem pakietów i jak szybko można w nim prototypować wszelakie rozwiązania. Te spostrzeżenia z czasem zaskutkowały naturalną decyzją do związania mojej dalszej ścieżki zawodowej z tą technologią.
  • Capgemini Polska sp. z o.o. (Ubezpieczenia, Polska)
    • Programista C#/.NET (Maj 2017—Luty 2018)
  • Forcom sp. z o.o. (Handel, Polska)
    • Programista C#/.NET (Styczeń 2013—Kwiecień 2017)
  • Gammanet sp. z o.o. (Edukacja, Polska)
    • Programista PHP (pół etatu) (Marzec 2012—Luty 2013)

Projekty open source

  • Tomb Raider I: Community Edition (Styczeń 2021—obecnie)
    Otwarta wersja słynnej gry Tomb Raider I (1996), która odświeża rozgrywkę i usuwa liczne błędy zarazem zachowując wierność oryginałowi. Ten projekt, głównie wykonany przez mnie, pokazuje niezwykłą precyzję i dokładność dzięki całościowej inżynierii wstecznej oryginalnego kodu gry i zastąpienie komercyjnych bibliotek ich otwartymi wariantami. Z biegiem czasu z jednoosobowej inicjatywy przekształcił się w projekt angażujący społeczność graczy i programistów z całego świata.
  • TRCustoms (Październik 2022—Marzec 2023)
    Portal społecznościowy do publikowania niestandardowych poziomów stworzonych przez miłośników klasycznych gier z serii Tomb Raider. Posiada funkcję tagowania, przemyślanego systemu recenzji, różnych motywów kolorystycznych i wiele innych. Pliki są przechowywane w chmurze. Poziomów aktualnie jest już ponad 3000!
  • bubblesub (Lipiec 2017—Grudzień 2021)
    Edytor napisów oferujący podgląd wideo na żywo, spektrogram dźwięku, synchronizację klatek, kontrolę tempa odtwarzania z korekcją tonacji, zaawansowany system wtyczek i wiele więcej.
  • arc_unpacker (Listopad 2014—Listopad 2017)
    Duże narzędzie do do wyodrębniania mediów z japońskich gier typu visual novel; obsługuje ponad 450 tytułów. Wraz ze wzrostem popularności projektu, zwiększyło się także zapotrzebowanie na obsługę nowych gier i presja ze strony społeczności. Niestety, wysoki próg umiejętności potrzebnych do analizy i inżynierii wstecznej coraz to nowszych algorytmów znacznie utrudnił pozyskanie jakiegokolwiek wsparcia. W rezultacie, moje zainteresowanie projektem osłabło, co ostatecznie doprowadziło do mojej decyzji o jego zamknięciu.
  • MALgraph (Lipiec 2013—Maj 2015)

    Usługa oparta na MyAnimeList, oferująca użytkownikom dostęp do statystyk i analizy gustu na podstawie ich ocen seriali. Stworzony we współpracy z tym dżentelmenem. Mimo zdobycia znacznej popularności, po zmianie właściciela MyAnimeList, który zdecydował o zakończeniu dostępu do swoich interfejsów API, projekt został zawieszony.

Lokalizacja

Lokalizacja
Poznań, Polska –   

Moje wartości

  • Łatwość utrzymania, praktyczność
  • Zgranie zespołu, dobra atmosfera
  • Zaangażowanie, możliwość innowacji
  • Działalność z własnego sprzetu
  • Praca zdalna, brak podróży
  • Komunikacja tekstowa, mało spotkań

Technologie

  • Python 2
  • Python 3
  • Python
  • Django Rest Framework
  • Django
  • Pyramid
  • Flask
  • FastAPI
  • Celery
  • Pillow
  • Swagger
  • C++
  • C
  • Perl
  • PHP
  • Ruby
  • Apache
  • nginx
  • Docker
  • Redis
  • Postgres
  • SQL
  • SQLAlchemy
  • SQLite
  • Oracle
  • Elasticsearch
  • GraphQL Apollo
  • GraphQL
  • Cassandra
  • MongoDB
  • Google Cloud Platform
  • Amazon AWS
  • Amazon DAX
  • Amazon IAM
  • DynamoDB
  • Amazon S3
  • Serverless
  • Javascript
  • Typescript
  • Node.js
  • Bootstrap
  • CSS
  • HTML
  • JQuery
  • Angular
  • VueJS
  • React
  • git
  • svn
  • Mercurial
  • CI/CD
  • TeamCity
  • Travis
  • GitHub
  • GitHub Actions
  • GitLab
  • Squash
  • Jenkins
  • Aptible
  • DigitalOcean
  • Sentry
  • SSH
  • Atom/RSS
  • XML
  • YAML
  • JSON
  • HTTP
  • HTTP/2
  • numpy
  • FFTW
  • urwid
  • PyQT4
  • PyQT5
  • PySide
  • OAuth
  • Apple News
  • Google News
  • Google News Showcase
  • Google APIs
  • Calendly
  • Stripe
  • HelloSign
  • What3Words
  • CheckR
  • Crispy Forms
  • Okta
  • OpenLDAP
  • mpv
  • Reverse engineering
  • WinAPI
  • WinMM
  • ATI3DCIF
  • DirectX
  • OpenGL
  • SDL
  • ffmpeg
  • FFMS2
  • curses

Wykształcenie

  • Uniwersytet Adama Mickiewicza
    • Magister (Październik 2012—Czerwiec 2014)
      Praca magisterska: Ataki na kryptograficzne funkcje haszujące
    • Licencjat (Październik 2009—Czerwiec 2012)