Prime Video is disrupting traditional media with an ever-increasing selection of movies, TV shows, Emmy Award winning original content, add-on subscriptions including HBO, and live events like Thursday Night Football. Our architecture operates at Amazon-scale and raises the bar for playback reliability, video start time, and image quality. Prime Video runs on thousands of device types in over 200 territories worldwide.
The Prime Video International team serves as the voice of our international customers, advocates on behalf of those customers, and delivers capabilities that allow us to acquire, engage, and retain more of them. Our mission is to ensure every internet-connected customer in the world can enjoy Prime Video. We accomplish this by continuously increasing the number of global customers who can: (1) discover PV via marketing that is tailored to their country and in their local language; (2) sign-up to the service in their local language; (3) pay in their local currency using the payment instrument or 3P subscription vendor of their choice; and (4) browse the service and watch content (via subtitles, dubbing, or OV) in their preferred language
Our architecture serves billions of requests per day, with obsessively high reliability and low operational overhead. We leverage Amazon Web Services (AWS) technologies including EC2, S3, DynamoDB, Lambda, Kinesis, IoT, and CloudFront.
We are looking for a smart, motivated, and results-oriented software development engineer to join the Marketing Technology team. We are a high-energy and innovative group changing the way customers watch TV and movies. We are looking for candidates who are passionate about delivering world-class digital media experiences to our customers. Successful candidates for this position will be self-starters with strong problem solving skills who love getting things done. Strong communication skills and a desire to tackle complex problems that emerge from driving a large business at Amazon are also a must.
As a norm, Amazon SDE's have industry-leading technical abilities. They recognize and adopt best practices in software engineering: design, testing, version control, documentation, build, deployment, and operations. They write high quality, maintainable, and robust code, often in Java or C++. They solve problems at their root, stepping back to understand the broader context. They build flexible systems without over-engineering and choose simple, straightforward solutions over more complex ones. They understand a broad range of data structures and algorithms and know how, when and when not to use them; recognize and use design patterns to solve business problems. They understand how operating systems work, perform and scale.
• 4+ years of professional software development experience
• 3+ years of programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
• 2+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems
• Bachelor's degree and/or Master's degree in Computer Science or equivalent.
• 10+ years of software development experience, including Java and/or C++.
• Computer Science fundamentals in object-oriented design
• Computer Science fundamentals in data structures
• Computer Science fundamentals in algorithm design, problem solving, and complexity analysis
• Designing and developing enterprise Web applications using Java, Spring MVC and distributed databases.
• Experience with distributed (multi-tiered) systems, algorithms, and relational databases
• Ability to effectively articulate technical challenges and solutions
• Deal well with ambiguous/undefined problems; ability to think abstractly
• Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
• Experience with distributed computing and enterprise-wide systems