Position: Senior Android Engineer
Company: Blackbird Lab
Category: Android
Experience required: 5y
English level: intermediate

**Position & client**
Our client is a Canadian software company that builds a digital shopping marketplace for shoppers to get local savings and deals. The product is a flyers – digital circular platform that enables users to browse and compare weekly ads and deals from retailers across North America. With Flyers users can search for deals on specific products or browse through full flyers from their favorite stores. The platform offers a range of features, including the ability to clip and save deals, create shopping lists, and set deal alerts for specific products. Our client is an established, profitable company that has been in the business for over 10 years.

Our client’s mobile app is a big project with almost 10 years of development history. The app has a 4.7 rating in the App Store from 400k users. Currently the app's target version is iOS 14 and 80% of the code is written in Swift. 

You’ll become one of the first developers of a new team that will be working on a new mobile app from scratch.

** Stack of the project**
- Kotlin + Java
- JUnit and Espresso 
- GitHub Actions
- MVVM

**Responsibilities**
- Designing scalable mobile software architectures to meet the demands of our millions of weekly active users
- Researching and determining the proper technologies the team should use to solve problems and implement features; working with staff engineers to develop solutions to broader organization-wide design issues; presenting the findings to other engineers
- Identifying and reducing technical debt by contributing solutions and building business value arguments
- Planning and estimating features in the roadmap to determine the next sprint goals
- Writing and designing automated unit tests, and integration tests; developing and executing test strategies for features and projects
- Developing and enhancing continuous integration and continuous delivery pipelines for the team
- Breaking down large features and projects into manageable units of work to distribute to the rest of the team
- Influencing the technical direction of the mobile engineering teams.
- Mentoring Junior and Intermediate engineers; performing code reviews and providing constructive feedback for other team members


**Requirements**
- 5+ years of Android development experience 
- Experienced in Kotlin and Java 
- Demonstrated strong quality mindset with the ability to write JUnit and 
- Espresso tests Experienced in design pattern architecture using frameworks such as MVVM 
- Solid understanding of coroutines and multi-threaded programming
- Bachelor’s degree in Computer Science/Engineering or equivalent


**Will be a plus**
- Experience developing and distributing frameworks/libraries, Jetpack
- Compose, and Dependency Injection such as Dagger/Hilt 
- 5+ years of experience with different methods of data storage

**Team setup & processes**
- It’s going to be a new team within the product

**Interview process**
- HR interview (30 mins)
- Tech interview with a Senior Android Engineer (90 min)
- Interview with Tech PM (60 min)

**Benefits**
We are all for the self-development of each team member. As a part of our team, you’ll be supported in your professional growth, work on Macs, receive certifications, and visit conferences. On top of that, you will enjoy an attractive social package, including

- Сompetitive monthly compensation
- Flexible working schedule
- Working remotely
- 18 paid vacation working days
- Paid sick leaves (with 5 undocumented days per year)
- Health support with medical insurance or sports programs
- English lessons, sports activities, and charity events
- Full support of Private Entrepreneur reporting services (ФОП)