This job listing expired on Apr 17, 2020
Tweet

Prime Video is disrupting traditional media with a vast library of titles, Emmy Award winning original content, add-on subscriptions, and live events. Our services operate at Amazon-scale and are engineered for high scalability, reliability, and performance. We enable our customers to watch video instantly, online or off, from any device, whether in the comfort of home or on the go. We deliver premium movies, TV shows, add-on subscriptions, and live streaming on thousands of devices across personal computers, mobile devices, game consoles, smart TVs, and set-top boxes. We operate in the US, Europe, and Japan and intend to expand our customer-reach exponentially in the near future.

The Android playback team designs, implements and maintains high-performance software that powers video playback on millions of Android and Kindle devices. We build common components usable by many device types across many form factors. We are responsible for the playback experience, quality and performance from the time you press play on an Prime Video title. Our software is designed to work seamlessly on a variety of devices, in a variety of playing conditions and in a multitude of content consumption contexts including live streaming, on-demand and ad-supported playback. We obsess over the time that elapses between pressing play to when the first frame is rendered to the screen, delivering the highest quality of video possible, and removing interruptions. We are constantly refreshing our software and adding new functionality that allow users to get the best out of both the Prime video library and their specific device.

We are looking for experienced software developers who can guide our team’s technical strategy and provide architecture and design guidance based on their extensive knowledge of a variety of software engineering patterns and industry standards. You will also be responsible for designing and developing reusable, object-oriented and performant software utilizing well-known patterns (MVC, Composite, Delegate, Protocol…) that may span multiple platforms, form factors, and resource challenges.

Successful candidates for this position will have strong software engineering fundamentals (data structures, object-oriented design and algorithms), a well-honed arsenal of software architecture and design patterns and a demonstrated competence in designing reusable, maintainable and performant software written in a modern high-level language (C, C++, Java, C#, Objective-C, Swift). You will be a champion for engineering and operational excellence. You will also demonstrate the ability to adapt to changing business and technical environments and devising creative solutions to vexing software problems. The ability to crisply and concisely communicate orally and in writing to engineers and executives alike is essential.

A background in mobile or web development, multimedia software development, and/or knowledge of audio/video codecs (AVC, HEVC, AAC, AC-3), DRM technologies (Widevine, FairPlay, PlayReady), media frameworks (gstreamer, openMAX, iOS AV), streaming technologies (DASH, HLS, SmoothStreaming) and media container formats is a plus, but not required.

Basic Qualifications

  • 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.
  • Bachelor’s Degree in Computer Science or related field
  • Computer Science fundamentals in object-oriented design
  • Computer Science fundamentals in data structures
  • Computer Science fundamentals in algorithm design, problem solving, and complexity analysis

Preferred Qualifications

  • Experience in building complex software systems that have been successfully delivered to customers
  • 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
  • Experience communicating with users, other technical teams, and management to collect requirements, describe software product features, technical designs, and product strategy
  • Hands-on expertise in technologies, typically ranging from front-end user interfaces through to back-end systems and points in between
  • Experience developing, releasing and maintaining a mobile app or mobile OS
  • Knowledge of media container formats (MP4), encoding schemes (AAC, AVC, HEVC), streaming protocols (http, HLS, DASH, SmoothStreaming)
  • Meets/exceeds Amazon’s leadership principles requirements for this role
  • Meets/exceeds Amazon’s functional/technical depth and complexity for this role

Amazon is an Equal Opportunity Employer – Minority / Female / Disability / Veteran / Gender Identity / Sexual Orientation / Age