Jobs

Work with us

Knowledge sharing

Amarula Solutions have young team of developers and QA engineers who have been working with Android and Linux Kernel for many years knowing their details and history and have always been happy to share their knowledge with anyone needing their help. We also enforce code review by using Gerrit which guarantees quick feedback on everyone’s code which eventually helps to improve quality of the code written by all team members.

Helping you to grow

At Amarula we support our team members in self-improvement by purchasing technical literature for the office, sending people to conferences or paying for courses that help them to grow.

Environment

In Amarula company we have a young team team of friendly people who are working together towards common goals and are happy to consult any issues with each other. We are open to ideas from little ones related to improving our work environment, through suggesting new work tools, all the way to the complex ideas about new potential products (we are currently designing such new payment product).
In the office we have a coffee machine, we also have different kinds of tea and fresh fruit.
You can also find here foosball table that we use when we want to relax.

Engineering Team

• have 2+ years of professional experience in Java projects
• are a team player
• are familiar with the following languages, frameworks and tools: Java, Gradle, Docker, Kubernetes, Git, Spring framework, SQL, JUnit, Groovy, CI/CD (Jenkins/GitLab/Travis)
• focus on quality and clean code
• have some experience with GCP (preferably) or AWS
• are familiar with the concepts of Big Data and distributed processing (dataflow model)
• are able to communicate day-by-day in english
• nice to have: Experience in contributing to Open Source Software (preferably ASF projects)

Embedded Engineer

• know C and C++
• have good knowledge about Linux and POSIX
• are experienced with Real Time Operating Systems
• know how to use Git
• feel familiar with Bluetooth Low Energy protocol
• communicate in English

Javascript Programmer

Requirements
• Experience with Javascript development (web or mobile applications)
• Willingness to learn developing mobile applications
• Analytical thinking
• English intermediate

Nice to have
Experience in any of the following technologies:
• Android or iOS native applications development
• Web development frameworks like ReactJS, Angular, VueJS
• Mobile cross platform frameworks/libs like React Native, Xamarin
• REST API development
• Linux
• Java or any other programming languages
Job description
• Develop cross platform mobile applications
• Develop web applications/servers
• Improve the coding by review from other experienced developers
• Work with innovative Android devices which are just coming to the market
• Cooperate with developers, business analysts and other team members while solving problems
Other optional possibilities within job
• Learn native Android/iOS programming
• Participate on Android OS embedding/customization
• Participate on Continuous integration (using Jenkins, Gerrit, Git)
• Participate on developing automated tests

Tester

Requirements
• Analytical thinking
• Proactive approach to work
• Basic technical skills as the user of mobile smart phones based on Android/iOS and computers based on Windows/Linux
• English intermediate

Nice to have
• Knowledge of Linux
• Knowledge of SQL
• Experience with programming or scripting
• Knowledge of operating system Android
• Experience with Selenium, Appium or other tools related to testing automation
Job description
• Testing of modified operating system Android, mobile applications, web applications
• Executing UI automated tests
• Cooperation with developers, business analysts and and other team members while solving problems or during testing of new functionalities
• Reporting defects found during testing
• Reviewing and analyzing system specifications
• Optionally learning to write the automation tests

Low-level Developer

Job description
• Development of embedded software (Linux on ARM, RTOS)
• Android low-level modifications (kernel, native frameworks)

Required skills
• Solid understanding of C language
• Familiarity with Linux / Posix programming
• Reasonable understanding of computer hardware
• English language for technical documentation and communication
Useful skills
• Other programming languages, specifically C++, Java
• Linux kernel and embedded programming
• Android native programming
• Working with SELinux or other mandatory access control system
• Understading encryption, digital signatures and certificates

Android Application Developer

Requirements
• Experience with Java development
• Willingness to learn developing Android applications
• Analytical thinking
• English intermediate

Nice to have
• Experience in Android development
• Experience with scripting
• Experience with JNI/C/C++
• Knowledge of operating system Android
• Knowledge of Linux
• Knowledge of Cryptography
• Knowledge of Payment schemes
Job description
• Learn Android application development
• Develop Android applications for payment industry
• Improve the coding by review from other experienced developers
• Work with innovative Android devices which are just coming to the market
• Cooperate with developers, business analysts and other team members while solving problems
Other optional possibilities within job
• Learn Android OS internals
• Participate on Android OS embedding/customization
• Participate on Continuous integration (using Jenkins, Gerrit, Bitbucket….)
• Participate on developing automated tests

Grow Team

• have impeccable English skills, both written and spoken
• have excellent communication and listening skills
• have at least 2 years of professional experience related to business development (digital services preferred)
• have goal orientation and time management skills.
• are willing to travel to the international conferences from time to time
• are interested in new technologies

Recruiting process


We’re always happy to meet talented people
who can join our team!