Backend Mid-level Engineer

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.


More about the project

We are currently in the process of forming a new team for the needs of a client from the automotive industry. Our client is a leader in solutions for digital chargers, uses a mix of already proven and cutting-edge technologies (Java, Kotlin, Spring Boot, Quarkus, Kafka, Docker, Kubernetes, Azure, etc.) along with the latest trends in software architecture (microservice, serverless, etc.) to build a robust system that will be used by a large number of users globally.

What you are expected to do

  • Working on a project that will be used by a large number of users, where high performance and scalability are standards that are constantly in mind.
  • Working on various backend cutting-edge technologies.
  • Have a big picture of the project architecture.
  • Analyze the system and suggest improvements on the architecture level.
  • To leave an impact on the project itself.
  • Participate on building a new team from the beginning.

What we look for

  • Backend engineer who is both enthusiastic, and willing to deal with various cutting-edge technologies.
  • University degree in computer science (or equivalent).
  • One to three years of experience in any of the following languages: Java, Kotlin, C#, Python, or similar.
  • One to three years of experience in any of the following frameworks: Spring, Quarkus, .NET Core, Flask, or similar.
  • Experience in relational database systems.
  • Experience in Docker and Kubernetes.
  • Experience in Kafka is a plus.
  • Experience working with Cloud platforms and services (Azure, AWS, or GCP) is a plus.
  • Experience in microservices or service-oriented architecture (SOA) is a plus.
  • Experience in distributed systems is a plus.

If interested

Usual way: send your CV to

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.