We are looking for Senior Java Developer to work for a European company from the fintech industry specializing in algorithmic trading and cryptocurrencies. You will be working in a small but talented team to evolve and improve our product. 
  
Getting started: ASAP 
  
We offer: 
- attractive salary depending on skills and experience (B2B: PLN 30000 - 40100 net/month) 
 
- bonus paid for work efficiency and commitment 
 
  
Tools used: 
- Collaboration: Teams, Jira, Confluence 
 
- Source repositories: GitHub 
 
- Software development automation: Gradle, Maven, Make 
 
- Databases: MySQL, MongoDB, Redis, in-house time-series database 
 
- Monitoring: Prometheus, Grafana 
 
- Containers: Docker, Kubernetes 
 
- Cloud services: AWS (mostly EKS, ECR, EC2, EFS, RDS but we adapt more and more cloud services to our stack) 
 
  
Organization of work: 
- Agile development: TDD, DevOps, CI/CD 
 
- Good practices: clean code, design patterns 
 
- Quality assurance: code review, pair programming 
 
- Tests: unit / integration / performance / manual 
 
  
Tasks / Responsibilities: 
- Designing large scale and high complexity systems to support our high throughput platform 
 
- Evaluate tools, frameworks, platforms and processes to determine the best fit for our platform 
 
- Adding new and improving existing functionalities in the trading system 
 
- Assure the highest quality of the platform's performance 
 
  
Sample tasks:  
- implementation of stable communication with the exchanges using REST and WebSocket protocols using a publicly available API 
 
- implementation of new algorithms, strategies, calculations and signals used in automated trading 
 
  
Requirements 
- higher education - IT or related 
 
- minimum 4 years of experience in programming in Java 
 
- knowledge of Java11+, Linux, Docker, REST, Spring Boot, JPA/Hibernate, MySQL, JIRA, Maven, GIT, JUnit/Mockito/AssertJ 
 
- experience with Kafka
 
- experience with creating and working with microservices approach (preferably Netflix stack) 
 
- knowledge of algorithmics, data structures, multithreading, 
 
- knowledge of technologies related to the security of computer networks 
 
- experience in creating speed-oriented software with the use of advanced algorithmics and multithreading 
 
- experience in migration a monolith to microservices architecture to the cloud 
 
- knowledge of good principles, i.e., SOLID, DRY, KISS, YAGNI 
 
- experience in creating automatic unit and integration tests 
 
- good communication in English (at least B2 level) 
 
- good interpersonal and communication skills (ability to work in a team) 
 
- "nothing is impossible" approach to problem solving 
 
  
Good to have: 
- knowledge of Websocket, Multithreading, Reactive Programming Kotlin, Kubernetes, AWS (EKS, EC2), CI/CD Pipeline or willing to learn them 
 
- knowledge in the field of finance, trading systems, cryptocurrencies, financial markets 
 
- ability to design, build and maintain applications in accordance with the Agile methodology 
 
  
Benefits: 
- private medical care 
 
- multisport card 
 
- co-financing of trainings and courses 
 
- possibility to work remotely or in coworking space nearby you 
 
- flexible working hours 
 
- integration meetings 
 
- employee recommendation program 
 
- free coffee/tea/fruit in the office 
 
  
Recruitment stages: 
1. Introduction
2. Interview (tech) 
3. Decision + final negotiations 
  
If you are interested, please send your CV in English.