← back to the blog


Curriculum Vitae - wersja polska

Posted
on 2015-02-28

link to english version

CURRICULUM VITAE

Aleksander Adamowski

Dane osobowe

Data urodzenia: Sierpień 19, 1978r.

Stan cywilny: Żonaty

Adres

aleksander.adamowski@gmail.com

http://olo.org.pl


 

Historia zawodowa

 

2014r. - ...

Facebook, Inc.

1 Hacker Way, Menlo Park, CA 94025, USA

Stanowisko:

Security Engineer

2010r. - 2014r.

Grupa PZU

ul. Jana Pawła II 24, Warszawa

Stanowisko:

Architekt systemowy

Osiągnięcia:

  • Przeprowadzenie (w ramach wiodącej roli technologicznej i koordynacyjnej) projektu skutecznej optymalizacji wydajnościowej obejmującej kluczowy system front-end, kluczowy system policy administration oraz interfejs pomiędzy tymi systemami, co umożliwiło sprawną obsługę w problematycznych przypadkach biznesowych związanych z dużym rozmiarem danych.
  • Wsparcie zakończonej sukcesem dywersyfikacji dostawców istotnego systemu finansowego.
  • Opracowanie szeregu nowych technicznych standardów wewnętrznych oraz rozwinięcie istniejących. 
  • Wprowadzenie do użycia w procesie rozwojowym systemu rozproszonego wersjonowania kodu Git jako alternatywy dla scentralizowanego SVN.

Zakres obowiązków:

  • Wkład merytoryczny w projektowanie systemów i rozwiązań informatycznych.
  • Nadzór prac programistycznych prowadzonych przez dostawców zewnętrznych.
  • Rozpoznanie i ewaluacja nowatorskich technologii w ramach procesu wewnętrznej standaryzacji.
  • Wsparcie merytoryczne negocjacji z zewnętrznymi dostawcami usług programistycznych.
  • Wsparcie architektoniczne inicjatyw i projektów rozwoju oprogramowania.
  • Opracowanie wewnętrznych standardów i procedur dotyczących inżynierii oprogramowania.
  • Interwencyjne i naprawcze prace programistyczne Java/Java EE (prace ratunkowe w ramach zagrożonych projektów).

2008r. - 2010r.

First Data Polska S. A.

Al. Jerozolimskie 92, Warszawa

Stanowisko:

Projektant programista

Osiągnięcia:

  • Zaprojektowanie, implementacja, testowanie, udokumentowanie i wsparcie procesu pomyślnego wdrożenia systemu dystrybucji kluczy kryptograficznych, obejmującego zaawansowaną kryptografię asymetryczną i symetryczną z wykorzystaniem sprzętowego modułu kryptograficznego HSM; system integruje wymianę kluczy między rdzeniowymi systemami firmy,
  • Analiza i diagnoza szeregu trudnych problemów z bibliotekami API producenta sprzętowego modułu kryptograficznego HSM, co wymagało m.in. ręcznej modyfikacji natywnych plików obiektowych .so z użyciem edytora szesnastkowego dla zmodyfikowania zawartego w nich kodu maszynowego,
  • Przystosowanie systemu w architekturze SOA bazującej na BPEL i SOAP do sklastrowanego, replikowanego środowiska działającego w trybie active-active z równoważeniem obciążenia, przy jednoczesnym radykalnym ulepszeniu testowalności aplikacji, powtarzalności build-ów oraz jakości jej kodu
  • Wsparcie ogólnofirmowego wdrożenia katalogu LDAP w oparciu o Oracle Internet Directory podczas fazy planowania i projektowania infrastruktury.

Zakres obowiązków:

  • Projektowanie (UML) i implementacja (Java, Perl, C) systemów wspomagających płatności kartami (architektura SOA, Web services, WS-Security, BPEL) oraz powiązanych rozwiązań kryptograficznych (n.p. system dla infrastruktury klucza publicznego i dystrybucji kluczy)
  • Projektowanie, konfiguracja i wdrożenie infrastruktury wspomagającej proces rozwoju oprogramowania (zarządzanie wersjami oprogramowania oparte o SVN, budowanie i raportowanie oparte o Maven 2, serwer ciągłej integracji, komunikator czat i wiki dla współpracy grupowej)
  • Wspieranie procesu projektowania ogólnofirmowej infrastruktury autentykacyjnej i autoryzacyjnej opartej na LDAP
  • Wewnętrzne audyty bezpieczeństwa kodu aplikacji

1999r. - 2008r.

Altkom Akademia S.A.
Intraco
ul. Stawki 2, Warszawa

Stanowisko:

Trener IT (od 1999)

Programista (od 2001)

Administrator systemów (od 2002)

Osiągnięcia:

  • Przebudowa architektury rdzeniowych usług firmowej infrastruktury: e-mail, DNS, CUPS, WWW, LDAP
  • Implementacja dedykowanego oprogramowanie dla firmowej infrastruktury, przykładowo:
    • Zautomatyzowany system dołączający oparte o konfigurowalne szablony, ustandaryzowane stopki do wychodzącej poczty e-mail (zarówno HTML, jak i zwykły tekst), który wypełnia odpowiednie pola wartościami atrybutów nadawcy z firmowego katalogu LDAP (na przykład numer komórkowy, stanowisko, imię i nazwisko)
    • Aplikacja GUI służąca zarządzaniu kontami w firmowym katalogu LDAP przez osoby nie techniczne
  • Implementacja restrykcyjnych polis bezpieczeństwa SELinux (obowiązkowa kontrola dostępu) na rdzeniowych serwerach firmowych (DNS, przekaźniki pocztowe, domeny zerowe hiperwizora XEN)
  • Dokonanie wirtualizacji większości serwerów świadczących rdzeniowe usługi w firmowej sieci korzystając z technologii wirtualizacyjnej Xen opartej na hiperwizorze, wraz z migracją do 64-bitowej architektury sprzętowej
  • Wdrożenie wewnętrznego centrum certyfikacji elektronicznej (CA) w oparciu o Dogtag Certificate System, z dostosowaniem kodu do potrzeb firmowych i integracją z firmowym katalogiem LDAP
  • Implementacja efektywnego systemu filtrowania antyspamowego wraz ze współdzielonymi folderami IMAP przeznaczonymi na zgłaszanie przez użytkowników wiadomości e-mail nieprawidłowo zaklasyfikowanych przez filtr
  • Przeprowadzenie szeregu udanych audytów bezpieczeństwa dla klientów firmy
  • Przeprowadzenie dziesiątek kursów obejmujących szeroki zakres obszarów kompetencyjnych (patrz niżej)

Zakres obowiązków:

  • Prowadzenie szkoleń (z zakresu aplikacji biurowych MS Office, następnie z języków programowania PHP i opisu dokumentów HTML, potem z administracji systemami Linux)

  • Programowanie (udział w projektach realizowanych w technologiach Apache+PHP+MySQL; Java+technologie związane)

  • Administracja systemami firmy (system poczty – 300 użytkowników, w większości informatyków; główny serwer WWW; system DNS; system druku korporacyjnego w głównym oddziale firmy; inne usługi sieciowe) oraz outsourcing administracji systemami

  • Wykonywanie konsultacji z zakresu bezpieczeństwa i administracji systemów dla klientów zewnętrznych

1998 – 1999r.

Daewoo Dacom Communications
Sala Multimedialna
ul. Wspólna 62, Warszawa

Stanowisko:

Informatyk

Zakres obowiązków:

  • Konsultacja w zakresie oprogramowania (oprogramowanie systemowe i biurowe Microsoft)

  • Techniczny i organizacyjny nadzór nad salą multimedialną

  • Serwis informatyczny

  • Obsługa klientów sali multimedialnej

  • Prowadzenie szkoleń komputerowych

 

Umiejętności (poparte doświadczeniem)

Systemy operacyjne

Linux i BSD:

poziom administratora systemów korporacyjnych, certyfikat Redhat Certified Engineer; szerokie doświadczenie z zakresu administracji systemów, tworzenia skryptów powłoki UNIX, rozwoju oprogramowania (patrz niżej)

Windows (2003, 2000, XP, starsze):

poziom użytkownika “power user” + młodszy administrator

Języki programowania

Java

Znajomość bardzo dobra (certyfikaty SCJP/OCPJ, Java Web Services, doświadczenie w rozwijaniu bazodanowych aplikacji WEB na serwerze Tomcat, J2EE na serwerach JBoss i Glassfish, Spring framework, Spring Web Services oraz Acegi Security, WS-Security przy użyciu WSS4J, przetwarzaniu XML, budowaniu multimedialnych aplikacji z graficznym interfejsem użytkownika; praca w środowiskach zintegrowanych - Eclipse, Netbeans).

JavaScript

Doświadczenie zarówno po stronie serwera w technologii Node.JS, jak i po stronie klienta w technologii jQuery.

PHP

Znajomość bardzo dobra (doświadczenie w opracowywaniu narzędzi administracyjnych LDAP, stron e-learningowych itp. Przykładowy projekt: ldap-gallery - aplikacja web w PHP udostępniająca książkę adresową i galerię zdjęć opartą na bazie LDAP. Pełnię rolę założyciela i opiekuna projektu.)

Perl

Znajomość bardzo dobra (doświadczenie w opracowywaniu szeregu skryptów dokonujących migracji danych, pełniących funkcję middleware w złożonych systemach sieciowych, narzędzi administracyjnych LDAP z graficznym interfejsem użytkownika, audytowaniu bezpieczeństwa kodu aplikacji finansowych itp.)
Przykładowe projekty:
Gtk2::Net::LDAP::Widgets - biblioteka komponentów GUI dla tworzenia aplikacji klienckich korzystających z katalogów LDAP, dostępna w archiwum CPAN. Jestem autorem biblioteki i pełnię rolę jej opiekuna w archiwum CPAN.)
Tesseract-polish - projekt ma na celu opracowanie wsparcia dla języka Polskiego dla programu Tesseract OCR. Zawiera szereg skryptów Perl przeznaczonych dla analizy korpusów językowych, generowania słowników oraz walidowania wyników ręcznych etapów prac nad danymi treningowymi OCR.

Python

Znajomość dobra (przykładowe projekty: serwis www.dcde.ru na Google App Engine; zbiór dynamicznych, zintegrowanych z katalogiem LDAP, filtrów przetwarzających pocztę, przeznaczonych dla serwera pocztowego Courier MTA:  http://code.google.com/p/courier-pythonfilters-ldap/. Pełnię rolę założyciela i opiekuna projektu.)

C, C++

znajomość dobra (doświadczenie w modyfikacji kodu źródłowego systemów serwerowych dla Linux/BSD - na przykład inicjatywa KrbLDAP na GitHub).

Visual Basic

znajomość dobra (rozwijanie aplikacji, przeprowadzone szkolenia z VBA i dostępu do baz MS Access)

Umiejętności dodatkowe

organizacja projektów (infrastruktura zespołu, harmonogramy, raporty (metodyka Scrum), konwencje nazewnicze), znajomość ogólnych zagadnień zarządzania zespołami, projektami i przedsięwzięciami (jest to wymaganie związane ze zdaniem egzaminu CISA)

administracja i korzystanie z systemów wersjonowania kodu i konfiguracji - CVS, Subversion, GIT

systemy wspomagania pracy zespołowej śledzenia błędów - Bugzilla, JIRA, Crucible, Trac, MediaWiki, Hudson CI

analiza i projektowanie obiektowe - UML, Enterprise Architect, MS Visio

Bazy danych

PostgreSQL

Rozległe doświadczenie (rozwój aplikacji, prowadzenie kursów dla administratorów baz)

MySQL

Rozległe doświadczenie (rozwój aplikacji, prowadzenie kursów dla programistów aplikacji web, zgłaszanie błędów do MySQL AB)

Oracle

Rozległe doświadczenie (rozwój aplikacji PL/SQL, tuning wydajnościowy)

MS SQL Server

Wstępne doświadczenie (uczestnictwo w projektach, w których MS SQL Server jest używany jako RDBMS, autorstwo kilku złożonych funkcji w Transact SQL)

Oprogramowanie użytkowe

Programy graficzne i multimedia

CorelDraw Corel PhotoPaint, Adobe Photoshop, The Gimp, InkscapeAdobe After Effects oraz Premiere, Samplitude Studio, Metacreations Painter, Lightwave 3D, Autodesk 3D Studio, Macromedia Studio

Aplikacje biurowe

Microsoft Office

cały pakiet, doświadczenie na poziomie trenerskim, certyfikaty Microsoft Office User Specialist (MOUS), doświadczenie programistyczne

Sun OpenOffice / StarOffice

cały pakiet, doświadczenie praktyczne i trenerskie, wstępne doświadczenie programistyczne

Zastosowania

Aplikacje korporacyjne

  • usługi katalogowe LDAP (OpenLDAP, Netscape Directory Server, Red Hat Directory Server, Fedora Directory Server) - zaawansowana architektura, replikacja, projektowanie reguł kontroli dostępu, dostosowywanie schemy, zastosowania specjalne

  • wirtualizacja serwerów (Xen, VMware)

  • komunikacja wewnątrzfirmowa (eGroupWare, Zope)

  • współdziałanie systemów w środowisku heterogenicznym

  • relacyjne bazy danych
  • serwery aplikacyjne Java EE (JBoss, Glassfish) - bezpieczeństwo, klastrowanie, monitorowanie

Bezpieczeństwo systemów IT

  • infrastruktura klucza publicznego (PKI) – certyfikaty x.509, standardy PKCS, wdrożenie, konfiguracja i administracja Centrum Certyfikacji (CA - Netscape Certificate Management System, Redhat Certificate System, Dogtag Certificate System), automatyzacja działań na certyfikatach z użyciem biblioteki OpenSSL (http://www.openssl.org/) i języka Perl lub Bourne shell, oprogramowywanie tokenów i modułów HSM z API PKCS#11

  • system obowiązkowej kontroli dostępu dla Linuxa - NSA FLASK (Flux Advanced Security Kernel) / SELinux (http://www.nsa.gov/selinux/)

  • systemy kopii zapasowej i archiwizacji (IBM Tivoli Storage Manager)
  • bezpieczeństwo systemów:

    • testy penetracyjne (szczególnie aplikacji web: wstrzykiwanie SQL, przewidywanie id sesji, wstrzykiwanie kodu powłoki, cross site scripting, cross site request forgery, pomijanie uwierzytelniania, ujawnianie informacji niejawnych; narzędzia Tamper Data, FireBug, WebScarab, BurpSuite, Paros Proxy, Pantera)

    • audyty kodu aplikacji pod kątem zgodności ze standardem PCI DSS (Payment Card Industry Data Security Standard)

    • testy jakości haseł poprzez łamanie

    • wykrywanie włamań (IDS)

    • konfiguracja filtrów pakietów, NAT, IPSec, analiza interakcji między systemami w rozproszonym środowisku itp.

  • zdany egzamin CISA (Certified Information Systems Auditor)

Sieci lokalne

usługi sieciowe LAN – współdzielenie plików, drukarek, komunikacja intranetowa

Internet

usługi publiczne w Internecie – WWW, poczta (Courier MTA, Netscape Messaging Server, Postfix, Exim), FTP, Instant Messaging (jabberd, jabberd2, ejabberd), wiele innych (n.p. NTP)

Sprzęt

Obsługa macierzy Serial ATA/SCSI/Fibre Channel oraz bibliotek taśmowych (zastosowania serwerowe)

Języki obce

Angielski - zaawansowany (certyfikat SEFIC poziom 4 – najwyższy, doświadczenie w prowadzeniu szkoleń i konsultacji informatycznych dla native speakers; IELTS Academic - score 8.0)

Rosyjski – średnio zaawansowany

Wykształcenie

2007r. - 2012: uzupełniające studia magisterskie na Polsko-Japońskiej Wyższej Szkole Technik Komputerowych

1999r. - 2006r.: Polsko-Japońska Wyższa Szkoła Technik Komputerowych, uzyskany tytuł inżyniera

1993 - 1997r.: LVI Liceum Ogólnokształcące w Warszawie,
profil matematyczno - fizyczny

Certyfikaty, Szkolenia

2001-08-11: Chiltern Consultancy International “Train the Trainer” - odbyte 3-dniowe szkolenie z trenerskich umiejętności interpersonalnych (certyfikat nr. TtT/11/08/01)

2003-07-15: LCCI Spoken English for Industry and Commerce level 4 (poziom najwyższy) nr. 0030126154

2003-11-28: Redhat Certified Engineer (nr. Weryfikacyjny 809003914009421)

2008-05-05: JBoss Administrator Exam (EX336)

2010-04-15: NobleProg "Design Patterns - efficient code reusability" - kod identyfikacji f701b0, ID certyfikatu 10255 

2010-10-29: Oracle University Course: "SOA: Architectural Concepts and Design Principles"

2011-01-13: Oracle Certified Professional, Java SE 6 Programmer - candidate ID SR7048133, registration number U00DUS50E4

2011-01-21: IBM 000-839: Rational Unified Process 7.0 - candidate ID SR7048133, registration number U07DUS5323

2011-12-14: Oracle 1Z0-862 Java Enterprise Edition 5 Web Services Developer Certified - candidate ID SR7048133, registration number 245651304

2012-08-24: Bottega IT Solutions Course: "Domain Driven Design"

2012-09-22: British Council International English Language Testing System (IELTS) exam - Academic module, score: 8.0

 

Publikacje

Linux Magazine Polska - numer 10 (2004-11): "Know-how: Wykorzystanie Perl-owego modułu Net::LDAP w automatyzacji zadań administratora OpenLDAP"

Praca inżynierska - “Automatyzacja wdrożenia sieci wydzielonej z poufnością w oparciu o system Linux i ipsec-­tools” - obejmuje opracowanie algorytmów i narzędzi w Perl, które efektywnie generują i ustanawiają współdzielone klucze oraz rozprowadzają konfigurację po wszystkich węzłach sieci.

Dodatek do pracy inżynierskiej - “Algorytm szyfrowania Julius” - projekt i implementacja w języku Java prostego algorytmu szyfrowania symetrycznego, opartego na sieciach Feistela.

Praca magisterska - “KrbLDAP -­ Koncepcja nowego bezpiecznego mechanizmu autentykacji” - idea wykorzystania rozszerzonych operacji protokołu LDAP v3 dla przenoszenia komunikatów protokołu Kerberos v5, dla uzyskania prostego koncepcyjnie mechanizmu integracji protokołów LDAP i Kerberos, a także implementacja klienta, serwera oraz zautomatyzowanego testu integracyjnego dla zilustrowania idei.  

O sobie

Zainteresowania

Grafika komputerowa, muzyka, taniec towarzyski

Plany na przyszłość

  • Rozwój zawodowy w kierunku projektowania architektur aplikacji finansowych realizowanych w technologiach OpenSource, technologii klastów HA i HPC, technologii kryptograficznych oraz wirtualizacji pamięci masowej

  • Życie rodzinne

 


Wyrażam zgodę na przetwarzanie moich danych osobowych w celach rekrutacji, zgodnie z Ustawą z dn. 29 sierpnia 1997 r. o ochronie danych osobowych (Dz. U. z 2002 r. Nr 101, poz. 926 z późniejszymi zmianami)