Full Stack Developer
New Visions for Public Schools is dedicated to ensuring that all New York City public school students, regardless of race or economic class, have access to a high-quality education that prepares them for the rigors of college and the workforce.We are dedicated to empowering school leaders, teachers, and administrators with modern technology to effectively manage the complex work of teaching and learning.
We’re looking for a Full Stack Developer to join our Systems, Data Analytics, and Research team (SYSDAAR). Our new team member will help build, test and maintain our school management platform built on Angular, Node.js, and MongoDB, supplemented by RXJS, Typescript, GraphQL, and other technologies.
The SYSDAAR team builds and maintains web applications that respond to educator needs and supports school leaders in effectively integrating data and technology. This team’s work is integral to New Visions’ direct support to nearly 400 public NYC high schools and more than 200,000 students in modernizing their tech infrastructure to improve the responsiveness and quality of operations, instruction, and student support.
The problems we are solving are challenging and interesting and our solutions have an immediate impact on students and staff at urban schools in NYC. We are looking for an engineer excited about public service and the prospect of joining a fun and growing team in an open, collaborative, and diverse environment.
Who you are
You are passionate about mission-driven technical work that has a tangible and immediate impact on opportunities and outcomes for young people.- You are a strategic and analytical thinker with a natural curiosity for investigating issues and communicating insights.- You are detail-oriented with a commitment to code quality and accuracy.- You are collaborative and team-oriented with a strong sense of collective responsibility.- You are dedicated to continuous learning and skill-building, seeking out opportunities to develop your own new skills and to mentor team members in their professional growth.
What you’ll do
Develop and test software:- Develop flexible and well-structured architectures and APIs suitable for our real-time deployment.- Contribute ideas for new features and proactively identify areas for improvement.- Write clean, testable, scalable, and well-documented code.- Write robust, thorough and thoughtful software tests (unit and integration).
Provide software support:- Systematically debug user and system reported problems across all environments, using modern debugging techniques and tools.- Proactively identify potential problems, recommend solutions, and contribute to implementation of fixes.
Collaborate with Product, Design, and Quality Assurance teams:- Develop domain knowledge through working with our product management and design teams, which will enable you to understand our user community and subsequently apply knowledge to your systems development and support responsibilities.- Participate in product requirement review and task sizing/estimation.
Provide effective leadership and communication:- Support the implementation of smart practices, protocols and technologies.- Proactively communicate with your team when there are blockers and work together to identify solutions.- Actively participate in architecture, engineering, and requirements planning meetings.- Provide and receive constructive feedback.- Mentor junior developers.- Provide leadership around continuous integration and test driven development techniques and best practices to improve the stability of both our existing and future tools.
Required Experience- A minimum of 2 years of experience developing production grade software in a cross team collaboration setting.- 1+ years experience working in a continuous software delivery environment (agile / kanban).- 1+ year experience with software testing.- Undergraduate or graduate study in related field, or any equivalent combination of experience, education, and/or training in the software development field.- Undergraduate or graduate study in related field, or any equivalent combination of experience, education, and/or training in the software development field.
Nice to have- Experience in an education / ed-tech / non-profit related field- Familiarity with design patterns (object oriented, singleton, subscriber/observer, functional programming, promises)- Familiarity with CircleCI or comparable continuous integration platforms- Familiarity with JS utility libraries (lodash)- Familiarity with JS testing frameworks (jasmine, lab)- Familiarity with JS build tools (webpack)- Typescript- NGRX- GraphQL
New Visions for Public Schools is an Equal Opportunity Employer.Apply now