Přejít na obsah

Frontend programátor pro stránku Seznam.cz

Seznam.cz, a.s., Londýnské náměstí 856/2, 639 00 Brno, Štýřice  •  Programátoři, Všechny IT pozice  •  Pro muže i ženy

Chcete se podílet na programování nejnavštěvovanější stránky českého internetu www.seznam.cz?

Teď máte jedinečnou možnost, protože právě hledáme zkušené vývojáře, který posílí náš tým. 

Jestli je programování vaší vášní a nebojíte se výzev, tak pro vás máme jednu připravenou. Níže najdete úkol, který je vstupní branou jak se k nám dostat. K vypracování můžete použít libovolný programovací jazyk (kromě ezoterických ;) ). Bude nás zajímat, jak nad věcmi přemýšlíte a jaký je váš kód. Svoje řešení úkolu nám zašlete spolu s komentářem, jak jste uvažovali a proč jste zvolili takové řešení, do odpovědního formuláře. 

Co by vás u nás čekalo?

  • Spolupracovali byste na implementaci nových funkcí do portálu www.seznam.cz.
  • Na frontendu používáme primárně TypeScript a React a Redux, na backendu zase GoLang a MariaDB. Vy byste pracovali pouze na frontendu.
  • Celou aplikaci provozujeme ve vlastním cloudu stojícím na Kubernetes a OpenStack.
  • Pokud některou z těchto technologií nebo jazyků neznáte, nevadí. Je pro nás důležité jak nad věcmi přemýšlíte, ne že znáte každou technologii. Co nevíte vás rádi naučíme :)

Co ještě u nás v Seznamu najdete:

  • Prostředí, ve kterém se člověk může realizovat a které je otevřené inovacím.
  • Velkou míru seberealizace i svobodu v práci.
  • Tým lidí, kteří jdou za stejným cílem a dokážou při té cestě jeden druhého podržet a podpořit.
  • Možnost profesního růstu v rámci firmy.
  • Neformální pracovní prostředí, kde si všichni tykáme a pomáháme si.

Zadání úkolu

Vaším úkolem je implementovat funkci zipItems. Funkce má za úkol zamíchat do první sekvence hodnot hodnoty z generátoru druhé sekvence hodnot a vrátit vzniklou sekvenci jako pole. Funkce má použít všechny prvky z první sekvence a vložit prvky druhé sekvence na pozice určené zbylými argumenty. Výstupní sekvence musí končit položkou z první sekvence. Vstupní sekvence nemá být změněna.

Funkce zipItems obdrží následující argumenty:

  • primaryItems – pole obsahující sekvenci hodnot do které mají být zamíchány hodnoty z druhé sekvence
  • secondaryItemsFactory(n) – funkce, která obdrží kladné číslo n a vrátí n následujících položek z druhé sekvence jako pole. Funkce vždy vrací následující položky sekvence a neumožňuje “přetočení” na začátek
  • offset – index (počítán od 0) na který má být vložena prvá položka z druhé sekvence
  • period – perioda s jakou mají být vkládány položky z druhé sekvence do výsledné sekvence (t.j. ve výsledné sekvenci bude mezi 2 položkami z druhé sekvence právě period – 1 položek z první sekvence)

Předpokládejte že funkce zipItems vždy dostane platné hodnoty na vstupu.

Můžete použít libovolný imperativní nebo funkcionální programovací jazyk (s výjimkou ezoterických jazyků). V řešení nepoužívejte žádné knihovny nebo nástroje které nejsou součástí zvoleného jazyka.

Varianta pro pokročilé

V implementaci funkce zipItems zavolejte funkci generující položky druhé sekvence (secondaryItemsFactory) pouze jednou se správným argumentem (nesmíte vygenerovat ani jednu položku druhé sekvence navíc).

Příklad použití a návratové hodnoty

zipItems([1000, 1001, 1002, 1003, 1004], secondaryItemsFactory, 1, 3)

[1000,0,1001,1002,1,1003,1004]

JSFiddle playground

Pokud chcete k implementaci použít JavaScript, můžete využít následující předpřipravené prostředí:https://jsfiddle.net/8v3tLwgr/

Čím vám ještě uděláme radost

Zajímavá finanční odměna

Vaši práci i talent náležitě oceníme.

Cafeterie

Získáte kredit třeba na sport, kulturu, vzdělávání, cestování, ale i den volna navíc, zdraví, životko nebo penzijko.

Pružná pracovní doba

Volnost tu dostanou skřivani i sovy. Navíc vás čeká 5 týdnů dovolené nebo 3 sick days.

Ovoce do práce

Každý měsíc dostanete nálož vitamínů přímo do kanceláře.

Technika na přání

Mac, Windows nebo Linux. Pracovat ale můžete i na vlastním počítači a my vám na něj budeme finančně přispívat.

Interní vzdělávání

Rozšíříte si obzory pod vedením našich trenérů.

S kým budete spolupracovat

Ondřej Nový
Vedoucí vývoje divize HP a obsahových služeb
V Seznamu pracuji od března 2015. Stojím v čele vývoje obsahových služeb, mezi které patří domovská stránka Seznamu, Novinky.cz, Sport.cz, Televize Seznam či Seznam Zprávy. Na celé práci mě nejvíc naplňují projekty, které lidem usnadňují život. Baví mě diskutovaná témata a open source vývoj. Po práci mi dobíjí energii celá rodina, ale hlavně moji dva synové.

Brno, Londýnské náměstí 856/2

Seznam.cz, a.s., Londýnské náměstí 856/2, 639 00 Brno, Štýřice

Naše prostory v Brně se na vás těší i s nabídkou stravování přímo v areálu. Za pěkného počasí můžete využít terasu ke grilování nebo si v případě deště zahrát fotbálek. Kromě bezproblémové dostupnosti MHD u nás zaparkujete s autem i kolem.

Nábor do Seznamu běží dál. Aktuální situaci jsme se přizpůsobili a setkání s vámi uděláme klidně online.

Zajímá vás tato pozice? Napište Nikole

Máte jiné představy?

Podívejte se na ostatní volné pozice a vyberte si svou práci snů. Nebo nám rovnou pošlete svůj životopis. Podíváme se na něj a až se objeví místo pro vás, ozveme se.

Poslat životopis

Zobrazit volné pozice

Virtuální prohlídka