Description
As a Software Development Engineer in the Amazon Device OS organization, you will own the definition and implementation of components used to build applications on millions of devices. We are building a new development environment for our devices, and, as part of this effort, you will contribute to improve both performance and stability of our common software components for product lines such as Echo and Fire TV.
You will engage with an experienced cross-disciplinary staff to conceive and design innovative customer experiences. You will create new solutions in a responsive, flexible and collaborative peer environment. You will participate in designing, prototyping, and building solutions to hard problems in the Amazon ecosystem for our exciting future in consumer devices.
Job responsibilities:
OS performance/stability optimizations and improvements
Our main focus areas are:
Understanding of complex system. Ability to dive deep, understand how big, complicated software system works, be able to extract this info from the code and limited documentation
Communication. Ability to explain a complicated issue to a fellow engineers as well as execs, clear and concise verbal and written communication.
Key job responsibilities
As a Software Development Engineer, you will:
Understand and refine the scope of incoming projects
Design and implement reliable, components and tools to improve the performance and stability for a variety of Amazon devices (e.g., Amazon Echo, FireTV) at a high-quality bar
Experiment and prototype with novel technologies that improve the customer experience and solve business needs
Work with internal and external engineering teams to understand and respond to their needs
Organize and participate in collaborative Q&A sessions, workshops, presentations to share your technical know-how
Mentor junior team members in career growth
This is a brand new team in Mexico, working on a confidential project. Reach out to learn more details.
A day in the life
Understand the partner teams' needs to improve the existing infrastructure to optimize OS performance
Design and implement tools to analyze performance and stability issues to enable teams to solve them systematically
About the team
The team is in charge of OS performance and stability, looking proactively for new ways of making best in class OS and devices.
We are open to hiring candidates to work out of one of the following locations:
Guadalajara, JAL, MEX | Guadalajara, MEX
Basic Qualifications
3+ years of non-internship professional software development experience
1+ years of non-internship design or architecture (design patterns, reliability and scaling) of new and existing systems experience
Experience working with embedded devices or Linux based systems
2+ years of experience programming with at least one or more language(s) such as C, C++, Python, Bash, Ruby, Rust.
Preferred Qualifications
Bachelor's degree in computer science or equivalent
Experience writing code with C, C++ language
Experience writing code with scripting languages such as Python, Bash.
Experience working in an Agile environment using the Scrum methodology.
Experience driving larger project initiatives by working with multiple stakeholders.
Excellent communication and interpersonal skills