Backend Mid-level Developer (Python)
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 developing a secure, inclusive and flexible online therapy platform. It was built to provide improved access to mental health professionals, through an affordable, simple-to-use video conferencing platform that takes the hassle out of organising a practice with marketing, bookings, reminders, billing and collections taken care of. A hand-picked team of counsellors and psychiatrists offer their services to both the general public and to institutional clients ranging from Universities to businesses (such as AXA, the second largest insurance company in the World) to public sector bodies (such as the NHS, National Health Service).
Our small but powerful team steered full system design and specification, provided consulting, software development, DevOps, and other IT services in the past two years.
We have built the whole system from scratch using Python, Flask, PostgreSQL, Vue.js, Nuxt.js, Docker, Terraform, and AWS Cloud.
As the user base, functionalities, and the expansion plans grow rapidly, the team has to expand too - which is why we would like to hear from you!
What we look for
- University degree in computer science (or equivalent).
- At least 3 years of experience in Python development.
- Experience with relational and NoSQL databases.
- Experience with building REST APIs.
- Experience with Linux/Unix operating systems.
- Advanced knowledge of code versioning tools (Git).
- Experience working with Cloud Computing Services (Azure, AWS, or GCP) is a plus.
- Experience with Flask is a plus.
- Experience with microservices or service-oriented architecture (SOA) is a plus.
- Experience with distributed systems is a plus.
- Experience with Kafka is a plus.
- Experience with Docker 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.
Usual way: send your CV to firstname.lastname@example.org.
If you’re in a rush: call +381606865002 (Marijana Kezunović, HR Assistant).
- 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.