Moje zdjęcie

Krzysztof Piotr Surdacki
architekt oprogramowania, konsultant, programista

Przygodę z programowaniem rozpocząłem już w szkole średniej od poznania języka Pascal i środowiska Delphi. Od początku programowanie było dla mnie przede wszystkim pasją. Później stało się także sposobem na zarabianie pieniędzy. Na studiach i w pracy poznawałem kolejne języki, algorytmy i technologie. Moja działalność zawodowa była zazwyczaj związana z językami: C, C++, Python. Większość projektów stanowiło oprogramowanie serwerowe. Pomimo wielu lat pracy w zawodzie, dalej czerpię dużo satysfakcji z poznawania nowych technologii.

Poniżej przedstawiłem zarys mojego doświadczenia i umiejętności.

Doświadczenie

Samsung R&D Institute Poland
październik 2015 - grudzień 2016

  • Starszy programista w zespole serwerów Samsung Pay
    • Opracowywałem propozycje zmian protokołów komunikacji z firmami współpracującymi.
    • Wspólnie z inżynierami firm zewnętrznych rozwiązywałem bieżące problemy.
    • Nadzorowałem implementację, testy i wdrażanie kodu serwerowego.
    • Przeprowadzałem testy integracyjne całego systemu.
  • Starszy programista w zespole przeglądarek mobilnych
    • Samodzielnie zaprojektowałem i zaimplementowałem semantyczny komparator plików IDL.
    • Opracowywałem propozycje zmian w przeglądarkach.
    • Diagnozowałem i usuwałem błędy z kodu.

Instytut Modelowania i Analiz Polityk Publicznych
lipiec 2014 - wrzesień 2015

  • Menadżer projektu stworzenia serwisu Medivella
    • Specyfikowałem potrzeby klienta i analizowałem wymagania pod kątem wykonalności. Szacowałem koszty realizacji.
    • Samodzielnie zaprojektowałem architekturę systemu i wybrałem technologie, w których serwis został zrealizowany.
    • Programowałem główne komponenty systemu i nadzorowałem realizację od strony technicznej.
    • Wdrożyłem system na serwerach produkcyjnych.
    • Prowadziłem szkolenia dla klienta.
  • Starszy programista w zespole tworzącym język programowania Morfa
    • Projektowałem i implementowałem bibliotekę standardową języka.

Instytut Badań Strukturalnych
maj 2012 - czerwiec 2014

  • Starszy programista w zespole tworzącym język programowania Morfa
    • Samodzielnie zaprojektowałem i wdrożyłem rozproszony, w pełni zautomatyzowany system budowania aplikacji i testów regresji.
    • Brałem udział w projektowaniu i implementacji generatora kodu, semantyki i składni.
    • Samodzielnie zaprojektowałem i stworzyłem translator nagłówków C na interfejsy Morfy.

Politechnika Warszawska
luty 2011 - marzec 2011

  • Współtworzyłem środowisko do testowania rozproszonego zarządzania przypływami danych w różnych układach sieci o topologiach siatki.

Transition Technologies
lipiec 2010 - kwiecień 2012

  • Programista w zespole systemu EDS
    • Napisałem od nowa serwer udostępniający dane aplikacjom webowym i mobilnym.
    • Samodzielnie zaprojektowałem architekturę i zaimplementowałem EDS Portal.
    • Pracowałem w zespole całodobowego wsparcia technicznego klientów.

o2.pl
listopad 2005 - maj 2010

  • Główny twórca pierwszej wersji serwisu Wrzuta.
  • Programista w zespole systemu poczty elektronicznej
    • Samodzielnie zaprojektowałem i zaimplementowałem w pełni konfigurowalny filtr HTML, CSS i URL.
    • Stworzyłem framework dla serwerów opartych na procesach.
    • Zaimplementowałem serwer listujący i rozpakowujący pliki z załączników będących archiwami .zip, .tgz, .rar, winmail.dat.
    • Wykonałem serwer generujący strony HTML będące podglądem załączników .pdf, .doc, .xls, .odt, .rtf.

UHC
lipiec 2005

  • Praktykant
    • Rozszerzałem funkcjonalność generatora raportów.

Witryny

  • KartkaKalendarza
    • Kalendarz z zaznaczonymi świętami ruchomymi od 1901 do 2100 roku.
  • NoweHasło
    • Menedżer haseł, który nie przechowuje haseł tylko za każdym razem je generuje.

Umiejętności

  • Posiadam praktyczne, komercyjne umiejętności posługiwania się następującymi językami:
    • C, C++, D
    • Python, JavaScript, bash
    • SQL, wyrażenia regularne
    • HTML, CSS, Jinja2
  • Używałem w projektach i znam następujące, większe biblioteki programistyczne:
    • STL, Boost, LLVM, ICU, libclang, ANTLR, Qt, SQLite, Thrift
    • Python Standard Library, Django, Mezzanine CMS, CherryPy, Pillow
    • Bootstrap, jQuery, jQuery UI
  • Dogłębnie poznałem i używałem standardów:
  • Znam techniczne szczegóły następujących formatów plików:
    • .odt, .rtf, .xls
    • .pdf, .png
    • .rar, .zip, .tar, .gz
  • Sprawnie posługuję się oprogramowaniem:
    • gcc, Visual Studio, clang, ldc
    • svn, mercurial, git
    • make, CMake, SCons
    • MySQL, PostgreSQL
    • nginx, gunicorn, Apache
  • Władam językiem angielskim na poziomie C1.

Wykształenie

Uniwersytet Marii Curie-Skłodowskiej
październik 2001 - październik 2006

  • Napisałem pracę dyplomową wraz z oprogramowaniem badającym algorytmy cyfrowej angiografii ilościowej tętnic wieńcowych.
  • Zdobyłem, z wynikiem bardzo dobrym, tytuł magistra informatyki specjalności projektowania i programowania systemów informatycznych.

Pasje

  • nowoczesne technologie
  • kosmologia
  • gry komputerowe
  • podróże