Skip to content

Functional Programmer

INTEGRA, a.s. · Software

Summary

The company develops an in-house trading platform, analytical tools, and advanced models for energy product trading on European exchanges. The role involves working on a wide range of technical challenges, from data collection to automated trading systems, using Scala for both frontend and backend.

Key facts

Status
Available
Location
Prague
Contract
Full-time
Work arrangement
On-site
Required skills
  • Scala
  • Scala.js
  • Laminar
  • PostgreSQL
  • Akka HTTP
  • Slick/Quill
  • Linux
  • Networking
Benefits
  • Fresh fruit in the office
  • 25 days of vacation
  • Multisport card
  • Unlimited phone plan
  • Sick days
Estimated salary (not official)
~75k–95k Kč/moRough estimate for a full-time role — not provided by the employer How is this calculated?

Full description

2 About position

The company specializes in trading energy products on European energy exchanges, supported by a proprietary in-house trading platform, analytical tools, and advanced models.

Rather than developing solutions for external customers, it focuses exclusively on creating technologies that empower its trading teams to make better, faster, and more informed decisions.

This approach allows the company to prioritize innovation without the constraints of competing client requirements, externally imposed deadlines, or UI/UX-driven design.

Its work spans a wide range of technical challenges, from data collection and trader dashboards to sophisticated trading platforms and fully automated trading systems.

The tech stack: Both frontend and backend are written in Scala, which means that we can share non-trivial logic between both sides easily and implement communication protocols as needed, instead of being stuck with usual solutions that never really fit.

Scala 2 (with the intention to move to Scala 3 and possibly Kyo) Scala.js, Laminar PostgreSQL Akka HTTP Slick/Quill 3

Requirements

Good understanding of principles used in functional programming (Scala experience is not necessary) Knowledge of basic principles (algebraic data types, common operations like map, fold, etc.) More advanced functional topics (functors, applicatives, monads, Kleisli arrows, subtyping/type variance, etc.) Knowledge of data structures, algorithms, and time/space complexity Familiarity with concurrency and parallelism (Threads, Locks, Actors, Task-level parallelism) Good proficiency with Linux development / command-line tools

Bonus points

Networking concepts (TCP, UDP, DNS, routing, switching, etc.) Linux system programming/administration Familiarity with hardware, working on bare metal, and performance characteristics Scala IO / Effect systems SQL databases Knowledge of multiple languages and paradigms (C, Haskell, Lisp)

4 What can you expect? Work on-site with flexible working hours Fresh fruit in the office 25 days of vacation Multisport card Unlimited phone plan Sick days Modern offices in the heart of Prague - right in the middle of Wenceslas Square

Apply on the company site