Programujeme letenky

Vývojáři GOL IBE v C.E.E. Group Travelport
Programátorský web
Background image - Futurama office park
Publikováno 18.12.2020
Pour Féliciter 2021

Přejme veselé Vánoce a šťastný nový rok 2021. V letošním pro letectví zdrcujícím roce jsme nezaháleli a vyzkoušeli si, že dokážeme naše produkty efektivně vyvíjet i v plně vzdáleném režimu. Těšíme se, jak se naše novinky uplatní během ozdravování letectví, které bude určitě následovat.

Přání PF 2021

Publikováno 15.12.2020
IT support specialist

Do GDS oddělení hledáme nového IT support specialistu. Jde o samostatnou práci vyžadující zodpovědný přístup.

Popis pozice

Publikováno 18.11.2020
Automatické formátování

Zavádíme jednotný auto formatter pro C++

Článek na blogu

Publikováno 5.11.2020
Chytřejší grep?

V PHP části GOLu se pouštíme do prvních pokusů s nástrojem na hromadné automatické úpravy kódu Rector. Chápeme ho jako grep, který rozumí PHP kódu. Výsledky nejsou zatím zcela přesvědčivé (vypadá to, že budeme muset nejprve doplnit hodně anotací), ale cítíme potenciál.

Github projektu

Publikováno 12.8.2020
Programuj bez výjimek

Michala vytáčela práce s výjimkami natolik, že se o tom rozhodl napsat krátký článek.

Článek na blogu

Publikováno 29.6.2020
Kompilovaná konfigurace

Pokud máte větší projekt, který se delší dobu rozrůstá o nové moduly v různých technologiích, můžete se dostat do potíží, jak v tak pestrém prostředí automatizovat konfiguraci jednotlivých komponent.

Co jsme s tím udělali my?

Publikováno 23.5.2020
DevOps

Developers, testes, scrum masters, product owner, operators, business, service desk, facilitator jako jeden tým. Jaké výhody to přináší a jak se liší naše zkušenosti s teorií se snažil zjistit náš test lead Libor.

Online DevOps introduction

Publikováno 16.4.2020
I na nuceném home office se najde čas na dobrou konferenci

V pondělí 6. 4. 2020 proběhla online TEST STACK konference, která měla 5 hlavních témat: Jan Rücker - Jak jsme testovali Kingdom Come: Deliverance, Ladislav Prskavec - Testování infrastruktury s nástroji Terraform a Terratest, Michal Vaněk - Jak testujeme zabezpečení pro chytrou domácnost, Jaroslav Reken - „Otestuj“ ma ak to dokážeš?! a Marcel Veselka - Jak se mění trh s test automatizací a jaké jsou aktuální trendy. Náš QA Libor konferenci po očku sledoval a prý stojí za to se na její záznam kouknout :)

Online Test stack konference

Publikováno 20.3.2020
systemd --user u nás

Jaká úskalí můžete čekat, když chcete spravovat služby pomocí systemd pod nerootovským účtem?

Naše zkušenosti a řešení

Publikováno 26.2.2020
Risk Storming

Včera náš QA Libor Šimo vedl pro testerskou komunitu [pro:]TEST! workshop na téma Risk Storming. Společně s našim programátorem Jirkou představili účastníkům projekt Trawys a ti pak pomocí karet TestSphere vytvořili plán testování.

Risk Storming na [pro:]TEST!

Publikováno 3.2.2020
Sessions nyní v Redisu

Před časem jsme připravili článek o možných chybách při nasazování Memcached. Způsob, jakým Memcached pracuje s pamětí (rezervuje paměť pro záznamy určité velikosti) nás nakonec přivedl zpátky k Redisu, který jsme původně zavrhli (nezamykal záznamy a nyní to už umožňuje). Článek o potížích s přechodem na Redis nemáme, jelikož žádné nebyly.

Redis

Publikováno 31.1.2020
Interní Hackathon

Jirka, Petr a Michal si vyzkoušeli malý interní hackathon aby po třech dnech mohli předvést rychlé a efektivní řešení aplikace, která je připravena do produkce s vysokou mírou škálovatelnosti výkonu díky AWS. Zároveň využívá i již napsaný kód v PHP díky frameworku Bref.

Framework Bref

Publikováno 27.1.2020
Striktní překlady v Typescriptu

Máte rádi pořádek v překladech své aplikace? My také! Michal připravil knihovnu v Typescriptu i s postupem použití včetně příkladových problémů, které knihovna řeší.

Repozitář na GitHubu

Archív: 2016 | 2017 | 2018 | 2019 | 2020 | 2021

GOL IBE D4 - React
GOL IBE D4 - React

Vyvíjíme rezervační systém, kterému říkame GOL. Zkratka IBE znamená Internet booking (= rezervační) engine. Rezervujeme primárně letenky. Označení D4 značí čtvrtou generaci, vyvinutou v javascriptovém frameworku Next.js, postaveném na Reactu. Z původního Flow jsme přešli na Typescript. Testujeme v Jestu a Cypressu. Aktuálně máme první zákazníky, ladíme, doháníme funkcionalitu a rozjíždíme React Native verzi.

GOL IBE D3 - PHP
GOL IBE D3 - PHP

Starší verze GOLu. Systém stále intenzivně vyvíjíme a zároveň udržujeme v provozu přes 10 let. To znamená, že v začátcích GOLu vypadal webový vývoj úplně jinak než dnes. Ale neznamená to, že bychom ho dělali celou dobu stejně. Jsme na PHP 7.2, testy píšeme v Codeception a PHPUnit.

GOL API - C++
GOL API - C++

Uvnitř GOLu se skrývá C++ jádro staré více než 10 let. Historicky podporovalo několik zdrojů letenkových a hotelových dat, rezervace aut a pojištění. Stále je v něm co zlepšovat. Při vývoji si pomáháme mockováním všech externích zdrojů dat, se kterými spolupracujeme. To nám umožňuje psát automatické testy. Nový kód píšeme v C14 a když je to potřeba, využíváme Boost.

Trawys - PHP
Trawys - PHP

Vyvíjíme také rezervační systém pro dodatečné služby k letenkám Trawys. K již zakoupené letence umožňuje dokoupit služby, jako jsou konkrétní sedadlo, dodatečná zavazadla nebo jídlo na palubě. Verze PHP je 7.2 a využíváme PHPStan.

Co všechno tedy používáme
  • Next.js, React, Typescript
  • PHP 7.2, začínáme s PHPStan
  • PHPUnit, Selenium, VisualCeption, Jest, Cypress
  • C++ (s možností využívat C11 a C14), Boost
  • Git (Gitlab, včetně CI)
  • Mysql, Memcached, Redis
  • Munin, ELK
  • koketujeme s AWS lambda
  • Debian spravovaný pomocí Ansible
  • nějaký ten Shell a trocha toho Pythonu
  • a mobilní aplikace pro nás vyvíjí externisté
Externí API

Využíváme různá API z cestovního ruchu. Nejvíce používáme API k systému Galileo, které využívají i největší hráči v oboru. V ČR jsou to například Kiwi.com, StudentAgency, nebo Pelikan. Obdobné je to s API Travelfusion.

Hledáme kolegy

Podrobnější popis.

Čím je naše práce specifická
Čím je naše práce specifická
  • Vyvíjíme v týdenních cyklech
  • Refaktorujeme, automatizujeme
  • Produktu držíme podporu
  • Takže víme, jak se mu daří...
  • ... u nás, na Slovensku, v Albánii, v Srbsku...
  • ... nebo třeba Keni, Thajsku nebo Surinamu...