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 Amazon.com, 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?
As a Dynamic Systems Firmware Engineer, you will be responsible for developing firmware solutions to control electromechanical systems. You will demonstrate strong working knowledge of embedded systems, the desire to learn from new challenges and the problem solving and communication skills to work within a highly interactive and experienced team. Candidates must show a hands-on passion for their work and be able to communicate their ideas and concepts both verbally and visually. Candidates must demonstrate an ability to integrate feedback and to respond quickly to changing contexts and work environments. In this role, you will:
· 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
· Develop tests, perform failure analysis, and solution validation
· Support positive team interactions to accomplish program objectives
· Provide cross-functional program integration support to ensure team success
· Commit to timely delivery of product features
· Manage schedules and milestones
· Apply technical expertise to problem solving throughout product lifecycle
· Mentor junior engineers in good practice
· Master's in Computer Science, Electrical Engineering, Robotics or related field and 5+ years of relevant work experience
· Experience developing embedded firmware and software
· Experience testing and validating embedded firmware and software
· Familiarity with common embedded system interfaces and protocols (I2C, SPI, UART, etc.)
· Experience with version control (git)
· Excellent written and verbal communication; ability to explain complex concepts and designs to colleagues across disciplines
· Proficiency in C/C++
· Proficiency in Python and/or other modern scripting and automation languages
· Motor control experience (pulse width modulation, current sensing, encoders)
· Experience with ROS
· Experience with MATLAB, Simulink
· Experience with hardware lab equipment (power supplies, oscilloscopes, and logic analyzers)
· Experience with rapid iteration prototypes and joint hardware/firmware development
· Factory experience
· Knowledge of engineering best practices and patterns for the full software/hardware development life cycle, including design reviews, coding standards, code reviews, source control management, build processes, testing, and certification
· Ability to take a project from scoping requirements through product launch
· Experience in communicating with customers, technical, business teams and management to collect requirements, describe product features, and technical designs
· Understanding of power electronics and power conversion principles
· 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.
Up to 15 years of experience with professional software development, with focused experience in embedded firmware.
Up to 15 years of experience contributing to the architecture and design of new and current embedded firmware systems.
This position may require international travel up to 10%.