Software Development Engineer - Supply Chain Optimization

3+ months agoToronto, Canada


Retail Inbound Capacity team 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. Do you think you are up to the challenge?

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. 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.

Your responsibilities will include:
• Designing, developing, testing, troubleshooting, debugging, deploying, maintaining, documenting and delivering large-scale, highly distributed, real-time and management systems that are core to effectively managing the supply chain business.
• Using Java, object-oriented (OO) design patterns, NoSQL DBs, and data modeling techniques.
• Gathering and analyzing business and functional requirements, and translating business requirements into technical design specifications.
• Serving as a key technical resource in the full development cycle.
• Producing comprehensive, usable software documentation.
• Recommending changes in development, maintenance and system standards.
• Working in an agile development environment, where you are always working on the most important stuff.
• Hiring, coaching, and mentoring individuals.


• 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


• Strong Computer Science fundamentals with good understanding of object-oriented design , data structures, algorithms , problem solving, and complexity analysis.
• Knowledge of SQL
• Bachelors or Advance Degree in Computer Science or like field required
• Experience building large-scale, fault-tolerant distributed systems
• Familiarity with Spring, Web Services, NoSQL DBs
• 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.

By submitting your application here, you can apply once to be considered for multiple Software Engineer openings across various Amazon teams. If you are successful in passing through the initial application review and assessment, you will be asked to submit your career and personal preferences so that our dedicated recruiters can match you to the right role based on these preferences.

Amazon is committed to providing accommodations at all stages through recruitment and employment in accordance with applicable human rights and accommodation legislation. If contacted for an employment opportunity, advise Human Resources if you require accommodation, including in order to apply for a position.

Job ID: Amazon-1463817