Senior Android Developer Worldwide
We are a diverse team from around the world, working together on a mission to set a new standard of trust online.
Join the Mobile team as a Senior Android Developer and help shape the technology that powers the DuckDuckGo search experience.
As part of our growing team, you will be collaborating with team members at all levels to identify and close major gaps in our products. Examples of projects you might work on include building out and improving mobile content blocking, improving installation conversion, or running experiments to investigate and improve the usability of our mobile apps. You will be directly responsible for mobile application features, taking ownership over product maintenance, and driving improvements.
We are fully-remote and seek to empower our team to be self-directed and self-motivated in their projects. If that seems awesome and you like the idea of our core values -- build trust, question assumptions, and validate direction -- you'll fit right in!
What you will do:
- Lead development of projects by taking vague problems, scoping them into high impact projects, and executing them against a set of success criteria
- Play a key role in improving the software architecture
- Take responsibility for solving product issues – large and small.
- Implement and/or create mobile solutions to improve apps directly.
- Collaborate with peers on product brainstorms, technical design discussions, pair programming sessions and code reviews.
- Write pragmatic, testable code that works consistently across devices and is performant.
What we are looking for:
- Significant Android development experience (5+ years)
- Highly proficient in Kotlin
- Previous engineering experience beyond the usual Android technologies such as Android NDK, C++, backend development or web development
- Expertise working on at least two large applications
- Effective project management skills
- Familiarity with MVC/MVVC concepts and how they apply to mobile applications
- Familiarity with mobile threading and memory management
- Ability to develop and use complicated data structures and algorithms. This includes understanding the fundamentals, as well as navigating and improving existing code.
- Ability to develop effective UX solutions through user feedback loops leveraging both quantitative and qualitative metrics.
- Creative problem-solvers and risk-takers. You like to take initiative in pushing a project forward, but know when to get others involved.
- Strong communication skills. You can validate and communicate your decisions clearly.
Other things to know:
- We are a small, remote team in different time zones and communicate with a variety of tools throughout the day. You should feel comfortable with the intricacies of this type of work situation.
- Sometimes we meet up! You can expect to travel at least 2x a year: once for our all-hands meetup and another for a team retreat (each ~4-5 days)
- We want to have a major impact on raising the standard of trust online. To do this we believe in a focused approach, with company-wide objectives, and with each team member working on a single top priority at a time.
- Our work philosophy is built upon empowered project management. All team members have opportunities to run projects.
- All projects are run transparently, and we encourage everyone to participate in areas of interest throughout the company. Anyone and everyone can (and should) ask questions and offer feedback around the product and internal projects.
- We try to exemplify our values (build trust, question assumptions, and validate direction) in everything we do.
If you think you might thrive in this environment we would love to hear from you. Use the application below to apply!