
Technical Team Lead, Institutional Services
Job Description
Technical Team Lead, Institutional Services
Department: Digital
Employment Type: Full Time
Location: Stephen A. Schwarzman Building
Reporting To: Christina Entcheva
Compensation: $120,000 - $147,500 / year
Description
Overview
Do you want to work for a mission driven organization that cares about privacy, accessibility, sustainability, and ethical technology? Join us at the New York Public Library!
- Important APIs and data pipelines that support NYPL’s digital platforms like the Library Card experience, MyLibraryNYC, Single Sign On etc, integrating with a variety of catalog systems owned both by NYPL and 3rd party vendors
- A broad base of technical knowledge to be able to identify solutions for difficult problems
- The day-to-day management of a full-stack team and their technical priorities, helping coordinate their work with cross-functional partners, collaborators, stakeholders, and leadership.
- Support and mentor other engineers, helping them deliver results on time and in accordance with department standards
- Present on their and the team’s work to technical and non-technical stakeholders
- Build support for the team’s work among various interested parties
- Align approaches to development between development teams, sharing best practices
- Gain an understanding of library science practices, especially around metadata standards and formats
- Connect the dots between different applications to understand how data and user experience can be shared between them
- Collaborate with other Technical Team Leads to help improve Digital’s culture and implement best practices 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 team’s group’s codebases and familiarity with other NYPL codebases
- Regularly perform code review of other engineers’ work
- Actively participate in design and architecture discussions
- Participate in conversations about team’s project progress and help report on status to Digital leadership
- Actively contribute to team’s code bases and understand code bases around NYPL Digital
- 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 Technical Team Leads 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 NYPL technical needs to define system specifications
- Design and implement scalable, optimized, and maintainable APIs and other applications
- 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
- Mentor and coach junior developers on best practices and career growth Communicate priorities and system requirements to software development teams
- Manage a small team of 2-4 full-stack engineers
- Motivate staff and create spaces where they can ask questions and voice their concerns
- Be transparent with the team about challenges, failures, and successes
- Research and recommend solutions based on cost benefit analysis and embracing automation and efficiency.
- Ask questions to ascertain the feasibility of the technical approach and guide the team if not
Required Education, Experience & Skills
- Bachelor’s Degree -OR-
- Equivalent 7+ years of hands-on development experience on relevant tech stack
- 1+ years of experience in people management
- Strong leadership, mentoring, coaching and decision-making skills
- Excellent written and verbal communication skills
- Demonstrated ability to level up individual engineers and engineering teams
- Track record of leading major technical initiatives to solve complex technical problems
- Knowledge of non-technical strategies for solving team, culture and process 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
- Support small team of 2+ engineers in their day-to-day work
- Report on status of team projects, including progress and any issues encountered
- Coach team members on both hard and soft skills
- Provide feedback on team performance and motivate team to deliver on project goals
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
- Hybrid Work Environment; 3 days in office in NYC, 2 remote
- Monday - Friday; 9-5
- N/A
- No
- Non-Union
- Exempt
- Monday - Friday; 9-5
- Hybrid Work Schedule: 3 days in office in NYC; 2 remote
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.