GooseChase is a rapidly growing, fully remote web and mobile platform for creating and facilitating scavenger hunts. Through our website, organizers create custom “hunts” for anything from on-boarding new employees, touring museums, engaging at festivals, educating students and more! Participants can compete as teams or individuals to submit photo/video, text or GPS based missions through our native Android and iOS apps.
The key technologies we use are:
- Android App: Java using Realm for local data storage. Open to moving to Kotlin going forward.
- iOS App: Primarily Objective-C (UI with PureLayout and Layout Anchors), with a bit of Swift and Realm for local data storage. Looking to move towards Swift going forward.
- Front-End: Typescript with React (Redux), HTML, SCSS & Webpack.
- Back-End: Django, REST (Tastypie), Task Queuing (Celery, Redis, RabbitMQ), Postgres, Nginx, Gunicorn.
Because of the flexibility and ease-of-use of our product, we have successfully powered game types ranging from festival-wide competitions, with thousands of dollars in prizes, to K-12 classroom lessons on government types, featuring gummy bears to help demonstrate the differences between a dictatorship and a democracy!
Seeing the different ways the product can be used, and the joy it creates in those who participate, is an incredibly rewarding experience & is something we’d love to share with you as well! You’ll also be having a major impact as our apps have been responsible for ~10M submissions in the last year alone!
As Senior Android Developer, you’ll have the opportunity to create new, exciting features for our game participants. You will work directly with our design and back-end teams to bring feature mock-ups to life, delighting our users and ensuring the delivery of high-quality code that focuses on reliability and performance.
Specific responsibilities include:
- Being familiar and up-to-date with the platform functionality (online game manager & participant mobile apps).
- Working with our customer success & design teams to understand the motivations for a feature & coding it with those objectives and the user’s experience in mind. Put another way, we want you to know why you are doing what you’re doing!
- Staying up to date with the relevant Android guidelines and best practices, as well as relevant SDK changes and common libraries.
- Developing the mobile components for new features that will help game participants play games more effectively while delighting them in new and unexpected ways.
- Participating as a member of the development team – sharing best practices & learnings so the rest of the team can improve.
- Working under limited supervision with significant latitude for the use of initiative and independent judgment.
- At least base level experience with the iOS platform to support other engineers.
The candidate for this position must be:
- At an advanced level in Android application development, with architect-level involvement in at least one large production app that has been published in the Play Store.
- Deeply knowledgeable about Android programming best practices and how to implement them in an existing project.
- Able to take ownership of work, maintaining high standards of performance, reliability & security.
- An excellent communicator, problem solver, and creative thinker.
- Located within, or has regular working hours within the GMT-8 (PST) to GMT+2 (CEST) time zones to ensure sufficient overlap with our distributed product team.
Although not strictly required, it would be a massive plus if the candidate had past experience:
- Working with the platform-specific camera APIs to capture and display photos/videos.
- Implementing automated testing into legacy applications.
- Participating in smaller teams, especially in a remote setting.
- Fully remote work – work whenever/wherever/however you want.
- Competitive compensation & benefits, including stipends for equipment, co-working spaces, etc.
- Join a company that is profitable & growing quickly, but still prioritizes doing the right thing over everything else.
- Significant learning opportunities – whether it’s learning about other parts of the business or taking on more responsibility, we expect everyone on the team to be continually looking to grow.