About the Role
About the Role
As a Software Development Engineer at AWS S3, you will solve complex technical problems while building high-performance data access solutions. This role involves designing software that handles massive scale and collaborating with customers to translate their needs into effective technical solutions.
What You'll Do
- Design, develop, and maintain high-performance client software for Amazon S3, ensuring scalability, reliability, and optimal throughput for customer workloads.
- Engage directly with customers and product managers to understand requirements, gather feedback, and translate business needs into technical solutions that solve real-world data access challenges.
- Contribute significantly to the full software development lifecycle including code reviews, testing, deployment, and operational support, while identifying and resolving root causes of issues in distributed systems.
- Dive deep into complex technical domains such as Kubernetes integration, Rust systems programming, and file system implementations to debug issues and implement optimizations.
- Collaborate on open source projects across multiple programming languages, writing clear documentation and training team members on system architecture, operation, and maintenance.
A Day in the Life
You might spend your morning collaborating with customers to understand their unique data access patterns and challenges, then transition to pairing with product managers to refine upcoming features. Your afternoon could involve diving deep into Kubernetes integration issues, optimizing Rust code for better performance, or debugging complex file system behaviors. Throughout the day, you'll participate in code reviews, share knowledge with teammates, and balance new feature development with operational improvements.
About The Team
Our team owns high-throughput access clients that enable customers to process massive datasets efficiently. We're focused on building performant, reliable open source systems software that pushes the boundaries of data access at scale. Our mission is to make Amazon S3 seamlessly accessible for the most demanding workloads, from machine learning training to high-performance computing.
We value collaboration, technical curiosity, and direct customer engagement. Our culture encourages experimentation with new technologies and languages while maintaining operational excellence. You'll work with engineers who are passionate about systems programming and committed to mentoring each other as we tackle increasingly complex challenges in distributed systems and cloud storage.
Basic Qualifications
- Experience building complex software systems that have been successfully delivered to customers.
- Experience programming with at least one modern language such as Java, C++, or C# including object-oriented design.
- Knowledge of professional software engineering & best practices for full software development life cycle, including coding standards, software architectures, code reviews, source control management, continuous deployments, testing, and operational excellence.
Preferred Qualifications
- Bachelor's degree in computer science or equivalent.
- Experience with full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
- Knowledge of system performance, memory management, and parallel programming.
Requirements
Software Development Experience
Experience building complex software systems that have been successfully delivered to customers.
Programming Skills
Experience programming with at least one modern language such as Java, C++, or C# including object-oriented design.
Software Engineering Best Practices
Knowledge of professional software engineering & best practices for full software development life cycle.
Nice to Have
Bachelor's degree in computer science or equivalent.
Experience with full software development life cycle, including coding standards and operations.
Knowledge of system performance, memory management, and parallel programming.