Are you interested in helping Amazon make history and redefine the meaning of 'fast' in eCommerce? We are the Same Day Delivery Experience team and are in the early innings of reinventing the Amazon shopping experience to make Amazon the first place customers think to shop when they need something today, wherever they are in the world. We're looking for an Senior Software Engineer for the Same Day Delivery Experience team to help ensure we have a compelling and friction-free 'delivery in hours' experience available to our customers, and help drive continuous innovation and improvement of the delivery experience across all phases of shopping, buying, and post purchase experience.
A successful engineer in this role is:
• You solve problems in ways that can be backed up with verifiable data. You focus on driving processes, tools, and methods which support rational decision-making.
• You aren't satisfied by performing 'as expected' and push the limits past conventional boundaries.
• You help grow your team members to achieve excellent results. You foster the creative atmosphere to let engineers innovate, while holding them accountable for making smart decisions and delivering results.
• You're able to explore new problem spaces with unique constraints and thus non-obvious solutions; you're quick to identify any gaps in the team and the right person to fill them to best deliver value to customers.
• 4+ years of professional software development experience
• 3+ years of programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
• 2+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems
• Bachelor's degree in Computer Science or 8+ years of equivalent professional or military experience
• Ability to propose creative and elegant solutions to complex technical problems.
• Commitment to operational excellence: building low-defect systems that are user-friendly with low operational burden.
• Willingness to own all stages of development process: design, testing, implementation, operational support.
• Willingness to work in an agile team development environment, have basic knowledge of agile design process, experience developing software in an agile environment is highly preferred.
• Experience building large-scale, fault-tolerant distributed systems is preferred.
• Excellent communication skills.
• Strong influence in the team technical discussion and build team technical vision.
• Experience in building high-performance, highly-available and scalable distributed systems.
• Experience taking a leading role in building complex software systems that have been successfully delivered to customers.
• Customer obsessed with the ability to deal with ambiguity.
• Knowledge of professional software engineering practices and best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
• Ability to take a project from scoping requirements through actual launch of the project.
• Experience in communicating with users, other technical teams, and management to collect requirements, describe software product features, and technical designs.