Software Development Engineer
- Seattle, WA
Do you want to be in the center of the service that make it easier for thousands of developers and DevOps engineers all over the world to characterize the performance and behavior of their micro-service based systems when running within AWS?
AWS X-Ray enables AWS customers to instrument their services and trace requests through their code as well as the underlying AWS services on which they may run. It generates a service graph of all contributing service elements, and within the easy to use console experience allows the diagnosis of high API latencies and/or errors by descending into the details of any individual request. Our mission is to deliver and scale such a service to very large numbers of customers each of whom may be running at extremely large request rates, and perform sophisticated time-series analysis in near real-time.
The AWS X-Ray team is looking for talented software developers who are passionate about distributed system challenges at scale, want to work on some of the best technologies that AWS has to offer, and have a consistent routine of dogfooding in production.
As part of the team, you will be responsible for:
• Building services and tooling which allow AWS X-Ray customers to instrument their micro-service based implementations at very large scale and be able to analyze and explore stored traces in near real-time.
• Building a distributed web service that follows modern design patterns, and scales horizontally presenting an on-going set of API's.
• Partnering with multiple teams within AWS to build solutions that add value to internal engineers and their customers.
• Providing technical leadership to the engineering team and contributing to the product development lifecyle.
Work/Life Harmony: Our team puts a high value on work-live balance. It isn't about how many hours you spend at home or at work; it's about the flow you establish that brings energy to both parts of your life. We believe striking the right balance between your personal and professional life is critical to life-long happiness and fulfillment. We offer flexibility in working hours and encourage you to find your own balance between your work and personal lives. This position involves on-call responsibilities, typically for one week every two months. We don't like getting paged in the middle of the night or on the weekend, so we work to ensure that our systems are fault tolerant. When we do get paged, we work together to resolve the root cause so that we don't get paged for the same issue twice.
Mentorship & Career Growth: Developing our people is celebrated as part of our team culture. We are dedicated to supporting each other and you will get plenty of opportunities to share your unique knowledge and to mentor others. We believe that developing others is an integral part of developing yourself and we have a very diverse collection of backgrounds, levels of experience and Amazon tenure to support this. Our engineers enjoy growing others through one-on-one mentoring and constructive design and code reviews.
Inclusive Team Culture: Our team is intentional about attracting, developing, and retaining amazing talent from diverse backgrounds. Yes we do get to build a really cool service, but we also think a big reason for that is the inclusive and welcoming culture that we cultivate every day. We're looking for a new teammate who is enthusiastic, empathetic, curious, motivated, reliable, and able to work effectively with a diverse team of peers; someone who will help us amplify the positive & inclusive team culture we've been building.
• Bachelor's degree in Computer Science or a related discipline, or equivalent work experience.
• 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 knowledge of data structures and algorithms, and solid problem solving skills.
• Experience building large-scale distributed systems or storage solutions.
• Strong knowledge of 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.
• Master's degree in Computer Science.
• Familiarity with developing web services and applications using caches, databases (e.g. DynamoDB), and API development.
• Ability to discuss trade-offs of different storage technologies, and indexing of semistructured datasets.
• Experience in operating high-throughput, highly scalable software systems in production environments.
• Experience in time series analysis and pattern identification in large sets of semi-structured data.
• A self-starter who is motivated to take ownership of projects.
Amazon is committed to a diverse and inclusive workplace. Amazon is an equal opportunity employer and does not discriminate on the basis of race, national origin, gender, gender identity, sexual orientation, protected veteran status, disability, age, or other legally protected status. For individuals with disabilities who would like to request an accommodation, visit US Disability Accommodations.
Back to top