Software Development Engineer

Amazon.com, Inc. Palo Alto, CA
The Amazon Devices team designs and engineers high-profile consumer electronics, including the best-selling Kindle family of products. We have also produced groundbreaking devices like Fire tablets, Fire TV, Amazon Dash Buttons, and Amazon Echo.

What will you help us create?

The Role:

We are looking for a talented and passionate Senior Embedded Software Engineer to be part of an exciting team. You will have an enormous opportunity to make a large impact on the design, architecture, and implementation of cutting edge products used every day, by people you know. In this role, you will:

* Be responsible for system architecture and development of new features for embedded systems

* Investigate, prototype and deliver new and innovative system solutions

* Profile, analyze and optimize system level performance

* Design, develop and verify firmware for embedded systems

* Participate in design reviews, API development, and documentation

* Work with new technologies that are vital to product development

* Deliver investigation plans and reports, architectural documents, design specs, software and firmware source code, build scripts

* Perform tasks including debug, bring-up, Beta and production software development

* Successfully collaborate with both software and hardware product teams

The Echo team is hiring software development engineers to deliver new features on this already highly coveted platform, as well as any potential future platforms. In particular, we are looking for people who have:

* Demonstrated excellence in Computer Science fundamentals in object-oriented design, data structures, algorithm design, problem solving, and complexity analysis

* Deep knowledge of and experience with best practices in C, C++

* Board bring up experience

* Power management experience

* CPU and thermal profiling experience

* Good understanding of hardware architecture and schematics

* Experience in coordinate and work with cross-functional teams, such as hardware, diagnostic and 3rd party vendors to ensure smooth operation and to provide deliverables on time

* Experience working with Android system

* Experience writing unit tests to deliver software that scales

* A proven track record of seeking out and resolving system performance issues involving CPU, memory and storage.

If you want to tackle some cutting edge problems on awesome devices, this job is for you