Position Overview:Verra Mobility is seeking a Senior Software Developer candidate to design, develop, modernize, and support enterprise applications across both modern and legacy technology stacks. The ideal candidate is a strong hands-on engineer who can build new cloud-native applications using C#, modern .NET, React, microservices, APIs, and micro frontends, while also maintaining and incrementally modernizing legacy applications built with .NET Framework, C#, and ASP.NET. This role requires strong software design skills, practical application of SOLID principles and design patterns, effective use of AI-assisted/code-generation tools, and the ability to mentor other engineers and raise engineering standards across the team.
Essential Responsibilities:- Design and develop scalable, secure, maintainable applications using C#, modern .NET Core, REST APIs, React, microservices, and micro frontend architectures.
- Translate business and product requirements into effective technical designs, APIs, services, components, data models, and integration solutions.
- Apply SOLID principles, clean architecture, separation of concerns, dependency injection, domain-driven design concepts, and appropriate software design patterns.
- Design services with appropriate boundaries, minimizing coupling while supporting independent development, testing, deployment, and scaling.
- Build and deploy applications in a cloud environment, using cloud-native services, containers, CI/CD, configuration management, logging, monitoring, and observability
- Develop and integrate RESTful APIs, asynchronous messaging/events, and third-party/external system integrations.
- Navigate the iterative development and release management processes within the Scrum framework.
- Collaborate closely with Product Managers, Tech Leads, Architects, QA, DevOps, application support, security, and other engineering teams in an Agile/Product Operating Model
- Mentor junior and mid-level developers in software design, coding standards, debugging, testing, AI-assisted development, and engineering best practices.
- Troubleshoot complex production issues, perform root-cause analysis, and implement sustainable corrective and preventive solutions.
- Develop and maintain comprehensive technical documentation.
- Take ownership of assigned capabilities from technical design through development, testing, deployment, production validation, and ongoing support.
Qualifications:- Bachelor's degree in Computer Science, Information Technology, or Engineering (or equivalent experience).
- Typically, 10+ years of professional software development experience, with substantial hands-on experience developing enterprise applications using C# and .NET.
- Strong experience designing and developing full-stack enterprise applications rather than primarily maintaining existing applications.
- Demonstrated ability to independently take a complex requirement from analysis and technical design through implementation and production deployment.
- Excellent communication (written & verbal), knowledge sharing, and collaboration skills.
- Experience within team environments and Agile project methodologies is a must.
Technical Expertise:- Strong hands-on expertise with C#, modern .NET Core, ASP.NET Core, Web API, RESTful services, dependency injection, asynchronous programming, LINQ, Entity Framework/EF Core, and enterprise application development.
- Strong experience with React, JavaScript/TypeScript, HTML5, CSS, component-based development, state management, API integration, and modern frontend development. Experience with micro frontends is strongly preferred.
- Demonstrated ability to design applications using SOLID principles, clean code, design patterns, layered/clean architecture, microservices, API-first design, event-driven concepts, domain modeling, resiliency patterns, and loosely coupled architectures.
- Experience developing and operating applications in a public cloud environment-Azure preferred-including CI/CD pipelines, containers, cloud services, application configuration, secrets management, monitoring, logging, and observability.
- Strong SQL/PLSQL and relational database skills, preferably SQL Server, along with experience designing data access layers, integrations, APIs, messaging/event-based integrations, and performance-efficient database interactions.
- Maintain a solid understanding of security practices, including authentication and authorization services.
- Strong experience with automated unit testing, mocking, integration testing, API testing, code-quality practices, static analysis, secure coding, and automated quality gates.
- Create, update, and enhance Stored Procedures, SSRS reports, and SSIS packages.
- Demonstrated ability to effectively use generative AI and code-generation tools throughout the SDLC-not simply generate code-including requirement clarification, technical design, implementation, refactoring, test generation, debugging, documentation, and PR/code review.