Software Development Engineer

2 months agoSunnyvale, CA


Amazon Lab126 is an inventive research and development company that designs and engineers high-profile consumer electronics. Lab126 began in 2004 as a subsidiary of, Inc., originally creating the best-selling Kindle family of products. Since then, we have produced groundbreaking devices like Fire tablets, Fire TV, and Amazon Echo. What will you help us create?

The Role:
We are a smart team of doers that work passionately to apply cutting edge advances in software to solve real-world challenges that will transform our customers' experiences in ways we can't even imagine yet. As a Software Development Engineer, you will be working with a unique and gifted team developing exciting products for consumers and collaborate with cross-functional engineering teams.

We are looking for a talented and passionate Software Engineer to be part of an exciting team building device software. 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
• 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
- Build expertise in one or more core wireless technologies- WiFi, Bluetooth
• Perform tasks including debug, bring-up, Beta and production software development
• Successfully collaborate with both software and hardware product teams


• 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.
• Bachelor's degree in Electrical Engineering, Computer Science or related field
• 3+ years of experience as a embedded engineer
• Experience in one or more of these areas: cameras, sensors and associated algorithm development
• Experience in embedded software design, development and debugging preferably on ARM based platforms
• Experience in coding in C/C++
• Experience with RTOS and embedded Linux development
• Experience in Computer Science fundamentals: object-oriented design, data structures, algorithm design, problem solving, and complexity analysis
• Board level experience


- Strong debugging/trouble-shooting skills of embedded systems
- Experience with some wireless technology- WiFi, Bluetooth
• Experience with real time debugging tools (software and hardware)
• Experience with ARM based SOC architecture
• Excellent judgment, organizational, and problem solving skills
• Can mentor other software developers to maintain architectural vision and software quality
• Comfortable taking initiative and working across teams
• Excellence in technical communication with peers, partners, and non-technical co-workers

Lab126 is part of the, Inc. group of companies and is an Equal Opportunity-Affirmative Action Employer-Minority/Female/Disability/Veteran/Gender Identity/Sexual Orientation