Lokalizacja: Polska
Stawka: 6000 USD netto
O MNIE
Jestem liderem zespołu i programistą backendowym, który potrafi tworzyć dobrze zaprojektowane części backendowe oraz posiada pewne doświadczenie w tworzeniu interfejsów użytkownika. Interesuję się wysokowydajnymi systemami równoległymi. Zazwyczaj korzystam z Perl/Python w mojej pracy, ale mam doświadczenie w Go i JavaScript. Jestem otwarty na nowe technologie i uwielbiam testować nowe produkty.
PODSUMOWANIE UMIEJĘTNOŚCI
Umiejętności techniczne:
- W tym Nowoczesny Perl (Moose, DBIx::Class itp.), AnyEvent, Coro, Catalyst, Mojolicious, Kelp
- Dobra znajomość i doświadczenie z Pythonem 3 (asyncio, aiohttp)
- Dobra znajomość algorytmów i struktur danych
- Ekspertyza w projektowaniu zorientowanym obiektowo: wzorce projektowe, SOLID Dobra znajomość i doświadczenie z Go
- JavaScript
- HTML/CSS
- Podstawowa wiedza i doświadczenie z Javą, C++, PHP
- Projektowanie i rozwijanie baz danych z wykorzystaniem Mysql, PostgreSQL, MongoDB, CouchDB, Redis, ElasticSearch, Clickhouse
- Systemy kontroli wersji: Git, Subversion - Protobuf, YAML, JSON
DOŚWIADCZENIE ZAWODOWE
Stanowisko: Lider zespołu
2021 - obecnie
Obowiązki:
- Kierowanie zespołem 4 inżynierów. Dekompozycja zadań. Delegowanie zadań i ustalanie terminów.
- Motywowanie członków zespołu. Projektowanie rozwiązań razem z zespołem.
- Uczestniczenie w rozwoju aplikacji. Identyfikowanie potrzeb szkoleniowych i udzielanie wsparcia.
- Słuchanie opinii członków zespołu i rozwiązywanie wszelkich problemów lub konfliktów.
Stanowisko: Starszy Inżynier Oprogramowania
2016 - 2021
Obowiązki:
- Zaprojektowanie wydajnej bazy danych backendowej do przechowywania danych statystycznych opartej na bazie danych ClickHouse, zaprojektowanie i realizacja backendu do przechowywania logów z wykorzystaniem stosu ElasticSearch oraz pobieranie przetworzonych danych przez serwer napisany w Pythonie.
- Rozwój wydajnego wykonawcy zadań napisanego w Pythonie 3 z użyciem asyncio i komunikującego się za pomocą protokołu binarnego (Protobuf).
- Zaprojektowanie i rozwój rozproszonej aplikacji backendowej o wysokiej wydajności (Python 3, Go).
- Serwer proxy odwrotnego z uwierzytelnianiem, autoryzacją i routowaniem żądań napisany w Go.
Narzędzia i technologie:
Perl, nowoczesny Perl (Moose, Catalyst, DBIx::Class, AnyEvent), Python (aiohttp, asyncio), Go, JavaScript. Bazy danych: Mysql, Percona, ClickHouse, ElasticSearch. Brokerzy komunikatów: RabbitMQ. Technologie programowania: programowanie obiektowe, podejście asynchroniczne i synchroniczne, podejście równoległe. Pisanie testów do bibliotek API i API przez HTTP (json-rpc).
Stanowisko: Starszy Programista Perl
2010 - 2016
Obowiązki:
- Od początkującego w Perlu do starszego programisty; Uczestniczyłem w projektowaniu i rozwijaniu różnych aplikacji, w tym wydajnych i niezawodnych, projektowanych z wykorzystaniem mikroserwisów.
Narzędzia i technologie:
- Perl, nowoczesny Perl (Moose, Catalyst, DBIx::Class, Mojolicious), Lua (do pisania procedur składowanych w Redis).
- Bazy danych: Mysql, Postgresql + csstore_fdw, Redis.
- Technologie programowania: programowanie obiektowe, podejście asynchroniczne i synchroniczne, programowanie równoległe i współbieżne (z wykorzystaniem Coro, fork), pisanie pełnych API REST, pisanie mikroserwisów komunikujących się za pomocą kolejek.
- Pisanie testów do bibliotek API i interfejsów REST API.