Senior Android Engineer
Apply on
Title: Senior Android Engineer
Duration: Long term
Location: 100% Remote
Must Have:
Android Design Principles / Interface Guidelines
Automated Device testing
Gradle
Hands on Engineering
Jetpack Compose
Kotlin
JOB DESCRIPTION
Profile:
- Hands on Android Architect with solid understanding of developing in Android Architecture and the varying layers: Data, View, Presentation, Repository, Domain, etc.
- Expertise in developing in Kotlin with understanding of reactive and functional programming.
- Advanced experience using Compose (the view layer in which most would have used XML before advancing to this technology).
About the Opportunity
As a Senior Android Engineer, you are a highly skilled mobile developer and innovator. You possess extensive knowledge and expertise in building mobile applications using Kotlin and developing cloud-based technology & solutions. You relish the opportunity to bring your ideas and your love of coding to support, enhance and define the future of our Android native mobile applications used by millions of students. You have an innate ability to work seamlessly with cross-functional teams while developing applications that integrate and communicate effectively with server-side APIs and enterprise backend systems. You are collaborative and intentional about aligning Android development with broader engineering projects, ensuring a cohesive and scalable product architecture. You build strong relationships with Product Owners as a reliable technical partner in prioritizing the backlog, identifying problems, determining options to solve the problem, and communicating issues that have a broader scope.
Technology
Kotlin
4
Jetpack Compose
4
Gradle
3
Android Design Principles / Interface Guidelines
4
AWS - Dynamo
2
AWS - Lambda
2
AWS - S3
2
AWS - SNS/SQS
2
Automated Device testing
4
In this role, you will: Design & Implementation (75%)
- Design and build high-quality native mobile applications for the Android platform.
- Ensure the performance, quality, and responsiveness of applications
Collaborate with Product Owners and across engineering teams to define, design, and deploy new features. - Connect the application to back-end tools including the cloud, APIs, and push notifications
- Assist with maintaining high engineering standards in code quality, organization, and automation.
- Participate in testing to ensure proper application functionality.
- Implement encryption techniques to protect content.
Team Operations & Success (25%)
- Participate in Agile SCRUM ceremonies (Sprint Planning, Grooming, Daily standups, Demos, etc.) and contribute to team deliverables.
- Participate in peer reviews of software engineering artifacts.
- Assist in the identification and resolution of production issues.
- Ensure the team is adhering to development standards and security policies and procedures.
- Operate the mobile app, monitor its operations and address operational issues at a regular cadence.
About You
You have:
- Ideally 10+ years of software development experience with a significant focus on Android native mobile applications.
- Strong proficiency Kotlin and Jetpack Compose.
- Demonstrated experience designing, developing, deploying and releasing Android applications in the Google Play store.
- Experience with Android frameworks, and Apollo Kotlin / GraphQL is preferable.
Understanding of fundamental Android APIs, frameworks, capabilities, UI styles, and paradigms. - Understanding of UI design and a user-oriented focus.
- Knowledge of performance limits and characteristics.
- Working knowledge of the general mobile landscape, architectures, trends, and emerging technologies
- Proven ability to work in concert with cross-functional engineering teams and business partners.
- Bachelor's degree in computer science or related discipline.
- Authorization to work in the U.S.
Additional nice-to-haves:
- Capability developing applications for multiple target platforms from a single codebase.
- Hands-on experience with server-side APIs and enterprise backend systems & JSON/XML.
- Skill in API architecture in collaboration with backend teams.
- Experience with backend for front-end server-side systems to optimize client-side experiences.
- Experience and a willingness to work with the Agile software development methodology in a fast-paced, iterative, and multi-functional setting with contributors from various backgrounds, talents, and locations.
In this role, you will:
- Design and build applications for the native Android platform
- Embed webviews within the native app
- Ensure the performance, quality, and responsiveness of applications
- Collaborate across engineering teams to define, design, and deploy new features
- Connect the application to back-end tools like the cloud, APIs, and push notifications
- Help maintain code quality, organization, and automatization
- Run tests to ensure the app's functionality is proper
- Accountable for assisting in the maintenance of code quality, and automation
- Use encryption techniques to protect content
You Have:
- Bachelor's degree in computer science, Engineering, or related work experience.
- Minimum of 10+ years of professional software development.
- Minimum 8+ years of Native Android development, including 2+ years in Kotlin and Jetpack.
- Compose and experience with Gradle is highly preferable.
- Exhibit a portfolio of Android apps designed and developed.
- Experience with Android frameworks, especially Apollo Kotlin / GraphQL is preferable
- Extensive experience developing end-to-end Android mobile apps, including design, development, and deployment to app marketplaces with a good understanding of performance limits.
- You are authorized to work in the United States of America.
Differentiators
- Understanding of UI design and a user-oriented focus.
- Understanding of fundamental Android APIs, frameworks, capabilities, UI styles, and paradigms.
- Understanding of Google's Material Design and user interface guidelines.
- Hands-on experience with RESTful / GraphQL APIs to connect to back-end services and JSON/XML.
- Working knowledge of the general mobile landscape, architectures, trends, and emerging technologies.
- Experience and a willingness to work with the Agile software development methodology in a fast-paced, iterative, and multi-functional setting with contributors from various backgrounds, talents, and locations.