Mobile Mid-level Developer (iOS)
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 a team of a dozen people, developing a complete software system for a US non-profit, iMentor. Because we know that while talent is equally distributed, opportunities are not, RBT partners with iMentor for the last 4 years in their fight to give every young person a fair chance to graduate college by matching every student with a committed college-educated mentor. Together, we help students in over 50 high schools and 14 cities across the US to fulfill their potential.
The Platform is used by mentees and mentors to communicate, work together on lessons that prepare them for college, and let iMentor's program managers to supervise thousands of pairs. Our team focuses on design, development, and maintenance of the iMentor platform.
We have built a cloud based SaaS from scratch, with a backend written in Python and Flask using Docker, that queries PostgreSQL, Redis, and MongoDB, and presents using Angular, Swift, and Kotlin.
We're looking for developers who can understand and describe technical tradeoffs, think creatively about paying down technical debt while simultaneously delivering beautiful solutions, and want to change the world for young people.
What we look for
- University degree in computer science (or equivalent).
- At least 3 years of experience in developing native iOS apps.
- Advanced Experience with Swift.
- Ability to deal with different OS versions and screen sizes.
- Experience with consuming REST APIs.
- Advanced knowledge of code versioning tools (Git).
- Good knowledge of software design patterns and ability to apply them into real projects.
- Understanding of Apple iOS design principles and interface guidelines.
- Translate designs and wireframes into high quality code.
- Experience with offline storage, threading, and performance.
- Experience with relational and NoSQL databases.
- Can work independently and have a sense of ownership for your own work.
- 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.