Software Development Engineer - Alexa AI - Cambridge

Job ID: 916238 | Amazon.com Services, Inc.

DESCRIPTION

Alexa AI, the speech processing and personal assistant technology behind Amazon Echo, is seeking a Software Development Engineer based out of Amazon’s state-of-the-art Kendall Square/Cambridge, Massachusetts Development Center. At Alexa's Machine Learning Data Platform (MLDP), we build the data services that enable the fast, secure, and massive scale ML that delivers delightful Alexa interactions to users.

The Data Dive team is responsible for enabling data discovery, insights, visualizations, and exploration over one of Amazon’s largest data lakes. The team is building search APIs to help machine learning modeling teams find and explore Alexa data from the data lake and ML dataset catalogs. As the data lake grows exponentially, unique challenges include enabling fast search, inferring relationships within data, and ultimately recommending data to be used in model training, while seamlessly integrating with dataset creation frameworks and rich visualization tools for exploration.

In the Machine Learning Data Platform organization, you will work in a highly collaborative and supportive environment across all stages of an agile software development lifecycle, including architecture design, development, documentation, testing, and operations. You will build ML services using AWS at huge scale found nowhere else. Your efforts will support the successful and well-loved Alexa powered products. Our combination of challenging technical problems, critical services, and a quickly growing organization will provide you with unique opportunities for career growth.

What you'll be doing:
· Solve distributed systems problems at Alexa scale.
· Design, implement, and operate large scale 24x7 services using Java, Python, and AWS services such as EC2, S3, Kinesis, Lambda, DynamoDB, and many more.
· Collaborate with AWS solutions architects and other software engineers. Our team is the largest customer of several AWS offerings in the world, and we are constantly testing the limits of those offerings.
· Provide technical guidance on software design, architecture, patterns and practices.
· Help your team self-organize and create software development processes and practices that will work best for you and your teammates.
· Build relationships with your customers, partner teams, and the engineers on your team.
Your background and who you are:
· You have experience reliably delivering high-quality, distributed, testable, and scalable software. You are driven by delivering value to your customer.
· You love to work with teams that are always raising the bar. You believe that a team is strongest when it is diverse and includes multiple perspectives.
· You enjoy the challenges of highly technical problems that you define and solve in real time.
· You believe that there are multiple ways to solve a problem, each with different trade-offs. You don't typically think in terms of the "right" or "wrong" way to do something, but rather the most effective path given the current constraints.
· You are excited by the technical challenges of large scale service development from architectural design, to implementation, to operations.
· You put yourself into your customer’s shoes and immerse yourself in the customer experience to understand how to serve them better.
· You've made mistakes in the past, have learned a lot from them, and apply these learnings regularly.
· You want to have an impact on a hugely successful and growing product that improves people’s lives.
Amazon is an Equal Opportunity Employer – Minority / Women / Disability / Veteran / Gender Identity / Sexual Orientation / Age

BASIC QUALIFICATIONS

· 2+ years of non-internship professional software development experience
· 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.

PREFERRED QUALIFICATIONS

· Experience developing cloud and distributed software services and an understanding of design for security, availability, and performance.
· Development experience defining, developing, and maintaining REST based interfaces.
· Sharp analytical abilities and proven design skills.
· Strong sense of ownership, urgency, and drive.
· Demonstrated leadership abilities in an engineering environment in driving operational excellence and best practices.
· Proven results and a history of project delivery.