We are looking for a Middle/Senior Java engineer. As a backend developer, you will be instrumental in managing the order lifecycle, including order capture, validation, routing, execution, option price calculation, and reconciliation. We focus on delivering high-performance, low-latency, and fault-tolerant solutions, with an emphasis on code quality through thorough code reviews and extensive testing.
While our product has a significant existence, we continually address both functional and non-functional requirements and responsibly manage technical debt. Our work environment is agile, primarily utilising Scrum and supported by tools like Atlassian, Slack, Sonar, Docker, and more.
Technical Requirements:
- proficient in Java 11+, with experience in Collections, Streams, Threads, and Concurrency,
- familiar with Spring, AspectJ, and Kotlin,
- skilled in JUnit5 and Mockito for effective testing,
- experienced with Docker, PostgreSQL, Liquibase, Prometheus, ELK.
We expect our Middle/Senior Java Developer to have:
- Passion for Java programming,
- Deep understanding of the Java (J2SE) platform, including threads, collections, streams, memory management, and garbage collection,
- Solid grasp of computer science fundamentals, covering data structures, algorithms, and their complexities,
- Commitment to optimize, document, and maintain code with comprehensive test coverage,
- Excellent collaboration skills, with a willingness to assist colleagues and accept constructive feedback,
- Dedication to meticulous, blame-free code reviews to continually enhance code quality,
- Readiness to engage in performance analysis to address multi-threading issues effectively,
- Ability to work collaboratively with experienced team members in a complex business environment,
- Eagerness to understand detailed business requirements in the finance industry,
- Proficiency in relational database design concepts and SQL expertise.
Must-have skills:
- Familiarity with trading and capital markets,
- Hands-on experience with concurrent programming and understanding thread synchronization approaches,
- Exposure to distributed systems, with an emphasis on performance and reliability,
- Comprehension of asynchronous communication principles,
- Understanding of relational database internals, including indexes and locks,
- Experience with debugging heap and thread dumps,
- Proficiency in code profiling using tools like YourKit, JProfiler, and Visual VM,
- Experience in developing reliable, high-performance distributed systems,
- Solid knowledge of Unix/Linux,
- B2+ English proficiency.
Salary: 2600 - 5800 EUR gross / month.
Please keep in mind that we are flexible and open to discussing a different salary based on your skills and experience.
Care for the employees is one of Devexperts' core values. For the suggested position, we offer a benefits package that will guarantee the comfort of our new teammate.
Flexibility benefits:
- Possibility of hybrid/remote work mode,
- Flexible working hours.
Health and recreation benefits:
- 20 days of paid vacation,
- Fully paid additional wellness days (3 days per working year).
Facility benefits:
- Modern office with new equipment,
- Parking spaces,
- Free drinks and snacks.
Community benefits:
- Teambuilding activities,
- Corporate parties,
- Speakers' club,
- Free admission to corporate external events,
- Possibility of joining conferences and professional fairs,
- Personal branding development support.
Professional training benefits:
- English language courses,
- Unlimited access to self-learning platforms,
- Certification opportunities,
- Mentorship Program.
Social benefits:
- Parental bonus,
- Referral bonus,
- Gifts for employees,
- Gifts for children.