Analyze business, functional, and technical requirements and translate them into software solutions
Review project specifications, workflow diagrams, process flows, and system documentation to determine application requirements and technical approaches
Design, develop, modify, test, implement, and maintain software applications, interfaces, integrations, and supporting system components
Develop application code, scripts, database objects, and automated processes based on business and technical requirements
Develop and maintain APIs, data interfaces, integrations, and data exchange processes supporting customer communications and related systems
Create, modify, and optimize database queries, stored procedures, and data models to support application performance and functionality
Perform unit, integration, and system testing and support user acceptance testing activities
Troubleshoot and resolve software defects, application issues, integration problems, and production incidents
Monitor application performance and implement or recommend improvements to enhance reliability, scalability, and maintainability
Support software releases, upgrades, patches, deployments, and application lifecycle management activities
Develop and maintain technical documentation, system specifications, workflow diagrams, operating procedures, and user support materials
Collaborate with business stakeholders, project managers, business analysts, architects, developers, system administrators, and operational personnel throughout the software development lifecycle
Participate in Agile, Scrum, DevSecOps, and continuous improvement activities
Follow applicable cybersecurity requirements, technology standards, development practices, and governance policies
Provide production support and technical assistance for customer alerting and related applications
Support application modernization initiatives, technology upgrades, systems integration, and system enhancement efforts
Conduct knowledge transfer sessions and maintain documentation supporting operational continuity and long-term system maintenance
Prepare status updates, technical reports, analyses, and recommendations as requested
Coordinate with technical resources to support project objectives and operational requirements
Perform other related technical duties supporting the operation, maintenance, enhancement, and modernization of the platform and associated systems
Bachelor’s degree in Computer Science, Information Technology, Information Systems, Software Engineering, or a related technical discipline. Relevant additional experience may be considered in place of education requirements
Minimum of eight (8) years of professional experience in application development, systems analysis, software programming, application maintenance, or related information technology disciplines
Minimum of five (5) years of experience developing, modifying, testing, implementing, and supporting enterprise software applications
Hands-on software development experience with .NET Core and Node.js
Experience designing, developing, and working with databases using Microsoft SQL Server and/or NoSQL technologies
Demonstrated experience analyzing business and technical requirements and translating them into software solutions
Experience troubleshooting and resolving software defects, application issues, and system performance problems
Experience creating and maintaining technical documentation, workflow diagrams, system specifications, and user support materials
Strong verbal and written communication skills with the ability to work effectively with technical and non-technical stakeholders
Ability to work independently and collaboratively within a team environment
Experience with software development lifecycle (SDLC) methodologies, including requirements analysis, design, development, testing, deployment, and maintenance
Experience developing and supporting web-based and enterprise applications
Experience developing, supporting, or integrating APIs, web services, and system interfaces
Experience with application testing, debugging, issue resolution, and performance optimization
Experience with source code repositories and version control tools such as Git or similar technologies
Experience implementing and supporting secure application development practices
Experience supporting transit, transportation, public-sector, or government organizations
Experience with GraphQL, OpenTripPlanner (OTP), GTFS, GTFS-Realtime, or related transit technologies
Experience working within Agile, Scrum, DevSecOps, or CI/CD environments
Experience with Microsoft Azure cloud technologies
Experience supporting application modernization, systems integration, and enterprise technology initiatives
Industry certifications related to software development, cloud technologies, Agile methodologies, or system administration