Senior Android Software Engineer (Remote) at Fetch
Candidates must be located in the U.S to work at Fetch Rewards.
What we’re building and why we’re building it.
Fetch is a build-first technology company creating a rewards program to power the world. Over the last 5 years, we’ve grown from 0 to 13M active users and taken over the rewards game in the US with our free app. The foundation has been laid. In the next 5 years we will become a global platform that completely transforms how people connect with brands.
It all comes down to two core beliefs. First, that people deserve to be rewarded when they create value. If a third party directly benefits from an action you take or data you provide, you should be rewarded for it. And not just the “you get to use our product!” cop-out. We’re talkin’ real, explicit value. Fetch points, perhaps.
Second, we also believe brands need a better and more direct connection with what matters most to them: their customers. -- Brands need to understand what people are doing, and have a direct line to be able to do something about it. Not just advertise, but ACT. Sounds nice right?
That’s why we’re building the world’s rewards platform. A closed-loop, standardized rewards layer across all consumer behavior that will lead to happier shoppers and stronger brands.
Fetch Rewards is an equal employment opportunity employer. This position can be based remotely in the United States or hybrid in Birmingham, Boston, Chicago, Madison, New York, and San Francisco.
We are looking for a Senior Android Software Engineer. You will build and maintain a world class mobile application that works directly with our backend services and external partners. Success in this role requires the ability to take on challenging problems and design & develop amazing solutions with a user-centric focus.
In your tool-bag:
- A deep understanding of functional and object-oriented programming
- Ability to plan and implement complex data models
- Ability to optimize poorly performing code, data queries, and network requests
- Flexibility to implement a feature from either a highly specific design OR a bare bones idea that needs thought & iteration
- Understanding of the complexity and failure domains Android applications
- Ability to troubleshoot Android fragmentation and explain both short and long-term solutions with trade-offs
- Effective communication, including the ability to translate and explain technical issues to non-technical team members
You have experience with:
- Relational databases (Rooms, SQLite)
- Version control system (Git)
- Test writing and quality assurance
- Event-driven or reactive programming
- Core Libraries: GSON, Glide, Retrofit
- Structure is: MVVM
- Websocket communication
- Undergraduate or graduate degree in computer science, engineering or mathematics
- Love of Dogs! . . . Or just tolerance. We're a very canine-friendly workplace.