Responsibilities
1. As a Senior Java Developer, you will be responsible for delivering highly scalable and complex microservices in our agile team culture
2. As part of the company`s most innovative tech team and leader of a Java Developer team, you will use innovative technologies and the latest tools and methodologies
3. Within your team and as team leader, you will take ownership of your work and maintain perspective (You build it, you run it)
4. You enjoy exploring different technologies and choosing the best tools for the IT project (languages, libraries, platforms)
Qualifications
5. Extensive experience with Java and Java frameworks, such as Spring Boot
6. Experience with distributed systems using microservices and service-oriented architectures with RESTful APIs
7. Sound knowledge of technologies such as Kafka, Spark, Elastic Search
8. Experience with stream processing frameworks (e.g. Kafka Streams, Spark Streaming, Flink, Storm)
9. Experience with software build tools (ANT, Maven, Gradle, NPM, Rake, Make etc.) and continuous integration tools (Jenkins, CircleCI, TravisCI etc.)
10. Experience with Continuous Delivery and Containerization using tools such as Linux, Docker, Kubernetes, OpenShift deployment or similar, as well as running scalable applications on a PaaS/SaaS cloud, preferably AWS
11. Experience in software development and automation to run big data systems
12. Experience with monitoring tools and logging systems such as NewRelic, ELK, Splunk, Prometheus and Graylag
13. Ability to communicate technical ideas in a business-friendly language
14. Excellent communication skills in English; German would be an asset
15. Knowledge of RDBMS (such as PostgreSQL) and NoSQL data stores, such as Kafka, Redis and Elasticsearch, with a good understanding of the deployment and availability guarantees
16. Knowledge in authentication mechanism with OAuth and knowledge of Vert.x framework would be an asset