Android Engineer
Read before applying:
We're a young company iterating over our remote culture so for now, we're only working with people in locations where the time zone is: -3 hours > Paris time zone < +3 hours
Ride Team @Heetch
The mission of the Ride team is quite simple: make passengers and drivers meet, and get where they need to be.
“Transportation is serious business” — Jason Statham as Frank Martin
Our team is responsible for providing the best ride experience, by building both the smoothest ordering experience and the platform. We have high standards and high expectations on our output, we ship fast, and we scale our work for all markets. To achieve this, we’re all working together with Product Managers, Mobile & Backend Devs, Designers, Data Analysts & Scientists and Operation teams to successfully target structural next steps, deliver, track and iterate.
What will be your role?
You will improve the ride flow on both the passengers and drivers side by making it more modular to improve its scalability. Due to our expansion in new countries, you will have to build a product that can adapt and deal with both technical and cultural challenges.
Does it sound like you?
- You have more than 5 years of experience in Android development and you still like it.
- Thanks to your advanced knowledge of Rx, you can write complete use cases with flatMaps, concats, zips and are not afraid to jump from one scheduler to another.
- Though you could write a book about Java, you now only want to deal with data/sealed classes, extension functions and know the difference between apply/with/also/run/let.
- You know enough about Fragments, Activities, savedInstanceStates & Parcelables to know what you want to work with on your next project, and what you sincerely want to see burn.
- You're in love with ConstraintLayout, can make art out of Canvas and build custom views when the framework is just not enough.
- You know the difference between unit & automated tests, can write Rx-oriented test cases without wanting to die and know how to get everything running on a CI platform while you sleep.
- You know when to use api or implementation in your gradle files and are not afraid of multi-modules projects.
- If you have contributed to open source projects, it would be a plus.
- If you have experience with background services, unreliable network conditions & location updates, we'd love it.
- If you know what kills the phone's battery and how to help mitigate the issue, we'd enjoy knowing more about it too.
What will you do?
- Work closely with Product, Backend and Data Scientist teams to build highly impactful features
- Optimise performance and help to solve technical and product problems for our large pool of Android users
- Participate in Code Reviews and provide feedback to your co-workers
- Have the freedom to experiment. Intrigued in new tech or library? Go for it! let's see how it improves our app.
- Be a key member of the wider Android team at Heetch and contribute to core architecture and design discussions
What are going to be your main challenges?
Our app is one, of the few mobile apps, running in the foreground for up to seven hours straight on drivers phones. This rather unique use case brings fun challenges with handling the lifecycle of the app.
- Network and GPS management: We need to provide accurate information and price suggestions to our community. This means making sure every driver gets important notifications in any network conditions, providing GPS location as accurate as possible for the pricing and tracking.
- UI & UX: Ride-sharing apps are a really special case in app design. They all revolve around a map and the conventional navigation patterns like list view and navigation controls need heavy tweaking to make for great user experience.
- One way data flow and functional pattern: We are passionate about software architecture. We've built the core of our apps using Rx and want to push this forward in both the data and the UI layers. Ideally, our team will grow big enough to be able to push forward what mobile programming means and we'll contribute back to all those amazing open source projects we learned from.
What's next?
If your application is selected, the process will be composed of 4 steps:
- Non-technical interview with the Engineering Manager of your potential team (1h30)
- Take home assignment (~5 days deadline)
- Interview with your future teammates (1h)
- Day on site (Paris) to meet your future stakeholders
source https://remoteok.io/jobs/73098
Post a Comment