Position: Senior Android Engineer
Company: Uproad
Experience required: 3y
English level: intermediate

Senior Android Software Engineer

About this job
Job type: Full-time
Experience level: Mid-Level, Senior
Role: Mobile Developer
Industry: Cars, Transportation

Technologies
Android, Kotlin

Job description

Company
Uproad is a start-up consumer division within Kapsch Group, a well-established global transportation systems company. Our company is committed to creating smart mobility solutions that help reduce pollution and traffic making road travel safer, more reliable, efficient, and comfortable for everyone.

Engineering Team
Ukrainian site is based on Attractor.ai company host. There will be 3 Android engineers onsite, with 10+ engineering people overall on this branch.

Requirements
* You have more than 4 years of experience in Android development and you still like it.
* 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 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 know what kills the phone's battery and how to help mitigate the issue, we'd enjoy knowing more about it too.

Responsibilities
* Work closely with Designer, Product Owner, Backend and Data Analysts to build highly impactful features
* Optimise performance and help solve technical and product problems
* Participate in Code Reviews and provide feedback to your colleagues
* Have the freedom to experiment. Intrigued in new tech or library? Go for it! let's see how it improves our app
* Contribute to core architecture and design discussions

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 Flow 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: 
0. Schedule interviews chat/call
1. Tech Interview (1h)
2. Interview with your future Engineering Manager (1h) 
3. Feedback and contract details