Signavio Tech Blog

Ideas, techniques and other stories from Signavio’s engineering team.

One coverage to rule them all

Thomas Zimmermann - 29 April 2020

Generating combined coverage reports for Cypress end to end tests and Jest unit tests

BPX 4 Hyperledger

Gowtham Mohan, Timotheus Kampik - 19 September 2019

How to use the Caterpillar engine to execute business processes on Hyperledger Fabric

Type your API today!

Pascalis Maschke - 18 July 2019

Our approach on how to gain more certainty about what to expect from both ends of an API

Batch image optimization

Sebastian Friedrich - 17 December 2018

How to highly optimize static PNG and GIFs to save some bandwidth

Recent developments in academic AI

Timotheus Kampik - 23 July 2018

A product developer’s perspective on the IJCAI, ICML & AAMAS conference marathon

Trouble building maps with the Java Stream API

Nils Faupel - 10 July 2018

Pitfalls when rewriting for-loops with Java stream API and collect to Map

Integrating Flow type into a large JavaScript project

Philipp Giese - 03 July 2018

Lessons learned on our journey towards type safety

What does a Scrum master really do?

Adiya Mohr - 13 December 2017

My journey as a Scrum master, from first steps to really understanding the role

Hands-on Hy - coding Lisp with Python

Timotheus Kampik - 01 November 2017

A rookie's practical introduction to the Hy programming language

Announcing Pimba - serve static files quick as a flash

Stephano Zanzin, Timotheus Kampik - 25 October 2017

A Go-based command line tool for publishing and serving static files

Code Camp Projects 2017

Rachel Stiles - 18 October 2017

10 projects from our annual internal hackathon

The world’s northernmost* JavaScript conference

Jonas Hartweg, Timotheus Kampik - 19 September 2017

* We assume.

Working with Kotlin, DropWizard and jOOQ

Kathleen Sharp - 09 August 2017

Implementing a DropWizard resource in Kotlin

Legacy redirects in Sphinx

Timotheus Kampik - 26 July 2017

How to handle redirects directly in your Sphinx project

Embrace legacy with constant change (video)

Peter Hilton - 09 June 2017

Video of Philipp Giese’s presentation at Signavio Tech Talk #3

Container manifesto: image size & layering

Christian Kniep - 17 May 2017

Guidelines for building and running containers

Natural language linting

Timotheus Kampik - 10 May 2017

An introduction to configurable text analysis tools

Intro to BDD with Gherkin

Peter Hilton - 03 May 2017

Using the Gherkin language to get started with Behaviour-Driven Development

ORM enum mapping performance

Nils Faupel - 26 April 2017

Comparing the performance of string and ordinal mapping of enums

Mocha x Jest - Configuration Guide

Hemerson Carlin - 19 April 2017

Comparing configuration between Mocha and Jest to test UI components

Application usability improvements through the eyes of the user

Gisa Klement - 12 April 2017

Taking a closer look at the user interface in Signavio Workflow Accelerator

How to profile SQL statements with Sniffy

Nils Faupel - 05 April 2017

Showing database query execution time and count in your browser

Sagas vs workflows

Tom Baeyens - 29 March 2017

Sagas are not well known but provide inspiration for using workflows.

Embrace legacy with constant change

Philipp Giese - 22 March 2017

The rules after which we decide when to re-factor.

Microservice orchestration with Docker Compose

Julius Breckel - 15 March 2017

Pros and cons of creating a Docker management tool for your development environment

How not to write i18n calls

Timotheus Kampik - 08 March 2017

Internationalisation function calls: anti-patterns and best practices

Writing to PostgreSQL from Apache Flink

Kathleen Sharp - 01 March 2017

How to write a custom data sink

Transforming Markdown to Word with Apache POI

Stefan Herz - 22 February 2017

Using Pegdown and JSoup to generate Apache POI’s XWPF format

6 bad ways to add type information to JSON

Peter Hilton - 15 February 2017

Pros and cons of different ways to indicate JSON types