Senior Android Developer
We are looking for a Senior Android Developer to strengthen our mobile engineering team.
This is a hands-on senior engineering role with a strong technical leadership and ownership component. You will take a leading role in the development and evolution of the Android platform while helping existing developers grow and become increasingly autonomous.
The role goes beyond implementing features. You will help improve how we build, test, and release software, address technical debt and legacy challenges, strengthen engineering practices, and contribute to a culture where teams can deliver frequently and with confidence.
A key objective is to move towards a development model where the main branch is always releasable, changes are integrated continuously, and releasing one version does not block development or delivery of the next.
Key Responsibilities
Take technical ownership of a production Android application and contribute to its long-term evolution.
Make pragmatic architectural decisions and clearly communicate the reasoning and trade-offs behind them.
Identify and assess technical debt, determining what should be fixed immediately, addressed incrementally, or deliberately left unchanged.
Improve existing applications incrementally without relying on large-scale rewrites.
Modernise established Android applications while respecting existing architecture and business constraints.
Diagnose and resolve complex technical issues, particularly in mature applications containing legacy code.
Improve application stability, performance, testability, and maintainability.
Establish and promote effective automated testing practices across unit, integration, and UI testing.
Improve CI/CD pipelines, build processes, and release workflows.
Support trunk-based development with short-lived branches, small pull requests, and frequent integration.
Use feature flags or equivalent techniques to safely integrate incomplete functionality.
Improve release management, versioning, rollback, and hotfix strategies.
Support streamlined and automated Google Play delivery and separate deployment from product release where appropriate.
Conduct constructive code reviews and provide actionable feedback.
Mentor and support existing Android developers through pairing, knowledge sharing, and technical guidance.
Help developers strengthen their debugging, architecture, and design skills.
Challenge existing technical decisions and ways of working constructively when improvements are needed.
Collaborate effectively with iOS developers, backend engineers, product teams, and other stakeholders.
Communicate technical decisions and trade-offs clearly to both technical and non-technical stakeholders.
Contribute to an engineering culture where problems are identified and raised early rather than worked around.
Required Skills & Experience
Several years of professional Android development experience, including substantial senior-level experience.
Proven experience taking technical ownership of a production Android application.
Strong hands-on experience with Kotlin.
Strong experience with Jetpack Compose and traditional Android Views.
Solid experience with Coroutines and Flow.
Strong knowledge of modern Android architecture and design principles.
Experience with dependency injection frameworks and patterns.
Strong understanding of Gradle build configuration and optimisation.
Experience with Android lifecycle and platform APIs.
Strong experience with unit, integration, and UI testing.
Experience with CI/CD for mobile applications, including automated build, test, and quality checks.
Experience with Google Play Console and Android release management.
Experience with crash reporting, debugging, and application performance analysis.
Strong understanding of versioning, release management, rollback, and hotfix strategies.
Experience with trunk-based development or similar short-lived-branch development models.
Experience using small, incremental pull requests and frequent integration.
Experience using feature flags or equivalent approaches for safely integrating incomplete functionality.
Strong problem-solving and debugging skills, particularly in mature applications with legacy code.
Ability to identify and address technical debt pragmatically.
Ability to lead technical improvements without requiring a complete rewrite.
Strong communication, collaboration, and mentoring skills.
Engineering & Development Practices
The role requires experience or strong interest in:
Trunk-based development
Short-lived branches
Small and focused pull requests
Frequent integration
Keeping the main branch continuously releasable
Feature flags and progressive delivery
Automated testing and quality checks
Continuous integration and continuous delivery
Automated or highly streamlined Google Play releases
Separation of deployment from product release
Safe rollback and hotfix strategies
Incremental refactoring and modernisation
Continuous improvement of engineering practices
Soft Skills
The ideal candidate:
Makes pragmatic architectural decisions rather than pursuing theoretical perfection.
Can clearly explain technical decisions and trade-offs.
Is comfortable working with technical debt and legacy systems.
Can challenge existing decisions constructively and respectfully.
Leads through influence rather than formal authority.
Takes ownership without becoming territorial.
Mentors and supports colleagues through collaboration and pairing.
Provides clear, useful, and constructive code-review feedback.
Introduces change without alienating an established team.
Is comfortable working with teams whose engineering practices are still evolving.
Communicates effectively with technical and non-technical stakeholders.
Helps create an environment where problems are raised early and solved collaboratively.
Values incremental improvement over large, risky rewrites.
Nice to Have
Experience with feature-flag platforms and progressive delivery tooling.
Experience with Fastlane or equivalent mobile release automation tools.
Experience with mobile observability, crash reporting, and application performance monitoring.
Experience modularising large Android applications.
Experience with API design and collaboration with backend teams.
Knowledge of security and privacy considerations for consumer applications.
Experience with mobile accessibility.
Experience working with connected devices, energy products, IoT, or other systems involving physical assets.
Experience leading technical improvements without formal personnel responsibility.
Experience modernising established Android applications incrementally, including migration towards Jetpack Compose.
What You Will Bring
You will bring a combination of strong Android engineering expertise, technical ownership, pragmatic decision-making, and a collaborative leadership mindset.
You should be comfortable working hands-on in an established production application, understanding existing technical decisions, identifying where improvements will have the greatest impact, and delivering those improvements incrementally and safely.
The ideal candidate is not only a strong Android developer but also someone who can help the team build better, test better, and release more confidently.
- Location
- Malmö
- Remote status
- Hybrid
About Aurora Engineering AB
Aurora Engineering AB is a Swedish engineering consultancy providing technical expertise and project support within the automotive and industrial sectors. We connect skilled engineers with innovative companies to deliver high-quality solutions in product development, design, testing, and digital engineering.