Jump to main content.

The Official Careers Website of the City of New York

Search

Senior Software Engineer

Senior Software Engineer

  1. DEPARTMENT OF CITY PLANNING
Posted on: 01/25/2024
  1. Full-time

Location

MANHATTAN

  1. Exam may be required

Department

ITD-Application Service Mgmt

$107,281.00 – $120,190.00

Job Description

This vacancy has now expired.

THE AGENCY
The Department of City Planning (DCP) plans for the strategic growth and development of the City through ground-up planning with communities, the development of land use policies and zoning regulations applicable citywide and sharing its perspectives on growth and community needs with sister agencies in collaboration with the Office of Management and Budget (OMB).

DCP is a great place to work – cultivating intellectual inspiration, professional development, and creativity. Visit our website at www.nyc.gov/planning to access the full listing of job opportunities and to learn more about the agency’s services.

THE DIVISION
Information Technology Division’s (ITD) vision is to become a dynamic and vibrant technology delivery organization of the New York City government that leads business transformations and technology innovations to enable citizen-centric smart urban planning, while promoting a culture of collaboration, talent development, and equity. ITD is responsible for developing technology solutions to support agency needs and citywide asks, including City Charter mandates, grant funding requirements, and citywide geospatial services, and maintaining systems infrastructure and endpoint assets, to optimize operational efficiency, promote innovation, and collaborate with other city agencies to enhance service accessibility to citizens. The division provides necessary computing infrastructure and productivity-enhancing technology tools in a hybrid mode (on premise and in the cloud), to support DCP’s interdisciplinary staff across five boroughs, including planners, urban designers, project managers, and executive management. The division is comprised of experienced and talented software engineers, geographic specialists, service engineers, and technology leaders who specialize in managing system infrastructure, cyber security, geospatial data engineering, application services, and portfolio management.

The Application Engineering team within ITD is responsible for developing and maintaining web applications used by Planners and the public. Our applications make data more accessible and understandable, facilitate better planning decisions, and support essential public services provided by the agency. We believe in showcasing what can be achieved in government by a modern in-house engineering team. We leverage agile development processes, rapid prototyping, and human-centered design through collaboration with other teams and stakeholders.

THE ROLE
ITD is seeking a motivated, team-oriented, full-stack web developer to join the Application Engineering team at the Senior Software Engineer level to work on new projects and sustain our existing portfolio. The developer will participate in all aspects of web application development including the development of custom APIs, security & communications workflows, continuous integration, database development, frontend UI development, and client-side and server-side web mapping.

Our development team is enthusiastic about using Free and Open-Source Software (FOSS) in public sector software development, and using modern practices such as agile workflows, developing in the open, rapid prototyping, and human-centered design. We are always open to improving our approach and technology stack. Currently we mostly use Ember.js and React for frontend development, and Node.js frameworks such as Express and Nest for building APIs. Our code is open and hosted on GitHub and deployed to modern cloud providers.

Under supervision and general direction, with considerable latitude for the exercise of independent judgment, the Senior Software Engineers’ responsibilities include, but may not be limited to:

- Above all else, an open mind and a passion for experimentation and learning new technologies.
- Frontend development experience using modern JavaScript frameworks such as React, Ember, or Vue
- Ability to architect RESTful APIs using frameworks such as Express, Ruy on Rails, or Django
- An understanding of web accessibility best practices and implementation.
- Familiarity with test-driven development, and experience writing unit and end-to-end tests.
- Expertise with git and using platforms such as Gitlab or GitHub for collaboration.
- Experience with Typescript, Node.js and all aspects of the JavaScript ecosystem, npm module publishing, ES6, and code transpilation and bundling with tools such as Webpack, Parcel, or Vite.
- Experience with relational databases, particularly PostgreSQL, and knowledge of relational database best practices and domain modeling.
- Experience with spatial data and modern web mapping technologies, including PostGIS, Deck.gl, leaflet.js, Carto, MapboxGL, vector and raster tiles, and Geojson.
- Ability to write concise documentation and willingness to evangelize lessons learned both within the agency and the FOSS community at large.
- Experience configuring cloud services like Heroku, Netlify, DigitalOcean, Amazon Web Services, or Azure.
- Experience writing CI automations with tools like Github Actions or Circle CI.
- Experience participating in code reviews, pair programming, and architecture discussions.
- Experience and interest in mentoring more junior engineers.


Minimum Qualifications

(1) A baccalaureate degree from an accredited college, including or supplemented by twenty-four (24) semester credits in computer science or a related computer field and two (2) years of satisfactory full-time software experience in designing, programming, debugging, maintaining, implementing, and enhancing computer software applications, systems programming, systems analysis and design, data communication software, or database design and programming, including one year in a project leader capacity or as a major contributor on a complex project; or
(2) A four-year high school diploma or its educational equivalent and six (6) years of full-time satisfactory software experience as described in “1" above, including one year in a project leader capacity or as a major contributor on a complex project; or
(3) A satisfactory combination of education and experience that is equivalent to (1) or (2) above. College education may be substituted for up to two years of the required experience in (2) above on the basis that sixty (60) semester credits from an accredited college is equated to one year of experience. A masters degree in computer science or a related computer field may be substituted for one year of the required experience in (1) or (2) above. However, all candidates must have a four year high school diploma or its educational equivalent, plus at least one (1) year of satisfactory full-time software experience in a project leader capacity or as a major contributor on a complex project.
NOTE: In order to have your experience accepted as Project Leader or Major Contributor experience, you must explain in detail how your experience qualifies you as a project leader or as a major contributor. Experience in computer operations, technical support, quality assurance (QA), hardware installation, help desk, or as an end user will not be accepted for meeting the minimum qualification
requirements.
Special Note
To be eligible for placement in Assignment Level IV, in addition to the Qualification Requirements stated above, individuals must have one year of satisfactory experience in a project leader capacity or as a major contributor on a complex project in data administration, database management systems, operating systems, data communications systems, capacity planning, and/or on-line applications programming.


Preferred Skills

- Building RESTful APIs using the Swagger/OpenAPI specification - Common Infrastructure-as-Code tools such as Terraform - NoSQL databases such as MongoDB - Data analysis and engineering tools such as Python, Pandas, Dask, and Apache Airflow - Micro-service architectures and Domain Driven Design concepts - Microsoft Dynamics 365 CRM (or other vendor CRM), Sharepoint Online or Azure - Microsoft APIs like Graph API, SharePoint REST API, or Dynamics 365 OData API - Working in an agile, iterative development setting - Or interest in urban planning methodologies and NYC history
55a Program

This position is also open to qualified persons with a disability who are eligible for the 55-a Program. Please indicate at the top of your resume and cover letter that you would like to be considered for the position through the 55-a Program.
Public Service Loan Forgiveness

As a prospective employee of the City of New York, you may be eligible for federal loan forgiveness programs and state repayment assistance programs. For more information, please visit the U.S. Department of Education’s website at https://studentaid.gov/pslf/.
Residency Requirement

New York City Residency is not required for this position
Additional Information

The City of New York is an inclusive equal opportunity employer committed to recruiting and retaining a diverse workforce and providing a work environment that is free from discrimination and harassment based upon any legally protected status or protected characteristic, including but not limited to an individual's sex, race, color, ethnicity, national origin, age, religion, disability, sexual orientation, veteran status, gender identity, or pregnancy.

Job ID

607141

Title code

13632

Civil service title

COMPUTER SPECIALIST (SOFTWARE)

Title classification

Competitive-1

Business title

Senior Software Engineer

  1. Experienced (non-manager)

Number of positions

1

Work location

120 Broadway, New York, NY

  1. Technology, Data & Innovation
Search