Job Details
Staff Software Engineer, Reliability
The [Register to View] target="_blank" rel="noopener noreferrer">mission of The New York Times is to seek the truth and help people understand the world. That means independent journalism is at the heart of all we do as a company. It’s why we have a newsroom that’s 1,700 strong and sends journalists to report on the ground from nearly 160 countries. It’s why we focus deeply on how our readers will experience our journalism, from print to audio to a world-class digital and app destination. And it’s why our business strategy centers on making journalism so good that it’s worth paying for.
Note for US based roles: Any offer of employment is contingent on providing proof of Covid-19 vaccination prior to your start date, subject to approved medical and/or religious exemptions, in accordance with applicable law.
Job Description
The New York Times is looking for a Staff Software Engineer (SRE) for its Delivery Engineering team.
About the Team
The Delivery Engineering team is a critical part of The New York Times' engineering organization. Its responsibilities are deeply technical and include system observability, cloud architecture, developer tooling, and development process, to name a few. The primary goal of the Delivery Engineering team is to build tools/automation and SRE practices for product engineering teams, enabling them to deliver and take operational responsibility of their own software in a consistent way.
Role Description
You will report to the Senior Engineering Manager of Reliability. Your day-to-day job will include evaluating the current development practices, procedures and tooling, and evolving them to be more efficient. You will also be a part of a team responsible for building the tools that ensure that the various systems at The New York Times continue to operate in a reliable and efficient manner.
You will initially contribute to incident response and pattern recognition automation as well as chaos engineering projects, so an understanding of these processes and associated tooling is preferred. You will participate in assessing maturity of applications and services, and evaluation of production readiness of various systems.
Responsibilities
Work within various areas of focus (e.g. observability, secrets management, deployment pipeline, containerization, etc) and research, strategize, and propose solutions that meet requirements, reduces friction for product engineers, and consolidates existing solutions.
Own the design, implementation and maintenance of team tooling.
Drive adoption and onboard teams to Delivery Engineering tooling and solutions.
Work closely with engineering teams to learn about needs, current process and to promote best practices.
Work closely with product engineering teams, helping them migrate application stacks to cloud infrastructure.
Promote and evangelize SRE best practices as an SME, through Production Readiness Reviews, blameless postmortems, technical talks, and tooling.
Documentation of best practices, prescribed solutions, and production support playbooks.
Production support by participating in on-call rotations for the tools we build, as well as providing subject matter expertise to users of our solutions.
Contribute to our mission of reaching 10+ million paid subscribers by 2025.
Required Experience
At least 8 years of experience in programming and troubleshooting. You may be called upon to help with systems written in Go, Python, Java, Scala, Ruby amongst many other programming languages. We don’t expect you to know everything but we expect you to learn quickly.
An understanding of cloud based deployments on Amazon Web Services or Google Cloud Platform.
A good grasp of multi-tier application architecture, distributed systems & concepts of networking, load balancing, monitoring and *nix OS.
A passion for automating things. We love repeatable processes and know that humans are prone to error. We’d like to automate deployments, monitoring releases and even brewing our coffee.
An understanding of the [Register to View] target="_blank" rel="noopener noreferrer">12 Factor App. It is one of our goals to move our systems in this direction.
Interest in Linux containers and smart clustering solutions like Kubernetes, Mesos, etc.
A bias towards helping people. Many teams will rely upon you for help to build their systems.
A high degree of empathy for existing solutions and issues. The New York Times is quite modern in many ways but is also prone to having issues that a 165 year old organization may have - including legacy systems and processes. There are many things to fix.
Nice to Have Experience
Programming in Go, on a production application
Docker/Kubernetes, in a production environment
React (or similar JS framework), in a production environment
HashiCorp tooling, specifically Terraform and Vault
Deploy Pipeline and CI/CD
Configuring, deploying and running open source software in production
Some of the tech we use
Go, GCP, AWS, Docker, Kubernetes, Drone, Terraform, Vault, Fastly
This role may require limited on-call hours. An on-call schedule will be determined when you join, taking into account team size and other variables.
#LI-AM1
The New York Times is committed to a diverse and inclusive workforce, one that reflects the varied global community we serve. Our journalism and the products we build in the service of that journalism greatly benefit from a range of perspectives, which can only come from diversity of all types, across our ranks, at all levels of the organization. Achieving true diversity and inclusion is the right thing to do. It is also the smart thing for our business. So we strongly encourage women, veterans, people with disabilities, people of color and gender nonconforming candidates to apply.
The New York Times Company is an Equal Opportunity Employer and does not discriminate on the basis of an individual's sex, age, race, color, creed, national origin, alienage, religion, marital status, pregnancy, sexual orientation or affectional preference, gender identity and expression, disability, genetic trait or predisposition, carrier status, citizenship, veteran or military status and other personal characteristics protected by law. All applications will receive consideration for employment without regard to legally protected characteristics. The New York Times Company will provide reasonable accommodations as required by applicable federal, state, and/or local laws, and will consider qualified applicants, including those with criminal histories, in a manner consistent with the requirements of applicable "Fair Chance" laws.