Junior/Middle Java Developer (backend and microservices)

Junior/Middle Java Developer (backend and microservices)

Vacancies in our offices:

We’re looking for java backend developer to fill the opening in our distributed team. You will work on the backend of web-based trading application for a large American broker. We’re developing a low-latency data gateway that connects fancy JavaScript / TypeScript app communicating with us over WebSockets and Mighty Core Backend that speaks only RMI and high-efficient binary messaging .
Our nearest goal is to scale up to support the load of more than 100000 simultaneously connected users.


We’re running agile process, namely Kanban, on a weekly release cadence in fast-paced environment, so our product changes fast, just like a startup! We use Jira for task management, Bitbucket + Git as VCS, TeamCity for CI and automated deployments, Splunk for monitoring. We are coding in java 8 (switching to java 11 soon) and use Spring Boot as core framework, Jackson for JSON processing, a bit of Thymeleaf for templating, Junit5 + AssertJ + Mockito for tests.

Responsibilities:

  • developing new features, mainly new WebSocket services;
  • ¬†researching and trying out new frameworks, integrations;
  • ¬†improving existing components to provide better performance and reliability;
  • maintaining, documenting and improving existing code base;
  • writing unit and integration tests;
  • participation in team activities along with communication with client.

Required skills:

  • knowledge of algorithms and data structures;
  • solid knowledge of Core Java: Maps and Collections, Exceptions, Streams, lambda-functions, etc.;
  • desire to write, optimize, document and maintain code and thoroughly cover it with tests;
  • willingness and energy to take your ideas all the way from proof of concept to production-proof code;
  • general responsibility and result-oriented mindset;
  • desire to achieve goals as a team, willingness to help colleagues and ability to give/take criticism;
  • English language B1 and higher to be able to communicate with the team and client.

Nice to have:

  • Experience in concurrent programming: Queues, Threads, Executors, etc.;
  • Understanding of distributed computing;
  • Experience with asynchronous communications;
  • Fundamentals of Linux knowledge;
  • Certain interest in DevOps culture.

Job application

Upload your resume (pdf/doc/docx)