Come join our creative team and build technology that makes it easy for developers around the globe to build scalable, fault-tolerant distributed systems. The Serverless Applications team develops products such as AWS Lambda that manage the complexity of distributed systems engineering on behalf of our customers, enabling them to focus on product innovation in fields as diverse as on-demand video streaming and space exploration. We have a range of initiatives on the team, from performance optimization to new product development, and we are actively hiring software engineers.
As a member of the team, you will work with a group of talented, mission-focused colleagues to propose ideas and to design, build, and evolve production AWS systems. You will have the opportunity to talk with customers to understand their needs; you will see them adopt the technology you build; and you will use their feedback to inform future development. Depending on your interests, you may work on a broad range of technical problems or you may focus on full-stack development, back-end distributed systems engineering, space and time optimization, or programming model design and implementation. Regardless of the path you choose, you will grow your skills, solve hard problems, and ship software to customers, learning from and mentoring others along the way.
Inclusive Team Culture
Here at AWS, we embrace our differences. We are committed to furthering our culture of inclusion. We have ten employee-led affinity groups, reaching 40,000 employees in over 190 chapters globally. We have innovative benefit offerings, and host annual and ongoing learning experiences, including our Conversations on Race and Ethnicity (CORE) and AmazeCon (gender diversity) conferences. Amazon's culture of inclusion is reinforced within our 14 Leadership Principles, which remind team members to seek diverse perspectives, learn and be curious, and earn trust.
Our team puts a high value on work-life 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.
Mentorship & Career Growth
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 based on what will help each team member develop into a better-rounded engineer and enable them to take on more complex tasks in the future.
If you are excited by the prospect of making it easy for developers to build and operate distributed systems, and are intrigued by any of the details above, please reach out we would love to hear from you.
Contact me at email@example.com
- 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.
- Bachelor's degree in Computer Science, Computer Engineering, or related technical discipline (or the equivalent).
- 4+ years of professional full stack development. Strong design skills around the user experience. Eye for design and attention to detail. Experience with responsive web design.
- Proficiency in developing full stack software, with deep experience in one or more relevant front-end frameworks (React, Angular, Thyme Leaf, JQuery etc.),UI Test Automation frameworks,MVC frameworks, Struts or Spring desired.
- Proficient in view layout and rendering technologies (e.g., responsiveness, progressive enhancement, browser/device support).
- Proficient in a broad range of software design approaches and common UX patterns. Knows when (and when not) to use front-end software design patterns (e.g., asynchronicity, data binding, modules, MV*, objects, promises).
- Experience building scalable front-end infrastructure software or distributed systems for commercial online services.
- Exposure to Front-end libraries/framework - primarily React.
- Demonstrated leadership abilities in an engineering environment in driving operational excellence and best practices.
- Can decompose a problem into clear software and UX design actions.
- Knows how to instrument software with real user metrics to reflect the customer experience
- Strong problem solving and troubleshooting skills.
- Solid coding practices including peer code reviews, unit testing, and a preference for agile development.
- Ability to clearly and concisely communicate with technical and non-technical stakeholders across all levels of the organization.
- Ability to take a project from scoping requirements through launch of the project.
- Excellent communication skills and the ability to thrive in a team