Backend Mid-level Developer (Java)

Red Black Tree is an entirely Serbian software company with over nine years of experience in the industry. Our offices are located in Belgrade and Čačak, with approximately 40 team members at the moment.

Our focus is on software development, mostly for clients in the USA, Europe and Asia. We’ve been dedicated to quality assurance, meeting deadlines, professionalism and personal progress. We are a team that provides more than it's promised - whenever it’s possible, which is the case most of the time. That’s how we have acquired high-quality collaborations and long-term projects which provide us with stability.

We value a friendly and positive environment - that’s why we put an extra effort into keeping everything exceptional, from relations with co-workers to the office equipment.

Technologies are carefully selected based on the project requirements. Those are mainly complete systems, which include Mobile apps, Web applications, Backend APIs, databases, containerization and Cloud, which will help you acquire a broad and high-quality knowledge base. We’re not afraid to adapt to modern technologies, just like we did with e.g. Angular, React, Vue.js, as well as .NET Core, Elixir, Kotlin, Python and others before they became widely used and popular.

If you love programming and want to excel at it - let us know! We are always on a lookout for talent to join us.

What we provide

  • Dynamic and challenging end-to-end projects.
  • New technologies in action.
  • Experienced seniors to work with.
  • Defined career path and mentorship.
  • Possibility to switch projects and technologies.
  • Developer-centric, macOS-dominated environment.
  • Full-time employment.
  • Hybrid working model.
  • Flexible working hours.
  • Competitive salary.
  • Additional paid vacation days.
  • Private health insurance.
  • Paid sick leave.
  • Additional support for new parents.
  • English language lessons.

Projects

More about the project

We are a team developing a software system for a major German automotive company. This is an Enterprise B2B project that exists for several years and requires scalability and robustness.

As the project requires, the system is based on already approved and stable technologies such as EJB, JSF, PrimeFaces, Oracle databases, Jenkins, Glassfish. The project's further mission is to smartly integrate cutting-edge Cloud technologies like microservices, APIs and new frontend frameworks, while maintaining and constantly improving the existing system's performance and stability.

As a new team member, you will have the opportunity to work with well-experienced colleagues and to contribute to the growth and improvement of both the team and the project itself.

We're looking for developers who can understand and describe technical tradeoffs, think creatively about paying down technical debt, while simultaneously delivering enterprise-level solutions.

What we look for

  • University degree in computer science (or equivalent).
  • At least 4 years of experience in Java Backend development.
  • Experience with Spring and Spring Boot.
  • Experience with relational database systems.
  • Experience with PrimeFaces and JavaServer Pages.
  • Experience with Jakarta Enterprise Beans is a big plus.
  • Experience with Struts is a plus.
  • Experience with Liferay is a plus.
  • Experience with Docker and Kubernetes.
  • Experience with HTML, CSS, JS.
  • Advanced knowledge of code versioning tools (Git).
  • Experience with building REST APIs is a plus.
  • Experience working with Cloud Computing Services (Azure, AWS, or GCP) is a plus.
  • Experience with microservices or service-oriented architecture (SOA) is a plus.
  • Experience with distributed systems is a plus.
  • Experience in working with medium to large teams.
  • Proactivity and self-determination in every aspect of work.
  • Motivation for sharing knowledge with less experienced colleagues.
  • Readiness to learn new skills and grow with the company.

If interested

Usual way: send your CV to jobs@rbt.rs.

If you’re in a rush: call +381606865002 (Marijana Kezunović, HR Assistant).

Selection process

  • The selection process consists of three interviews, conducted in Serbian, two tests and an assignment.
  • The whole process is organized remotely.
  • Each step in the process can lead to disqualification.

Initial Interview (30 minutes)

  • Initial Interview is conducted by the HR and one or more Team or Project Leaders.

Tests (45 minutes)

  • After the interview, the Candidate takes tests on logical reasoning and English language.

Assignment (Candidate proposes an estimate)

  • After the tests are done, the Candidate is provided with an assignment.

Technical Interview (30 minutes)

  • Technical Interview is conducted by one or more Team or Project Leaders and in the presence of HR.
  • The Candidate is questioned about his/her technical knowledge and skills, professional interests, tools and techniques used in previous work, and other relevant experience.
  • The Candidate is provided with relevant information regarding the project and opportunities for learning and professional development.

Final Interview (30 minutes)

  • Final Interview is conducted by the Team or Project Leader and HR.
  • Final Interview topics cover mutual expectations and conditions of employment.