Flow Traders / Amsterdam (NL)Apply on site
Flow Traders is looking for an experienced Core Java Developer join our growing Development team in Amsterdam. The ideal candidate is curious, methodical and a multi-tasker. This is a unique opportunity to join a leading proprietary trading firm with an entrepreneurial and innovative culture at the heart of its business. We value quick-witted, creative minds and challenge them to make full use of their capacities. If you aim high, the sky is the limit!
What you will do
Software Engineers in Flow Traders are working on applications that support the core business of the company. Our systems make it possible for Flow Traders to be present and competitive on exchanges worldwide. There is all kinds of code to write, from systems on (or close to) the critical path, from receiving market data to placing orders, to systems handling huge amounts of data in a reliable, performant and traceable manner.
Due to the flat team structure, you will have a chance to participate in writing code, creating new designs and maintaining existing applications with a focus on performance and stability. Our business users are typically only a walk away, which helps to create short feedback loops and to see your changes provide value in the shortest time possible.
To enable that, we strive to follow the best software engineering practices and are supported by the best working environment, latest technology and continuous support from all parts of Flow Traders organization
We work in small teams, grouped by business area. In the Java space, the teams are: Core, Risk Tools, Compliance Tools, Institutional Tools, Trading Tools and Strategies. Each team is typically responsible for a set of related applications and works in tight collaboration with business owners. We maintain libraries shared across the teams to enable code re-use and to have a common view on application architecture. We write extensive unit tests and have a QA team that supports us with integration testing. We follow agile practices, tailored to the problem area and preferred team approach.
Some of the technologies we use in the development process:
- Common stack: Java 8 & Java 11, Netty, Chronicle Queue, Hibernate, MariaDB, Cassandra, gRPC, Guava, Prometheus
- Big Data stack: Kafka, HDFS, AirFlow, Spark, Avro, Hazelcast, Kubernetes, Docker
- Web/UI: Spring MVC, Jetty, Mustache, JavaFX, Jackson
- Testing: Mockito, Truth, JUnit5
- Development life-cycle support: Bitbucket, Bamboo, Confluence, Jira, Sonar Cube, IntelliJ IDEA, your-kit