Praca w naszej firmie pełna jest pozornych paradoksów. Z jednej strony chcemy, aby w naszej firmie oprogramowanie było tworzone z użyciem najnowszych technologii, aby powstawało w sposób spontaniczny, pełen pasji i aby metoda rozwoju oprogramowania nie ograniczała kreatywności naszych inżynierów. Z drugiej strony nie chcemy przekroczyć cienkiej granicy, w której spontaniczność staje się chaosem. Dlatego inwestujemy w narzędzia wspomagające automatyczną diagnozę oraz wykrywanie problemów w kodzie, zanim jeszcze zostanie on dostarczony do klienta. Zapewniamy naszym programistom środowisko (automatyczne testy unitowe, komponentowe, statyczna analiza kodu itp.), które pozwala im kończyć dzień pracy z satysfakcją i przeświadczeniem, że wykonali dobrą pracę.
Nasi inżynierowie pracują w międzynarodowych zespołach tworzonych na potrzeby konkretnego produktu lub klienta. Projekty prowadzone są w metodologii Scrum, a zespoły mają bardzo duży stopień swobody, jeśli chodzi o dobór narzędzi i technologii. Zaangażowanie i wzajemna pomoc pracowników gwarantują, że planowane zadania zostają prawidłowo wykonane. Dzięki tym zasadom w relayr udało się nawiązać oraz utrzymać relacje z klientami, przez których nasz produkt jest używany.
Oto lista najważniejszych narzędzi i technologii, które zostały zaakceptowane przez naszych programistów i klientów: Scala, Java, ReactJS, Node.js, Python, Cassandra, PostgreSQL, Elasticsearch, git, Kafka, Docker, Kubernetes oraz Terraform. Jesteśmy ściśle zintegrowani z chmurą Azure, w której instalujemy nasze oprogramowanie, a także korzystamy z dużej ilości dostępnych tam serwisów takich jak np. IoTHub, Functions (serverless), Citus, Event Hub, Digital Twins, Data Lake, Storage Account. Lista technologii i usług, z których korzystamy, stale się powiększa oraz, na całe szczęście, także ulega redukcji. Każdy pracownik ma prawo kształtować tę listę - liczą się dla nas tylko argumenty merytoryczne. Z drugiej strony pierwsze użycie nowej technologii, nie jest dla nas dużym ryzykiem, ponieważ dzięki architekturze mikroserwisowej, zgodnie z którą już od wielu lat budujemy nasze produkty, możemy łatwo wyizolować funkcjonalności, które traktujemy jako eksperymentalne.