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:
- 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
- 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
- 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
- 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
- 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
- Gain an understanding of the eReading code base
- Regularly perform code review of other engineers’ work
- Actively participate in design and architecture discussions
- 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
- 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
- Bachelor’s Degree - OR - 4+years of Python application development and web frameworks
- 6 years of related development experience
- 4+ years in Python application development
- Production experience with one or more Python web frameworks (Flask, Django, etc.)
- Experience with Python packaging and dependency management tools (setuptools, pip, poetry, pipenv, etc.)
- Proficiency in SQL and relational databases such as mySQL, Postgres, etc.
- Proficiency with version control systems and git
- Experience with CI/CD tools like Travis, Jenkins, GitHub Actions, etc.
- Familiarity with agile methodologies such as Scrum & Kanban
- Familiarity with a major cloud computing platform (e.g. AWS, Azure, GCP, etc)
- N/A
More...
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
- Office Setting
- Hybrid Work Environment: Requires a minimum of 2 days onsite in NYC office
- Some light lifting/moving may be required
No
Union/Non Union
Non-Union
FLSA Status
Exempt
Schedule
- Monday - Friday; 9-5
- Some weekends & nights may be required
- Hybrid role; requires a minimum of 2 days onsite in NYC office
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.
Similar Jobs
Software Engineering LMTS- Python Developer + Networking
Tech Lead
Sr Staff Engineer - Java Cloud
Software Engineer (Position located in Bangalore, India)
There are more than 50,000 engineering jobs:
Subscribe to membership and unlock all jobs
Engineering Jobs
60,000+ jobs from 4,500+ well-funded companies
Updated Daily
New jobs are added every day as companies post them
Refined Search
Use filters like skill, location, etc to narrow results
Become a member
🥳🥳🥳 401 happy customers and counting...
Overall, over 80% of customers chose to renew their subscriptions after the initial sign-up.
To try it out
For active job seekers
For those who are passive looking
Cancel anytime
Frequently Asked Questions
- We prioritize job seekers as our customers, unlike bigger job sites, by charging a small fee to provide them with curated access to the best companies and up-to-date jobs. This focus allows us to deliver a more personalized and effective job search experience.
- We've got about 70,000 jobs from 5,000 vetted companies. No fake or sleazy jobs here!
- We aggregate jobs from 5,000+ companies' career pages, so you can be sure that you're getting the most up-to-date and relevant jobs.
- We're the only job board *for* software engineers, *by* software engineers… in case you needed a reminder! We add thousands of new jobs daily and offer powerful search filters just for you. 🛠️
- Every single hour! We add 2,000-3,000 new jobs daily, so you'll always have fresh opportunities. 🚀
- Typically, job searches take 3-6 months. EchoJobs helps you spend more time applying and less time hunting. 🎯
- Check daily! We're always updating with new jobs. Set up job alerts for even quicker access. 📅
What Fellow Engineers Say