Software Engineer II- Android Development

Domino's

Not Interested
Bookmark
Report This Job

profile Job Location:

Ann Arbor, MI - USA

profile Monthly Salary: Not Disclosed
Posted on: Yesterday
Vacancies: 1 Vacancy

Job Summary

A Software Engineer II- Android Developer is proficient with the most-often used features of the programming language its core library commonly used 3rd party libraries and commonly used code management and build tooling.

Initially a Software Engineer II is expected to be able to develop a medium set of defined inter-related modules articulate why the code and application they are working on are designed the way they are and be able to provide some instructive feedback to newer developers through code reviews and in-person Q&A.  As they progress they should be able to implement smaller subsystems independently begin to design small portions of the systems and begin to understand the design principles and practices that cut across all the applications.

The goals of a Software Engineer II-Android Developer are:

  • Develop an understanding of why some libraries frameworks and tooling are designed the way they are: what tradeoffs were made why might the developer have done that  Through this work develop an understanding of the practical use of design patterns.
  • Begin to understand some of the externalities associated with running an application: performance security operations monitoring etc.
  • Be able to troubleshoot application infrastructure and environment issues.

Or more succinctly the Software Engineer II- Android Developer is gaining the ability to determine why things are done in a particular way and apply that knowledge to new situations.

 

Development - 90%

  • Produces estimates for their assigned tasks given well defined business requirements
  • Produces quality code that meets internal and industry standards
  • Promotes reusability within the application they are developing
  • Writes performant code according to industry standards and project/organizational KPIs
  • Understands business concepts in their area of focus
  • Writes clear documentation to ensure code is understandable to provide wider focus and understanding into design decisions
  • Provides input into designs for assigned tasks
  • Translates designs into code for their assigned tasks
  • Understands build/deployment processes and can support moving their code and any other changes (ex: database) through these phases.
  • Creates build/deployment artifacts as needed
  • Supports production systems through troubleshooting/triaging issues and providing on-call support where needed

 

 

Mentoring - 10%

  • Participates in PR reviews with others on their team
  • Provides feedback by answering questions from newer developers

Qualifications :

  • 5 years overall development experience using an object oriented language  
  • Proficient in Kotlin
  • Demonstrable proficiency with Android Studio  
  • Demonstrable experience with Java and Jetpack Compose
  • Demonstrable experience consuming Restful JSON web services    
  • Demonstrable experience with Agile development and unit testing.  
  • Demonstrable experience with push notifications location services.  
  •  Experience with various architecture patterns like MVC MVVM VIPER or similar  
  •   Experience with accessibility frameworks  
  • Experience with analytics frameworks such as Firebase Adobe or similar  
  • Experience builds tools like Gradle and Fastlane  
  •  Knowledge of submitting and publishing applications through app store

General Qualifications 

  • Basic understanding of design methods/patterns such as DRY SOLID ReST
  • Excellent team player with good communication skills with both non-technical & technical co-workers
  • Highly motivated and driven by a desire to solve difficult problems and learn new technology
  • Proficient in writing quality unit tests
  • Proficient with build and debug tools
  • Experience with profiling tools
  • Experience with continuous integration systems like Jenkins/GitHub and version control systems like Git
  • Experience with development of internationalized software (multi-lingual multi-currency geographic and locale awareness) 
  • Experience with agile practices and tools preferred (Jira or similar)
  • Experience with database concepts (queries data models)
  • Understanding of development in a distributed system is preferred
  • Understanding of basic networking concepts like http protocol and its usage is preferred

 


Additional Information :

Benefits:
    Paid Holidays and Vacation 
    Medical Dental & Vision benefits that start on the first day of employment
    No-cost mental health support for employee and dependents
    Childcare tuition discounts
    No-cost fitness nutrition and wellness programs 
    Fertility benefits
    Adoption assistance
    401k matching contributions 
    15% off the purchase price of stock 
    Company bonus 
 


 


Remote Work :

No


Employment Type :

Full-time

A Software Engineer II- Android Developer is proficient with the most-often used features of the programming language its core library commonly used 3rd party libraries and commonly used code management and build tooling.Initially a Software Engineer II is expected to be able to develop a medium set...
View more view more

Key Skills

  • Account Payable
  • Apache Commons
  • Community Support
  • Corporate Risk Management
  • Garment
  • Java

About Company

Company Logo

What’s behind one of the world’s top public restaurant brands? Fun and innovative franchise and corporate team members who are driven to win. Inspired to make each day better than the last, people may join for different reasons but what motivates them to stay are the passionate and ta ... View more

View Profile View Profile