Description
As a Software Development Engineer, you will engage with an experienced cross-disciplinary team to conceive, design and implement innovative consumer products. Your ownership can span across device framework, network stack, OTA, setup, controllers, drivers, and low-level wireless controllers. You will be given opportunities to work across multiple Echo devices.
You are expected to have strong working knowledge of Linux and RTOS. You will work closely with engineering leaders from cross-functional teams, technical managers, hardware, operations, application, platform, and quality assurance teams. You must be responsive, flexible, and able to succeed within an open and collaborative peer environment.
Key responsibilities include:
- Contributing to the architecture and design of new and current systems
- Experience in embedded development in C/C++
- Implementing the right metrics, debug tools, and integrating with backend solutions to continuously measure and improve on our solutions
- Development experience on Linux and RTOS platforms
- Knowledge of professional software engineering practices and best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
- Working with cross-functional teams to implement technical solutions for desired features and addressing customer issues
- Improving and tailoring existing drivers, stack, memory footprint, and application code to our needs
- Working with the hardware team to ensure correct exercising of hardware and software architecture
About the team: The Amazon Devices team designs and engineers high-profile consumer electronics, including the best-selling Kindle family of products. We have also produced devices like Fire tablets, Fire TV, Amazon Dash Buttons, and Amazon Echo Family of devices. We are the team that brought you the Echo Show and Echo Spot, touch-screen enabled Alexa devices that support video calling, music, weather, and more
Basic qualifications include:
- 3+ years of embedded firmware development experience
- Experience in computer science fundamentals (object-oriented design, data structures, algorithm design, problem-solving, and complexity analysis)
- 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 with RTOS and embedded Linux development
- Board-level experience
Preferred qualifications include:
- Experience in embedded wireless systems or experience in computer architecture
- Performed low-level board bring-up or developed HAL code or BSPs for custom hardware
- Deep hands-on experience in Linux/RTOS framework/drivers and Wi-Fi & Bluetooth stacks