Amazon Fulfillment Technologies (AFT) – Emerging Technology team powers the physical engine at the heart of Amazon. AFT builds and operates the software, hardware, and processes that run the global network of fulfillment centers, which move billions of units of inventory and ensures customers get what they want when promised. Within AFT, we are constantly innovating in the ways we are automating and accelerating the delivery of products and packages using state of the art software and hardware technologies. We develop software by applying Advanced Algorithms and Real-Time Data processing using large scale distributed systems. We utilize OO programming languages, Hadoop, Elastic Map Reduce, DynamoDB and other AWS technologies to build solutions that that solve our challenges, ranging from scaling for massive Amazon order volume to ultrafast order fulfillment.
- Understand system interdependencies and limitations.
- Participate in the definition of secure, scalable, and low-latency services and efficient physical processes.
- Functionally decompose complex problems into simple, straight-forward solutions.
- Participate in the design, implementation, and deployment of successful internet-scale systems and services in support of our fulfillment operations and the businesses they support.
- Share knowledge in performance, scalability, enterprise system architecture, and engineering best practices.
- Work with cross-functional teams delivering on demanding projects.
- Solid experience in OO programming languages such as C++, Java or C#
- 1+ years of experience contributing to the system design or architecture (architecture, design patterns, reliability and scaling) of new and current systems.
- Outstanding interpersonal and communication skills
- 2+ years of non-internship professional software development experience
- Bachelor’s or Master’s Degree in Computer Science or related field
- Computer Science fundamentals in object-oriented design, algorithm design, problem solving, and complexity analysis
- Experience with scaling and performance of large systems
- Programming experience with at least one software programming language.
- Solid UNIX or Linux experience
- 2+ years of professional experience in software development
- Obsession with quality and customer experience – attention to detail coupled with ability to think abstractly
Qualification & Experience:
- Knowledge of professional software engineering best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
- Full stack experience ranging from front-end user interfaces through to back-end systems and all points in between.
- Experience mentoring junior software engineers to improve their skills, and make them more effective, product software engineers.
- Experience in communicating with users, other technical teams, and senior management to collect requirements, describe software product features, technical designs, and product strategy.
- Experience influencing software engineering best practices within your team.
- Experience taking a leading role in building complex software systems that have been successfully delivered to customers.
Vacancy Type: Full Time
Job Location: Austin, TX, USA
Application Deadline: N/A