Firma produktowa
Nasz klient tworzy gry światowej klasy, systemy back-office i zarządzania treścią, rozwiązania hostingowe, infrastrukturę, zaawansowany silnik uczenia głębokiego oraz rewolucyjny zestaw produktów związanych z utrzymaniem użytkowników. Tworzą, testują i wydają gry w pełnym cyklu, od początku do końca (automaty i gry stołowe). Oznacza to bliską współpracę z wewnętrznym zespołem QA i serwerowym na co dzień. To studio o ogromnym doświadczeniu w produkcji, dopasowywaniu i wydawaniu gier, działające już od 5 lat.
Każdy programista prowadzi projekt od A do Z: zaczynając od analizy gry, a kończąc na optymalizacji dla platformy/urządzeń.
Obowiązki:
- Będziesz odpowiedzialny za rozwój projektu od początku do końca (1 programista = 1 gra, od początku do wydania);
- Będziesz blisko współpracować z właścicielem produktu, zespołem QA i kierownikiem projektu, aby przekształcić oczekiwania dotyczące produktu w jasny, utrzymywalny i wydajny kod;
- Będziesz przeprowadzać wzajemne przeglądy kodu wewnątrz zespołu deweloperskiego klienta;
- Dostarczysz projekt na platformy desktopowe/mobilne i dostosujesz go do różnych urządzeń.
Wymagania:
- Co najmniej 2 lata doświadczenia w tworzeniu gier;
- Znajomość języków JavaScript/TypeScript;
- Canvas/WebGL;
- Znajomość wzorców projektowych;
- Doświadczenie w stosowaniu zasad OOP i MVC;
- Doświadczenie z Pixi.js (preferowane), Phaser, PlayCanvas lub innym frameworkiem do renderowania/gier;
- Systemy kontroli wersji (Git);
- Chęć nauki i rozwoju jako programista;
- Znajomość języka angielskiego - co najmniej średni poziom;
- Dobre umiejętności komunikacyjne.
Stanowiłoby silną przewagę, gdybyś miał/miała:
- Znajomość struktur danych, algorytmów, architektur asynchronicznych, dynamicznego typowania, optymalizacji wydajności;
- Znajomość nowoczesnych frameworków JS (Model-View-Whatever);
- Znajomość funkcji HTML5 i ES6;
- Doświadczenie w debugowaniu i profilowaniu aplikacji przeglądarkowych;
- Doświadczenie w tworzeniu gier slotowych (branża hazardowa);
- Znajomość narzędzi do zarządzania zadaniami, takich jak Grunt/Gulp/Webpack;
- Znajomość języków inne niż JavaScript/ActionScript;
- Dla programistów Flash - znajomość frameworków Starling/Feathers/Robotlegs;
- Rozwijanie aplikacji internetowych na różne przeglądarki i urządzenia mobilne;
- Znajomość shaderów WebGL.