We’re looking for Java developer to fill the opening in our distributed backend-team. You will work on the backend of smart trading assistant, that can communicate with users both via text and voice through several channels. Currently we have already supported Google Assistant, Facebook, Telegram, Viber and Yandex.Alice. We are constantly working on new commands, that we want our assistant to learn, but not forgetting to improve the UX.
We’ve incorporated true CI/CD (in TeamCity): our PRs are merged directly to master branch that’s immediately is deployed to production. We deploy scrum methodology with bi-weekly sprints, we use git as our VCS, Jira for tracking tasks and bitbucket for code review.
Technology stack includes java8 (going to migrate to Open JDK 11 by the end of the year), Kotlin, SpringBoot, REST, Jackson, swagger, MongoDB, NLU. Soon we plan to adopt docker-containers and add ELK (elastic, logstash, kibana) for better monitoring.
- developing new commands for assistant and improving user experience;
- developing new features for managers’ app;
- writing unit and integration tests;
- maintaining, documenting and improving existing code base;
- participation in team activities (we regularly conduct company-wide demos).
- knowledge of algorithms and data structures;
- great knowledge of Core Java (experience in concurrency as well as knowledge and desire sometimes to work on frontend tasks is great!);
- desire to write, optimize, document and maintain code and thoroughly cover it with tests;
- general resposnisibility 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.