Have you ever wanted to work on a system that is used to explore other planets? How about a system that is the foundation for processing huge amounts of genomic data in our pursuit to better understand diseases, aging, and many other fundamental questions about who we are? These are just a couple of the many exciting ways that customers are using the Amazon Simple Workflow Service, or SWF for short, to build complex distributed systems that solve really hard problems. SWF was built to provide AWS customers with an application infrastructure that takes the muck out of the myriad of difficult tasks that are required for building scalable and resilient applications. If you are passionate about the challenges of big scale, building cutting edge technologies, and making developing distributed applications easy and reliable then SWF has a place for you on the team.
How do you know if you are a good fit for SWF? You will look at really hard problems as an exciting challenge, not a daunting task. We have built SWF using some of the latest technologies and techniques in distributed systems, so you will need to be able to discover novel ways to solve really hard problems. You will think about all the ways something could go wrong in solving these problems and write code that continuously raises the bar. Since the SWF team shares your passion for building cool stuff, you will want to collaborate with your teammates closely and share the interesting perspective you bring to all the problems we face. When our customers ask for the next big feature, you will get jazzed because you know this means you'll be able to truly dig into the solution and get it done right. You will also love owning significant chunks of the project from top to bottom, delivering not only in the implementation but in all phases from the kernel of an idea to quickly getting that battle-tested code into production.
We are looking for a Software Development Manager to lead and define the technical direction, and follow through with detailed architecture and design, build exceptional teams and drive operation excellence of a massive scale (think multi-million tps) distributed system.
How do you know if you are a good fit for us? You are fascinated by and want to innovate in distributed fault-tolerant systems that operate at scale. You love customers. When our customers ask for the next big feature, you know this means you'll be able to truly dig into the solution and get it done right. You love owning the project from idea to production, delivering not only in the implementation but in all phases from the kernel of an idea to quickly getting that battle-tested code into production. You enjoy collaborating with your teammates. You love working in agile programming environments and running fast to deliver evolution for your AWS services.
Key responsibilities include:
•Translation of complex functional and technical requirements into detailed project plans and schedules; manage the day-to-day activities of the engineering team by defining, implementing and maintaining a coherent, progressive development strategy for our product line.
•Delivery of quality applications on-time and on-budget
•Management and execution against project plans and delivery commitments
•Management of departmental resources, staffing, and enhancing and maintaining a best-of-class engineering team
•Evolution of the software engineering practice within the organization, including better reporting, tools, and evolution of development methodology
•Continue to build an effective development organization by driving the recruiting and hiring of senior level engineers, developing and managing the group, and conducting performance reviews of team members
•Create and execute appropriate quality plans, project plans, test strategies and processes for development activities in concert with business and project management efforts.
•Drive and manage the bug triage process, represent development team in project meetings to ensure efficient testing and bug fixing process, and be an effective advocate for the development group
•Report on status of product quality to management, customer support and product teams via rigorous execution of detailed plans and accurate reporting of test cases executed, bugs discovered, bugs fixed, etc.
Please contact cangsam@ for an informational; would love to chat over coffee.
•Bachelor's Degree in Computer Science or related field
•5+ years of software development experience, as a developer or manager
•2+ years of experience as a development manager (with direct authority over development staff)
•MS, Ph.D. in Computer Science or a relevant technical discipline
•5+ years of software development experience as a manager