The Fulfillment By Amazon - Inventory Optimization (FIO) team is focused on driving free cash flow by automating and optimizing our third-party fulfillment supply chain. We are looking for a Software Engineer to help us break down barriers to growth and accelerate through escape velocity. We will be disruptive, and we will make a HUGE difference to our third party partners and Amazon customers. The FIO team is within Amazon’s Supply Chain Optimization Technologies (SCOT) organization.
This role might be for you if… · You design at the product level with heavy involvement through all phases of the SDLC using concepts that may include Service Oriented Architecture, caching, load balancing, non-relational databases, microservices, sharding, n-tiered architecture, cloud and/or map-reduce. · You use object-oriented design concepts to program large multi-tier systems. You have working knowledge of common and useful design patterns. · You have designed, refactored, re-architected, deprecated and/or implemented large-scale cloud-based distributed services with millisecond latency and ultra-high transactional volumes. · You have experience implementing best practices in improving team coding culture subjected related to quality and/or security. Effectively articulate technical challenges and solutions to non-technical audiences.
In this job, you will… · Experiment with whatever technology we need to get the job done. · Use Lean Software Development concepts such as Agile, Scrum and Kanban. · Use Test-Driven Development and Continuous Deployment. · Work with Senior and Principal Engineers, Researchers, and Data Engineers across multiple teams to design a new platform for optimizing supply chain management · Expand and optimize our world-class supply chain systems to support a variety of emerging business initiatives. · Automate third party supply management systems and break new ground to drive inventory across Amazon marketplaces.
Bachelor's degree in Computer Science, Software Engineering or a related technical discipline
2+ years’ full-time experience in software design and development.
Proficiency with at least one Object Oriented language (e.g. Java, C++, C#).
Computer Science fundamentals in object-oriented design, data structures, algorithm design, problem solving, and complexity analysis.
3+ years’ full-time experience in software design and development.
2+ years’ experience as a lead developer on at least one project.
2+ years’ experience mentoring and coaching others.
Experience with distributed systems, relational databases, map-reduce solutions.
Ability to effectively articulate technical challenges and solutions to non-technical audiences.