Permutive is looking for an Android Software Engineer to help us change the way organisations process user data on mobile.
The mobile team at Permutive bring our edge computing capabilities to native Android and iOS apps, providing a privacy-compliant approach to analytics, personalisation and modeling for some of the largest publishers in the world.
Our SDKs are responsible for tracking billions of events every day, syncing with our cloud infrastructure, and reacting to real-time events in-app. Our SDKs are highly complex and present many interesting engineering challenges: they involve sequencing of asynchronous code, careful state management and run at scale on millions of devices every day. This presents a number of interesting engineering challenges, and for this reason we believe a sincere interest in the low-level aspects of Android development is essential for this role.
We currently have mobile SDKs for Android (Kotlin) and iOS (Swift) which are used by our customers in their mobile applications.
We are looking for an engineer to work on our Android SDK alongside our Android lead, within our mobile SDK team. You’ll help maintain and deliver on the roadmap, improving existing features and planning new ones from inception to deployment. We’re particularly interested in engineers who have experience developing SDKs for Android, or have felt the pain of deploying analytics or personalization to their apps.
On a day-to-day basis you will:
- Plan, maintain and execute the roadmap for our Android SDKs
- Find ways to make our SDKs more privacy-compliant, more performant, and reduce impact on user experience
- Work closely with customers to help them integrate our SDKs and gather feedback
- Help develop the automated testing framework for our native SDKs
- Put in place processes for building integrations with our partners
- Contribute to product development and strategy, working closely with frontend/backend engineers
- Explore future use cases and ideas for Permutive on mobile
The wider context
Permutive is a B2B SaaS company building the data platform and tools for a world with a trillion edge devices. We have product–market fit and customers that love us, and we’re 90+ people and growing rapidly in Europe and the US. We have received funding from some of the world’s best investors, including Y Combinator.
We’re 30 engineers working to build an outstanding engineering culture so that everyone who joins has the opportunity and the support to do the best work of their life. Small, autonomous teams are important to us, and we want to empower everyone to make—and be accountable for—decisions through ownership.
Everything we build has to scale: our platform handles more requests each day than there are new tweets and Google searches, and each month we see more than a billion users. We think applying functional programming techniques like compositionality and type-safety is the best way to build the type of massive distributed system our platform comprises, allowing us to move fast without sacrificing quality.
The ideal person will have
- The ability to work independently when given a task and demonstrate taking initiative to collaborate effectively and resourcefully.
- Experience with Kotlin
- Have a good understanding of complexity, data structures and performance
- Experience working with REST/GraphQL APIs
We'd be particularly excited if you have one or more of the below
- Experience with RxJava
- Experience building developer SDKs
- Experience or interest in functional programming
- Some experience working with JNI/C++ libraries
- Commercial awareness
- Experience prioritising incidents with an Android backlog and coordinating closely with iOS engineers to ensure that there is consistency across features and releases.
We take a structured, objective approach to salary-setting, which is based on market information, our compensation strategy, and your experience and capability as assessed through our interview process.
For a typical candidate with solid Kotlin knowledge who takes great initiative to learn and work independently with most of our listed requirements we would likely pay £75,000 + options.
For a candidate who has solid Android experience identifying, prioritising, delivering, and communicating appropriate team and technical needs and meets several of our bonus criteria we’d pay £90,000 + options.
- Stock options (you'll own a piece of the pie)
- Parental Leave Policy entitling new parents up to 26 weeks of leave on full pay
- Everyone has an annual learning budget of £2,400 which we encourage you to use to level up
- Time to rest and relax with unlimited paid leave (minimum expectation of 25 days annually)
- Extensive training and development opportunities
- Automatic enrolment into our pension scheme from day one
- Free access to Spill, our mental health partners