Job Title: Android Developer (Java/Kotlin , MVVM)
Location: Sunnyvale, CA (Remote)
Type: Contract W2
Fully Remote Role
• On the Membership Experience Engineering team at Client , we provide technology to power shopping journeys that help hundreds of millions of customers live better - be it busy families getting groceries easily, new parents welcoming a new baby, organizing a new home or anyone planning a fun party.
• We strive to create the best shopping experience anywhere anytime, meeting customers' evolving needs and expectations.
• Client + is pioneering the way people experience online and in-store shopping.
• We are looking for an experienced engineering leader to help us design and improve customer membership experience and build scalable platforms on mobile devices.
• We are just getting started on membership experience and this is a very critical role to shape the face of Client +.
What You'll Do:
• Troubleshoot business and production issues for mobile devices by reviewing and analyzing information (for example, issue, impact, criticality, possible root cause, etc.); then engaging support teams to assist in the resolution of found issues.
• Upon issue resolution, perform a root cause analysis across multiple mobile devices to prevent future occurrence.
• Develop innovative mobile technology solutions and strategies to support business objectives by collaborating with cross-functional business partners
• developing assessments of key opportunities
• benchmarking and analyzing industry best practices
• forecasting for future technologies
• driving high-priority initiatives
• identifying and implementing solutions
• Communicating with and influencing decision-makers and executives within the organization
• influencing the industry to adopt sustainable solutions and defining software development guidelines, standards, and processes.
• Collaborate with cross-functional teams to determine project requirements; translating requirements into mobile solutions for multiple operating systems (for example, iPhone, Android)
• gathering requested information (for example, design documents, product requirements, wire frames)
• writing and developing code (for example, Java/Kotlin) that can be applied to multiple types of mobile devices
• developing user interface solutions
• conducting testing to ensure solution is functional
• communicating project status and roadblocks to team members and stakeholders
• determining solutions to issues
• enhancing design to prevent reoccurrence of defects across multiple devices
• ensuring on-time delivery; and collaborating with project managers to provide guidance on project implementation plan.
• Remove barriers and obstacles that impact performance
• providing resources
• identifying performance standards
• measuring progress and adjusting performance accordingly
• developing contingency plans and demonstrating adaptability and supporting continuous learning.
• Promote and supports company policies, procedures, mission, values, and standards of ethics and integrity by training and providing direction to others in their use and application
• ensuring compliance with them; and utilizing and supporting the Open Door Policy.
• Ensure business needs are being met by evaluating the ongoing effectiveness of current plans, programs, and initiatives; consulting with business partners, managers, co-workers, or other key stakeholders; soliciting, evaluating, and applying suggestions for improving efficiency and cost- effectiveness; and participating in and supporting community outreach events.
Requirements
• BS/MS degree in Computer Science, Engineering or a related subject
• 5+ years of professional experience in various elements of full stack software development - native mobile, web front end, back end, and hands-on coding experience in the past
• Experience with a consumer facing app and ecommerce or retail shopping
• Hands-on experience building scalable backend systems and platforms
Previous knowledge of :
• Designing and developing advanced applications for the Android platform
• Unit-testing code for robustness, including edge cases, usability, and general reliability
• Collaborate with cross-functional teams to define, design, and ship new features
• Experience with bug fixing and improving application performance
• Work with outside data sources and APIs
• Experience with the agile methodology Scrum
• Continuously Client, evaluate, and implement new technologies to maximize development efficiency
• Proven software development experience and Android skills development
• Experience translating wireframes into pixel-perfect views
• Knowledgeable about animation and screen transitions
• Have published at least one original Android app
• Experience with Android SDK, Services, and various methods of background processing
• Experience working with remote data via REST, JSON, Google Cloud Messaging, and the HTTP protocol
• Experience with Google Play APIs: Maps, Location, and Cloud Messaging
• Experience with third-party libraries and APIs
• Experience with analysis of memory issues such as memory leaks using memory analyzers tools (DDMS, MAT)
• Working knowledge of the general mobile landscape, architectures, trends, and emerging technologies
• Solid understanding of the full mobile development life cycle and writing readable, maintainable, performant object-oriented code
• Experience working with Kotlin, Coroutines, MVVM, MVVM Clean, View Models, Repository Design pattern, and other architectures
• Experience working with an orchestration Layer and GraphQL
• Experience operating in an Agile environment and using tracking tools like Jira
• Experience with React Native a plus
Soft Skills
• Being a team player, critical thinker, and exhibiting problem-solving skills
• Having optimal time-management skills and interpersonal and communication skills
• Eagerness to help shape the direction of Android development at Client
• Dedication to continue to learn, grow, and help Client tackle brand new challenges
• Collaborating with UI and UX Designers, as well as Software Testers, to ensure that each app is presentable and in perfect working order.
• Experience with collaborating with UI and UX Designers, as well as Software Testers, to ensure that Client 's app is presentable and in perfect working order