We conceptualize and develop software solutions for Android and iOS. We thoroughly analyze our clients’ issues to provide them with extra value. As an Android developer, you will be working as part of our team to develop new apps as well as to maintain and refine existing client apps.
HOW WE WORK
At Karlmax Berlin, fixed teams work using cross-functional and agile methodologies on client projects from different industries. Even small projects are done as a team and so profit from all developer’s know-how. In everyday work, we use processes following SCRUM and Kanban and thereby continually work on improving them in an iterative fashion. For quality and flexibility, we implement code reviews, continuous integration and automated tests.
These days, new Android projects start in Kotlin. Maintenance of existing projects is in some cases still continued in Java. The last couple of years we shipped our first Flutter apps.
We organize our tasks in Jira, or partly with other systems that our clients use. For source code management, we rely on Git and the workflow Gitflow. Code review is performed before integrating a feature branch. We implement continuous integration with Jenkins and deliver test versions via HockeyApp and the Google Play Alpha channel. For testing we apply an appropriate combination of Unit Tests, Espresso tests and manual tests on various devices in our test device pool.
When developing for Android, we use Retrofit for accessing REST-APIs. Some of our recent projects use ViewModels and LiveData, Room, Data Binding, Koin and Android KTX. Kotlin Coroutines have replaced rxJava for most use cases. Some projects follow the Model-View-Presenter pattern, others Model-View-Viewmodel or Clean Architecture. Sometimes prototypes or projects of a very short lifespan may “Keep it simple”.
More important than perfection in the tools and frameworks mentioned above is your openness and ability to learn. Some apps are developed from scratch and you are involved in defining the architecture from day 1. Other projects have an existing code base and we improve them along with adding new features and updates.
In addition, you will carry new developments and trends into the team. On acquiring a new project, input from our teams is an important part of the estimation process and offer. This is how we incorporate the technical side of a new project from the very beginning. We plan our work for the long term with everyone involved, so that work-life balance is not an empty promise.
OUR EXPECTATIONS FROM YOU
If this position looks good to you, then we would like to get to know you. Write us what we should know about you. How do you like to work? Under which conditions do you work best? We are looking forward to authentic people who are fun to work with in a multidisciplinary team.
We are looking forward to your application. Please use the "Apply-Button" and upload your CV. Also, let us know what you expect from your future employer. Please also include when you can start as well as your salary expectations.