Jobs and Careers
TH

Software Engineer III - Python

The New York Public Library
New York City, United Statesfull_timeVerifiedPosted 12 Nov 2024
💰 $115,000/yr

About the role

Software Engineer III - Python

Application Deadline: 25 November 2024

Department: Digital

Employment Type: Full Time

Location: Stephen A. Schwarzman Building

Reporting To: Sarang Joshi

Compensation: $115,000 / year


Description

This is not a remote role; requires a minimum of 2 days onsite in NYC office.

Overview
The New York Public Library is looking for a new backend software engineer to expand our eReading team. The focus of this role will be on building and improving on backend systems that enable our patrons to seamlessly checkout and interact with ebooks. This will involve building data ingest pipelines for integrations with 3rd party ebook providers, as well as  designing and building scalable and performant web services that enable our client apps to provide a great experience for our patrons.

We are looking for someone we can count on to: Own:
  • APIs and data pipelines that power the library’s eReading offerings
  • Technical approaches to integrating metadata from different sources and in different formats
  • The design and development of individual features, working with product and frontend developers to come up with practical solutions
Teach:
  • Support and mentor other engineers, helping them understand both this engineers area of expertise and engineering best practices in general
  • Present on their work to technical and non-technical stakeholders
Learn:
  • Gain an understanding of library science practices, especially around metadata standards and formats
  • Connect the dots between different applications to understand how metadata and records can be shared between them
  • Help the department keep up with new developments in software development
Improve:
  • Grow as a team member, collaborating with other NYPL engineers to solve problems
  • Seek to retire legacy applications and replace them with modern, streamlined solutions
Some expectations for this role are that within: 1 month, this person will:
  • Develop an understanding of our infrastructure, environments and deployment practices
  • Implement unit and integration tests for all the code that they write
  • Complete software development tasks independently and collaboratively in line/accordance with our engineering workflows
3 months, this person will:
  • Gain an understanding of the eReading code base 
  • Regularly perform code review of other engineers’ work
  • Actively participate in design and architecture discussions
6 months and beyond, this person will:
  • Actively contribute to eReading code bases and understand code bases around NYPL Digital
  • Provide technical advice and weigh in on decisions that impact our reading platforms and help realize implementation of new features and bugfixes
  • Regularly influence design and architecture discussions
  • Understand decisions and constraints in the wide scope pertaining to the whole of the solution at hand. This includes the ability to abstract problems into general solutions
Responsibilities: 
  • Design and implement scalable, optimized, and maintainable APIs and other applications
  • Collaborate with multiple teams working on reading platforms to build innovative and forward-looking applications for our patrons
  • Build software following industry best practices and NYPL values (https://github.com/NYPL/engineering-general)
  • Develop functional/unit tests to ensure the creation of accurate, reliable, and robust code
  • Create technical documentation and specifications
  • Identify and tackle tech debt before it becomes large enough to require standalone work to address it; Remediate existing tech debt within their projects
  • Identify and help resolve ambiguities and/or problems with requirements and roadmap items on adjacent teams and projects, not just those being worked currently
  • Help other engineers and provide actionable feedback during code reviews
  • Communicate effectively across disciplines, including through detailed and effective technical writing
  • Assume additional responsibilities as required by the organization

Required Education, Experience & Skills

Required Education & Certifications
  • Bachelor’s Degree - OR - 4+years of Python application development and web frameworks
Requir

Apply for this role

Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.

Apply Now →Generate Application Kit

Free account required — sign up in 30s

Company

The New York Public Library

View company profile →