Etsy is seeking a Senior Software Engineer, Test and Deployment Infrastructure to join our technical staff.
We build tools that enable our engineering team to safely deploy code to the Etsy website. These include the Continuous Integration (CI) system, various testing frameworks, and our user-facing deployment toolchain. Everyone in the Product and Engineering teams can deploy code into production, on their own. We do this over 30 times every day. Release management is a role in which everyone on the team plays an active part, starting on their first day of work.
Etsy is actively preparing to move our systems to a cloud provider, and the Test and Deployment Infrastructure team will play a key role in this work. This is an exciting and revolutionary time to join Etsy as engineering embarks on this major piece of next generation work, offering an opportunity to be part of the teams that build and maintain the infrastructure that connects millions of sellers and customers.
About the Team
The technical staff at Etsy believes that code is craft, good software and systems designs are works of art, and that the work we do is part of larger creative culture represented by the hundreds of thousands of inspired makers who make Etsy such a wondrous marketplace. We believe that small, empowered, self-motivated teams can do big things. We also believe in the right tool for the job, not language-as-religion; our current systems run PHP, Java, Python, Ruby, ElasticSearch, MySQL, and much more. We thrive on collaboration, and seek others who feel the same.
About the Role
Continuous Deployment at Etsy is a highly organized process which, without appropriate safeguards, could easily devolve into chaos; it is our job to engineer safety into this system. We build consistency, visibility, and confidence. We are all humans and make mistakes, so we actively monitor for failures, allowing the team to quickly right whatever went wrong. We are programmers and toolsmiths. Given the frequency at which engineers deploy code, we care deeply about simplicity, consistency, and speed in our build pipeline. We profile and tune the performance of tests, fixtures and the CI cluster.
Programming languages were interesting so you learned a new one whenever you had the chance. People were interesting so you learned to write software that connected people to each other. At some point you realized that mixing technology with people can produce unexpected outcomes. And the unintended consequences of inventing new technologies for people turned out to be the most fascinating thing of all.
You will be successful in this role if you:
- See unmastered complexity as a problem to be solved
- Have worked extensively with continuous integration systems and you’re equally happy improving an existing CI or configuring a new one from scratch
- Know why reading code is important, so you also understand why comprehensibility is essential to the survival of a software project
- Are a domain expert in software quality, and you eagerly share your knowledge and your tools with others in your organization, in the interest of building an engineering culture where everyone can ship with confidence
What is nice to have, but not essential:
- Experience with any popular CI or deployment automation toolchain (Jenkins, Travis, Buildbot, Spinnaker, etc)
- Experience working on a cloud-based computing environment
- Experience building deployment solutions for cloud-based computing environments
- Experience with configuration automation (Chef, Puppet)
- Experience with container technologies, eg Docker
- Experience with PHP, ruby, or bash
- Experience with SOX compliance
- We are open about how we build things and the tools we have created to get things done. Read more on our technical blog, CodeAsCraft (http://codeascraft.etsy.com/)
- We open source a lot of code
- We have amazing offices in the heart of Dublin city, San Francisco, and Brooklyn -- and we ensure our remote employees don’t miss out either
- We genuinely care about our talented teams, and offer a fantastic parental leave policy, health care, dental care, sabbatical leave, and many more exciting benefits
- Most importantly, we’re a social bunch with global offices full of fun, innovative, and awesome people
Interested in joining the team? Send us a cover letter and your resume explaining why you’d be great for the job. We value individuality and variety, so make sure to tell us what you’re all about. If you have an online presence (blog, Twitter, Facebook), send it along. And if you write, draw, craft, or contribute to something you’re proud of, we’d love to hear about it.
Etsy is proud to be an equal opportunity employer and will consider all qualified applicants regardless of color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital or family status, disability, gender identity or expression, veteran status, actual or presumed belonging to an ethnic group, or any other legally protected status. If you have a disability or special need that requires accommodation, please let us know.