Senior Software Engineer

Job Reference Code: 40808
City: Austin
State: Texas
Job Type: Full-Time
Start Date: Thursday, May 26, 2016

Have you ever ordered a product on Amazon and when that box with the smile arrives you wonder how it got to you so fast? Wondered where it came from and how much it would have cost Amazon? If so, the Amazon Global Supply Chain Optimization team is for you. We build systems to peer into the future and estimate the distribution of tens of millions of products every week to Amazon’s warehouses in the most cost-effective way. When customers place orders, our systems use real time, large scale optimization techniques to optimally choose where to ship from and how to consolidate multiple orders so that customers get their shipments on time or faster with the lowest possible transportation costs. This team is focused on saving hundreds of millions of dollars using cutting edge science, machine learning, and scalable distributed software on the Cloud that automates and optimizes inventory and shipments to customers under the uncertainty of demand, pricing and supply.

Amazon seeks a passionate, results-oriented, inventive software engineer to be part of a team of developers building large scale, high availability software systems using mathematical modeling, simulations and data analysis. We are looking for software engineers who thrive on complex problems and relish the challenge of operating complex and mission critical systems under extreme loads. We strive to solve complex supply chain optimization problems that no one else has solved yet. Do you think you are up to the challenge? Would you like to learn more and stretch your skills and career?

Successful candidates will be strong leaders who can prioritize well, communicate clearly, and have a consistent track record of delivery. A strong candidate should understand various optimization techniques and build innovative software solutions working with the supply chain business partners in delivering a viable solution. You should enjoy working closely with your peers in a group of very smart and talented engineers.
Your responsibilities include:
· Design, develop, test, troubleshoot, debug, deploy, maintain, document and deliver large-scale, highly distributed, real-time and management systems that are core to effectively managing the supply chain business.
· Use Java, object-oriented (OO) design patterns, distributed Oracle databases, and data modeling techniques.
· Gather and analyze business and functional requirements, and translate business requirements into technical design specifications.
· Serve as a key technical resource in the full development cycle.
· Produce comprehensive, usable software documentation.
· Recommend changes in development, maintenance and system standards.
· Work in an agile development environment, where you are always working on the most important stuff.
· Hire, coach, and mentor individuals.
We have a team culture that encourages innovation and expect developers and management alike to take a high level of ownership for the product vision, technical architecture and project delivery.

Basic Qualifications

· Bachelors Degree in Computer Science or related field.
· Experience with an object-oriented programming language such as Java or C++.
· OO design skills with understanding of common design patterns.
· Willingness to work in an agile, team development environment.
· Willingness to own all stages of development process: design, testing, implementation, operational support.
· Excellent communication and analytical skills.

Preferred Qualifications

Familiarity with Spring, Hibernate, Web Services, Oracle
· Experience developing software in an agile environment
· Experience building large-scale, fault-tolerant distributed systems
· Experience in optimization
· Willingness to own all stages of development process: design, testing, implementation, operational support
· Willingness to work in an agile, team development environment
· Excellent interpersonal communication skills