Director of Software Engineering
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+18 more
Job description
The Director of Software Engineering provides both strategic and technical leadership for NYCJA’s enterprise application portfolio, leading engineering execution across the full software development lifecycle in partnership with business stakeholders, product owners, and IT leadership.
Reporting to the Executive Director of Information Technology, the Director leads a growing team of software engineers and is responsible for managing both internal staff and external development partners. The role is accountable for application architecture, engineering quality, platform modernization, delivery excellence, and the long-term sustainability of the Agency’s software platforms.
This is a technical leadership position. While the Director delegates day-to-day implementation to engineering teams, they remain actively engaged in architecture, technical design, production readiness, and the resolution of complex engineering challenges. Success in this role requires balancing strategic leadership with the technical depth necessary to guide engineering decisions and ensure high-quality outcomes.
Primary Responsibilities
- Lead the design, delivery, and operation of NYCJA’s enterprise application platforms.
- Provide engineering leadership across the full software development lifecycle in partnership with product owners, business stakeholders, and other IT teams.
- Build, develop, and retain a high-performing Software Engineering team through hiring, coaching, performance management, succession planning, and professional development.
- Participate directly in architecture, system design, and key technical decision-making.
- Establish and enforce engineering standards for software design, code quality, testing, CI/CD, security, and development practices.
- Work alongside engineering teams to diagnose and resolve complex production, performance, reliability, and integration issues.
- Define and execute the application modernization strategy, including cloud-native architecture, API-first design, and containerized platforms.
- Partner with Infrastructure & Security to ensure applications meet availability, monitoring, deployment, disaster recovery, and operational support requirements for 24/7 business operations.
- Evaluate architectural trade-offs involving performance, security, reliability, maintainability, scalability, and cost.
- Manage software vendors, consultants, and external development partners to ensure quality delivery and effective use of resources.
- Evaluate and adopt emerging technologies, including AI-assisted software engineering tools that improve productivity, software quality, security, and operational efficiency.
- Maintain sufficient technical depth across the application portfolio to guide engineering decisions and hold teams and vendors accountable for technical outcomes.
- Contribute to overall IT strategy in partnership with the Data Platform, Infrastructure & Security, and Solution Delivery teams.
- Champion NYCJA’s mission, values, and collaborative culture.
Ideal Candidate
The ideal candidate is an experienced engineering leader who combines strong people leadership with technical credibility and delivery excellence.
They provide strategic direction for engineering practices and platform evolution while maintaining the technical depth to evaluate architecture, challenge assumptions, assess engineering trade-offs, and ensure solutions are scalable, secure, reliable, and aligned with Agency objectives.
They are comfortable engaging directly with engineers on architecture, code quality, incidents, and technical debt while empowering technical leads and development teams to own day-to-day execution. They communicate effectively across technical and non-technical audiences and build strong partnerships across application, data, infrastructure, and business teams.
Requirements
- 10+ years of progressively responsible software development experience supporting production applications.
- 5+ years leading software engineering teams with responsibility for delivery, hiring, coaching, performance management, and organizational outcomes.
- Experience managing teams consisting of employees, consultants, and external development partners.
- Recent hands-on technical leadership experience, including architecture, design reviews, implementation guidance, and production troubleshooting.
- Ability to review source code, APIs, system designs, deployment configurations, and data flows.
- Experience owning enterprise application platforms in production, including managing technical debt and long-term platform evolution.
- Experience supporting highly available or mission-critical business systems.
- Strong experience with cloud platforms and distributed systems, preferably Microsoft Azure.
- Experience with containerized and cloud-native environments such as Docker and Kubernetes.
- Experience integrating enterprise applications and third-party platforms.
- Demonstrated ability to mentor and develop engineers through direct technical leadership.
- Excellent written and verbal communication skills with both technical and business audiences.
- Experience working in regulated, public sector, healthcare, financial, or other high-accountability environments is preferred.
- Bachelor’s or Master’s degree in Computer Science, Software Engineering, Information Systems, or a related field, or equivalent professional experience.
- Ability to successfully pass a background investigation and work a hybrid schedule.
Internal applicants must have completed at least one year in their current position and be in good standing, with no disciplinary action within the previous 90 days.
Preferred Technical Experience
Experience with C#/.NET, modern web development frameworks, Microsoft Azure, RESTful APIs, relational databases, containerization, Kubernetes, and AI-assisted software engineering tools. Candidates with comparable experience using other modern technology stacks are encouraged to apply if they can demonstrate the ability to quickly adapt to a Microsoft-centered environment.
Benefits & conditions
3.83.8 out of 5 stars New York, NY Hybrid work $155,000 - $185,000 a year, Pulled from the full job description
- Health insurance
- Retirement plan
- Vision insurance
- Dental insurance
- Employee assistance program
- Paid holidays, Salary: $155,000-$185,000 annually, commensurate with experience.
Benefits: Comprehensive health, dental, and vision coverage; Employee Assistance Program (EAP); four weeks of paid vacation; paid holidays; retirement plan with employer contributions; and ongoing professional development opportunities.
Schedule:
HYBRID WORK SCHEDULE: M-F 9AM-5PM (T-Thurs in office/ Mon & Fri remote)
CJA VALUES
Each employee at CJA is guided by these values in our work:
- Commitment: We are active partners in criminal justice reform.
- Fairness: We are guided by fairness and the presumption of innocence for those who are detained and work with integrity and without bias to protect the privacy and interest of court-involved people and their families.
- Innovation: We value curiosity and use innovative techniques in research, pilot programs, and engaging justice-involved communities to reduce unnecessary pretrial detention.
CJA is seeking applicants who pursue professional development pathways by participating in educational opportunities, reading professional publications, maintaining professional networks, and engaging with professional associations
The New York City Criminal Justice Agency is an Equal Opportunity Employer
About the company
The New York City Criminal Justice Agency (CJA) is a not-for-profit service and research organization that operates in partnership with the New York City Mayor’s Office of Criminal Justice. CJA is the City’s main pretrial services agency, combining operations, pilot projects, and research under one roof. CJA utilizes procedural justice practices to provide pretrial services to over 100,000 arrested annually in New York City. Information collected about these arrestees and subsequent case processing is maintained in the agency’s internal and externally shared database systems, which are used to conduct descriptive and evaluation research on arrestee characteristics, case processing and court outcomes, and on issues and potential reforms to criminal justice policy in New York City. CJA’s programs operate in the criminal courts and detention facilities 24 hours a day seven days a week within the 5 boroughs of NYC, employing over 300 employees, citywide.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Talks and stories from around this role — technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
Fully Remote Software Engineer Jobs
Is Software Engineering Over-Saturated?
How to Answer the Interview Question: “Why Do You Want to Be a Software Engineer?”
Where to Find Entry-Level Software Engineering Jobs