Senior Software Development Engineer, EC2 VPC
Do you want to shape the future of virtualized (SDN) networking in the world’s biggest public cloud? The Amazon Elastic Compute Cloud (EC2) VPC Packet Pipeline team owns the packet pipeline that runs right beneath all our customer's EC2 VPC instances, adding features like firewalling (security groups), billing and monitoring as we touch every single packet on every single host across our massive worldwide fleet. Our vision is to combine the performance of bare metal networking while maintaining all the benefits of the cloud, including delivering features not possible on bare metal i.e. true Software Defined Networking (SDN). We are growing fast, and are looking for kernel/embedded C leaders who can deliver ultra high performance - our goal is to be processing millions of packets per second on a CPU core. This requires both being able to implement highly optimized data structures, but also low level (including by hand assembly and vectorizing) tuning to our hardware. If you have good experience in C/C++, and a passion for systems software engineering such as kernel or embedded development, then this is a unique opportunity to join us at day one of building the platform which is the basis for all new EC2 VPC features in the years to come. Your responsibilities will include: - Being the lead engineer on a small team, mentoring junior engineers, ensuring the right development practices are followed. - Be very hands-on; work with the engineering team to manage the day-to-day development activities by leading architecture decisions, participating in designs, design review, code review, and implementation. - Maintain current technical knowledge to support rapidly changing technology, always on a look out for new technologies and work with management and development team in bringing new technologies. - Communicating with users, other technical teams, and senior management to collect requirements, describe software product features, technical designs, and product strategy10017About the teamOur team values work-life balance. Striking a healthy balance between your personal and professional life is crucial to your happiness and success here.Our team is dedicated to supporting new team members. Our team has a broad mix of experience levels and Amazon tenures, and we foster an environment that celebrates knowledge sharing. Our senior engineers truly enjoy mentoring more junior engineers and engineers from non-traditional backgrounds through one-on-one mentoring and thorough, but kind, code reviews. We care about your career growth. We try to assign projects and tasks based on what will help you develop into a well-rounded engineer.Utility Computing (UC)AWS Utility Computing (UC) provides product innovations — from foundational services such as Amazon’s Simple Storage Service (S3) and Amazon Elastic Compute Cloud (EC2), to consistently released new product innovations that continue to set AWS’s services and features apart in the industry. As a member of the UC organization, you’ll support the development and management of Compute, Database, Storage, Internet of Things (Iot), Platform, and Productivity Apps services in AWS, including support for customers who require specialized security solutions for customers who require specialized security solutions for their cloud services.Our team is dedicated to supporting new members. We have a broad mix of experience levels and tenures, and we’re building an environment that celebrates knowledge-sharing and mentorship. Our senior members enjoy one-on-one mentoring and thorough, but kind, code reviews. We care about your career growth and strive to assign projects that help our team members develop your engineering expertise so you feel empowered to take on more complex tasks in the future.Diverse ExperiencesAWS values diverse experiences. Even if you do not meet all of the qualifications and skills listed in the job description, we encourage candidates to apply. If your career is just starting, hasn’t followed a traditional path, or includes alternative experiences, don’t let it stop you from applying.About AWSAmazon Web Services (AWS) is the world’s most comprehensive and broadly adopted cloud platform. We pioneered cloud computing and never stopped innovating — that’s why customers from the most successful startups to Global 500 companies trust our robust suite of products and services to power their businesses.Inclusive Team CultureHere at AWS, it’s in our nature to learn and be curious. Our employee-led affinity groups foster a culture of inclusion that empower us to be proud of our differences. Ongoing events and learning experiences, including our Conversations on Race and Ethnicity (CORE) and AmazeCon (gender diversity) conferences, inspire us to never stop embracing our uniqueness.Work/Life BalanceWe value work-life harmony. Achieving success at work should never come at the expense of sacrifices at home, which is why we strive for flexibility as part of our working culture. When we feel supported in the workplace and at home, there’s nothing we can’t achieve in the cloud.Mentorship & Career GrowthWe’re continuously raising our performance bar as we strive to become Earth’s Best Employer. That’s why you’ll find endless knowledge-sharing, mentorship and other career-advancing resources here to help you develop into a better-rounded professional.BASIC QUALIFICATIONS- 5+ years of non-internship professional software development experience- 5+ years of programming with at least one software programming language experience- 5+ years of leading design or architecture (design patterns, reliability and scaling) of new and existing systems experience- Experience as a mentor, tech lead or leading an engineering team- 1+ years experience in leading a team in terms of architecture, mentoring and pushing best software development practices- Bachelor's degree in Computer Science or equivalent- Experience developing in C or C++ ...