Skip to content

The clock on this job

Early applications get read.

12.3% of postings close within 7 days. Measured by our own scanner across the market. The New York Public Library postings stay open a median of 2 days.

Share of postings closed within
  1. 2.1%1 day
  2. 4.5%3 days
  3. 12.3%7 days
  4. 19.7%14 days
  5. 35.6%30 days
  6. 58.0%60 days
This job: first seen 6 days ago

The New York Public Library median: 2 days open

The posting

-- This is not a remote role and requires work in the NYC office three days a week --

Overview NYPL is hiring a Senior Software Engineer I in our Institutional Services group to work on a full-stack engineering team building and maintaining our digital platforms, and pushing forward our unified patron experience vision across multiple applications and databases.

The role will be responsible for writing code and delivering products via several codebases (Python, React, Typescript) focused on providing access to digital library resources for NYPL patrons, researchers, educators, and students around the country. This involves maintaining legacy codebases and developing new applications to help patrons access NYPL’s collections.

This role will also contribute to the technical leadership of the team by helping set and upholding standards for best practices in application development, database management, team collaboration, and other technical areas, with guidance by the Technical Team Lead.

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
  • Begin to understand the product requirements for our Library Card Application and MyLibraryNYC systems and how they connect to larger strategic objectives

3 months, this person will:

  • Gain an understanding of the team’s codebases and familiarity with other NYPL codebases
  • Regularly perform code review of other engineers’ work
  • Support and mentor other engineers on their team in technical skills as well as the specifics of NYPL’s digital library card application
  • Iteratively update our digital library card application and MyLibraryNYC systems, always seeking to identify areas for improved service for patrons and staff
  • Lead development initiatives on new projects and open issues, ensuring that implementation is completed in a maintainable, observable and testable manner
  • Actively participate in design and architecture discussions, and contribute to decisions that will impact the team and organization
  • Participate in conversations about team’s project progress and help maintain team velocity through mentorship, pair programming, and code review
  • Present on their work to technical and non-technical stakeholders
  • Build support for the team’s work amongst various interested parties

6 months and beyond, this person will:

  • Provide technical advice and weigh in on decisions that impact our platforms and help realize implementation of new features and bugfixes
  • Regularly influence design and architecture discussions
  • Collaborate with other Software Engineers to deliver new features across NYPL Digital
  • Take responsibility for new development work, coordinating the work of other engineers
  • Help lead development teams by taking accountability, mentoring developers, fostering collaboration and generally aiding the adoption of best practices
  • Influence and empower the team to build useful, accessible applications in a sustainable and maintainable way
  • Understand code bases around NYPL Digital

Responsibilities:

  • Understand NYPL technical needs to define system specifications
  • Design and implement scalable, optimized, and maintainable software solutions
  • Collaborate with multiple teams working on 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)
  • Work with product/project managers on estimating the feasibility and complexity of new products/features
  • Participate in team agile ceremonies and contribute towards the continuous improvement of our agile processes
  • Ask questions to ascertain the feasibility of the technical approach
  • Write Technical Architecture Documents defining technical approach for foundational functionality across projects
  • Identify and resolve ambiguities/issues with requirements for team and org-wide projects
  • Research and recommend solutions based on cost benefit analysis and embracing automation and efficiency
  • Connect with different teams when shared issues or solutions are identified
  • Contribute to test suites to ensure the creation of accurate, reliable, and robust code
  • Create technical documentation and specifications for all delivered code
  • Proactively identify and remediate tech debt
  • Help other engineers and provide actionable feedback during code reviews
  • Assume additional responsibilities as required by the organization

Required Education, Experience & Skills

Required Education and Certifications

  • Bachelor’s Degree -OR-

Required Experience

  • Equivalent 5 years of hands-on development experience with relevant tech stack

Required Skills

  • Strong leadership, mentoring, coaching and decision-making skills
  • Excellent written and verbal communication skills
  • Track record of leading major technical initiatives to solve complex technical problems
  • Experience establishing documentation standards and practices
  • Expertise in Python application development and system design, including production experience with Python web frameworks
  • Strong understanding of system architecture and design patterns as well as cloud infrastructure
  • Strong understanding of DevOps practices and their impact on implementation approaches
  • Proficiency in SQL and relational databases such as MySQL, PostgreSQL, etc.
  • Experience with Node.js and React ecosystem
  • Experience with Next.js.
  • Experience with multiple component libraries. Prior experience building a component library is a plus
  • Experience with front-end integration testing
  • Knowledge of accessibility principles. Prior experience working on an accessible front-end is a plus
  • Proficiency with version control systems and git
  • Experience with CI/CD tools like GitHub Actions, TravisCI, etc.
  • Familiarity with agile methodologies such as Scrum & Kanban
  • Familiarity with Single Sign On is a plus
  • Understanding or experience managing a single sign on infrastructure like Shibboleth is a plus
  • Production experience working with data stores, including ElasticSearch and/or Solr, at scale a plus

Managerial/Supervisory Responsibilities

  • N/A

More...

Core Values All team members are expected and encouraged to embody the NYPL Core Values:

  • Be Helpful to patrons and colleagues
  • Be Resourceful in solving problems
  • Be Curious in all aspects of your work
  • Be Welcoming and Inclusive

Work Environment

  • Office Setting
  • Hybrid work environment; 3 days in office in NYC

Physical Duties

  • Limited physical effort is required
  • May require travel within NYC

Pre-Placement Physical Required?

  • No

Union/Non Union

  • Non-Union

FLSA Status

  • Exempt

Schedule

  • Monday - Friday ; 9-5
  • Hybrid work environment; 3 days in office in NYC

This job description represents the types and levels of responsibilities that will be required of the position and shall not be construed as a declaration of all of the specific duties and responsibilities for the role. Job duties may change if Library priorities change. Employees may be directed to perform job-related tasks other than those specifically presented in this description as needed.

The New York Public Library Salary Statement

At the Library, we believe that pay transparency and pay equity are important to ensuring we source the best candidates and keep the best employees. When making a determination as to the appropriate salary for a candidate, we consider a variety of factors such, including, but not limited to, the position requirements, the skills, prior experience, and educational background required or preferred for the job, the scope and impact of the role within the organization, internal peer equity, and the candidate's specific training, experience, education level, and skills. No single factor is conclusive; the Library reserves the right to consider any and all relevant factors and make a decision consistent with its policies.

Union Salaries are determined by collective bargaining agreement(s).

Posting text belongs to the employer. Removal requests: contact us.

From $25, paid onceGet the CV for this job

What happens when you press

One press. We do the rest.

  1. A CV for this posting

    Written against The New York Public Library's own wording, from every piece of relevant proof in your profile.

  2. 25 readers review it

    Recruiter, hiring manager, skeptic and more read every draft, round after round. You get the best round.

    The review screen in CV Rocket: how each CV was read, round by round.
  3. We apply on The New York Public Library's form

    Our application engine gets through the hardest forms there are. Where a question needs you, AI suggests the best answer. Don't want us applying from our IP addresses? Use our Chrome extension: we apply straight from your own browser.

    An application in CV Rocket: every answer filled in on the employer's form.
  4. Every reply, sorted

    The New York Public Library's answer lands in your private mailbox, and we classify it on arrival: interview, question, rejection.

    The CV Rocket inbox: each employer reply classified as an interview, an action or a rejection.
  5. Reply with AI

    AI helps you write the email, checks it and sends it. We show you whether the recruiter read it.

  6. The interview in your calendar

    Full integration with your calendar. The invitation goes straight in.

    An interview invitation in the CV Rocket inbox, added to the candidate's calendar.
Get the CV for this job

From $25 per CV, paid once. No subscription.

Why it works

3×

more interviews than doing it yourself with ChatGPT.

ChatGPT writes a CV and never learns what happened to it. We see every reply. For each CV we know:

  • How it was written, and how the review scored it
  • When we applied, and how long after the posting went up
  • Which posting, which company, which city
  • Who got the interview, and who heard nothing

That is how we know which CVs get called.

Get the CV for this job

From $25 per CV, paid once. No subscription.

The numbers game

More applications. More interviews.

Every application goes out with its own CV, written for that posting and paid once. Send enough of them and the law of large numbers finds you the job.

By hand5–10
With CV Rocket100
applications a day

Before you press

Straight answers

Get the CV for this job

From $25 per CV, paid once. No subscription.

What if my background isn't good enough?

We make the most of the background you have. The CV uses every piece of relevant proof your profile holds, and one of the 25 readers reads your whole profile and flags what the CV left out.

Do you really apply for me?

Yes, on the employer's own form, the hardest ones included. Where a question needs you, you answer it right there and AI suggests the best answer. Don't want us applying from our IP addresses? Use our Chrome extension: we apply straight from your own browser.

Is it a subscription?

No. You pay once per CV, from $25. Every application goes out with its own CV, written for that posting.

One job. One CV.
Paid once.

Pick the posting you want. We write for it, apply for you and catch the reply.

Get the CV for this job

From $25 per CV, paid once. No subscription.