Software Development Engineer
- Santa Cruz, CA
With Alexa devices proliferating across homes, offices, cars and mobile, Alexa is going to play a significant role in helping customers capture their needs in the moment. The Alexa Shopping List team is enabling this vision by becoming the preferred way to capture and manage customers' grocery needs. By combining the ease of talking to Alexa with social shopping through sophisticated AI to automatically build your list and find you the best deals, we will transform how customers shop in stores and online. We will help customers anticipate and keep track of what they need, help them save time and get the best value while shopping. We will ensure they always get everything on their shopping list without forgetting anything.
What you will do: You will have the opportunity to contribute to and develop deep expertise in the areas of distributed systems, conversational technologies, front-end app development, data storage and data pipelines. You'll have the freedom (and encouragement) to experiment, improve, invent, and innovate on behalf of our customers. You will have an impact on Amazon's Alexa experiences and the way shopping is done in the area of virtual assistants, chatbots and IoT. And finally you will have the satisfaction of being able to look back and say you were a key contributor to something special from its earliest stages. You will be working closely with multiple product managers and engineers from partner teams in Amazon Retail, Alexa, Speech Recognition and a Research Sciences team.
What we are looking for a talented and experienced engineer to design and develop the voice and visual experiences and the distributed systems that bring this vision together. We will welcome full-stack experience that spans multiple front-end and backend technologies.
• Programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
• 1+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems.
• 2+ years of non-internship professional software development experience
• Bachelor's Degree in Computer Science or related field.
• Equivalent experience to a Bachelor's degree based on 3 years of work experience for every 1 year of education.
• 3+ years professional experience in software development.
• Computer Science fundamentals in object-oriented design.
• Computer Science fundamentals in data structures.
• Computer Science fundamentals in algorithm design, problem solving, and complexity analysis.
• Proficiency in declarative/reactive UI paradigms or frameworks such as React (Web), React Native, SwiftUI etc.
• For Android: Expert knowledge of Java, JDK and Android Developers Kit. Experience with Android Architecture, performance optimization.
For iOS: Expert knowledge of Objective-C and/or Swift. Experience with Xcode and other associated tools.
• Experience building complex software systems that have been successfully delivered to customers.
• Experience in any one or more of the following areas: distributed systems, app development, full-stack development.
• Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
• Ability to take a project from scoping requirements through actual launch of the project.
• Experience in communicating with users, other technical teams, and management to collect requirements, describe software product features, and technical designs.
Back to top