The Amazon Prime Video team is looking for a smart, motivated, and results-oriented software development engineer to join the 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 Front End Engineer working in the Prime Video team, you will be responsible for building flexible, performant and clean user experiences from the ground up. As a Front end engineer you will be responsible to make direct impact on Prime Video customer’s user experience. As part of Amazon Prime Video program, you will be working with product manager, SDE engineers, UX designers to build browser based and mobile user experiences.
As a norm, Amazon Front End Engineers have industry-leading technical abilities. They recognize and adopt best practices in software engineering: design, testing, version control, documentation, build, deployment, and operations. 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.
· Experience building scalable front-end infrastructure software or distributed systems for commercial online services.
· Exposure to Front-end libraries/framework - primarily React.
· Able to solve difficult software and UX problems with some ambiguity.
· Proficient in a broad range of software design approaches and common UX patterns. Knows when (and when not) to use front-end software design patterns (e.g., asynchronicity, data binding, modules, objects, promises).
· Can articulate the risks and benefits of depending on front-end libraries, frameworks, and toolsets.
· Able to dive into the source code of front end libraries to debug, patch, and extend them when necessary.
· Proficient in view layout and rendering technologies (e.g., responsiveness, progressive enhancement, browser/device support).
· Understands how to optimize the delivery of code and assets (e.g., images, fonts) to a browser or device (e.g., lazy loading assets, using CDNs, caching, compression, etc.).
· Understands how to be efficient with resource usage (e.g., application impact on memory and CPU, caches appropriately, respectful of customer’s devices, etc.).
· Good knowledge of AWS Services and IAAS/SAAS concepts. Able to solve difficult software and UX problems with some ambiguity. Pushes for information to avoid solving the wrong problem and mitigate UI risks early in the process to avoid feature delays. Can decompose a problem into clear software and UX design actions.
· Experience with object-oriented design
· Bachelor’s degree in Computer Science or equivalent work experience.
· 5+ years of overall software development experience, with an emphasis on front end engineering.
· Experience with modern web technologies and techniques such as HTML5, CSS3, CSS frameworks and CSS pre-processors.
· Experience with MVC frameworks, Ruby on Rails or Spring MVC, AJAX interfaces with AJAX libraries and frameworks.
· Experience with responsive and mobile design, as well as cross-browser development and testing.
· Experience building rich data-driven web applications by consuming RESTful services and APIs.
· Ability to effectively articulate technical challenges and solutions.
· Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews.