DESCRIPTION
This Principal engineer role is focused on improving Appstore customer’s experience. You need to work on a wide range of technologies and systems which are on device and on the cloud. You would be looking at scaling these systems to support the fast growth, innovating, simplifying and removing bottlenecks, improving reliability and robustness, re-architecting and building new systems to reduce operational burden and increase feature velocity. Our ideal candidate will have a deep well-rounded technical background in current software disciplines, mastery of software fundamentals, and be willing to effectively challenge technical system designs and drive engineering decisions to drive the right developer and customer experience, and an eagerness to learn new and evolving technologies.
Location for this role is flexible but preferable to be in Chennai and
Key job responsibilities
You will be responsible for the (re-)architecture, design, and delivery of client software, distributed services, influencing senior leadership on the right technical direction, making key technology decision, coaching and developing engineers, and improving the overall maintainability of these systems. You will need to drive innovations and think big to bring in step function changes from the current status quo.
A day in the life
You will need to engage with senior engineers to review key designs, architecture.
You will review key customer and operational metrics, look at system health.
You will problem solve complex ambiguous problems.
You will code critical and complex modules.
You influence senior leaders and propose architecture to support future needs.
About the team
The Appstore technology teams connect millions of customers to apps and content they love. We enable this on varied set of devices like Fire TV, Fire Tablets, Android devices, etc. We delight customers through selection, world-class customer experience, and value for their money. We continuously strive to make it easy for developers to provide these to customers.
BASIC QUALIFICATIONS
– 9+ years of non-internship professional software development experience
– Knowledge of object-oriented design, data structures, and algorithms
PREFERRED QUALIFICATIONS
– Experience dealing with middleware/SW stacks and embedded systems
– Experience with continuous integration practices (unit-test, linting, code coverage, etc.)
– Experience programming with Rust, C++, including object-oriented design
– Experience in hands-on development in the last 3 years