Senior Software Developer – Microsoft Azure & .NET
Summary
Contract senior developer role (via Upstaff) for the Government of Ontario: modernizing the Victim Notification System and integrating a vendor SaaS platform with the OTIS offender system. Day to day: Azure cloud development with .NET Core (C#, MVC, Entity Framework), ReactJS frontends, Azure SQL database work, and Azure DevOps CI/CD — 100% onsite in Toronto.
- Design, develop, implement, maintain, and enhance stable, secure, scalable web and desktop applications using Microsoft Azure and Microsoft .NET technologies.
- Lead full software development lifecycle activities, including requirements analysis, technical design, development, prototyping, testing, deployment, maintenance, and support.
- Develop and maintain applications using .NET Core, C#, ASP.NET MVC, Entity Framework, ReactJS, HTML5, CSS3, JavaScript, and related Microsoft technologies.
- Design and implement application architectures and technical solutions for Azure cloud environments.
- Develop and maintain solutions using Azure Web Apps, Azure Functions, and Azure Logic Apps.
- Apply appropriate architectural patterns, coding standards, reusable components, and software development best practices.
- Work with Microsoft Web Services, Windows Communication Foundation (WCF), and Windows Presentation Foundation (WPF), as applicable to the solution.
- Support application modernization, integration, configuration, and technical implementation activities.
- Use Microsoft development tools and environments, including Visual Studio up to Visual Studio 2022.
- Support the technical integration between the Offender Tracking Information System (OTIS) and the vendor-provided VNS SaaS platform.
- Translate integration requirements and technical specifications into reliable, secure, and testable solution components.
- Collaborate with vendor technical teams and internal technology partners to configure interfaces, resolve integration issues, and manage technical dependencies.
- Assess integration challenges, investigate root causes, and implement effective solutions with minimal disruption to business operations.
- Ensure that integration and application components comply with applicable security, privacy, accessibility, and government technology standards.
- Develop, configure, deploy, and maintain cloud-based applications and services using Microsoft Azure.
- Implement and maintain Azure DevOps processes, including Team Foundation Server (TFS), source control, version management, and Azure build and release pipelines.
- Design, configure, and support continuous integration and continuous delivery (CI/CD) pipelines for automated builds, testing, and deployments.
- Establish best practices for local development, automated testing, code reviews, quality assurance, and deployment management.
- Develop and maintain .NET Core solutions hosted on Azure Web Apps and Azure Functions.
- Support Azure Logic Apps and other Azure services required for application integration and workflow automation.
- Monitor application performance, troubleshoot deployment issues, and support production readiness and operational stability.
- Design, build, model, configure, and maintain database management systems, particularly Microsoft Azure SQL Database.
- Develop and maintain data models, database schemas, relationships, and data structures to support application functionality and reporting requirements.
- Perform database tuning, optimization, maintenance, and performance monitoring.
- Develop and document database backup and restoration procedures.
- Establish database user administration procedures using Azure Active Directory (Azure AD), where applicable.
- Conduct capacity planning, forecasting, and database performance assessments.
- Establish appropriate data masking procedures for production-to-test data replication.
- Perform data migration activities and validate data integrity, consistency, and accuracy.
- Collaborate with development teams on database design, data access patterns, and application performance improvements.
- Support data modelling, reporting, dashboard development, and related analytical requirements.
- Support System Integration Testing (SIT), User Acceptance Testing (UAT), performance testing, and deployment readiness assessments.
- Develop, execute, and maintain unit, integration, regression, and automated test cases, as appropriate.
- Analyse defects, troubleshoot complex technical issues, identify root causes, and implement corrective fixes.
- Perform code reviews and ensure adherence to established coding, testing, security, and quality standards.
- Collaborate with the SaaS vendor, business stakeholders, and internal technical teams to resolve defects and validate solutions.
- Ensure application functionality, integrations, performance, and security meet business and technical requirements.
- Develop and maintain responsive, accessible, and user-friendly interfaces using HTML5, CSS3, JavaScript, and ReactJS.
- Apply modern frontend development practices and, where appropriate, other JavaScript frameworks such as Angular or Vue.js.
- Develop prototypes and validate proposed application designs and user interface functionality.
- Support data modelling, reporting, dashboards, and presentation of application data.
- Apply accessibility, usability, web standards, and secure coding practices throughout the development lifecycle.
- Ensure that developed solutions comply with applicable Government of Ontario accessibility and technology standards.
- Analyse complex business and technical problems and recommend cost-effective, sustainable IT solutions.
- Assess client information and system needs and translate them into technical designs that improve program and service delivery.
- Plan, schedule, execute, monitor, and evaluate application development, technical implementation, operational support, and related activities.
- Identify technical risks, dependencies, performance constraints, and implementation issues, recommending appropriate mitigation strategies.
- Research emerging technologies, development approaches, architectural patterns, and cloud capabilities.
- Support experimentation, technical evaluation, and continuous improvement in collaboration with the project team.
- Collaborate effectively with ministry partners, SaaS vendors, technology partners, infrastructure teams, security specialists, business stakeholders, and application support teams.
- Communicate technical concepts, issues, risks, and recommendations clearly to technical and non-technical audiences.
- Contribute to technical design documentation, architecture documentation, development standards, deployment procedures, and operational support materials.
- Work effectively within a high-impact, cross-functional Agile team.
- Maintain project code and documentation in the designated JTS Team Foundation Server (TFS) repository, ensuring proper version control and documentation practices.
- Provide structured knowledge transfer to the designated full-time employee (FTE) before the assignment concludes.
- Participate in weekly knowledge-transfer sessions and ensure all relevant design decisions, source code, technical documentation, and operational knowledge are transferred.
Requirements
- 10+ years of experience building and maintaining stable, secure, and scalable web and desktop applications using Microsoft Azure cloud services and Microsoft .NET technologies and tools.
- Demonstrated full software development lifecycle experience, including design, development, implementation, testing, deployment, and maintenance using:
- Microsoft Azure
- .NET / .NET Core
- C# and ASP.NET MVC
- Entity Framework
- ReactJS
- HTML5, CSS3, and JavaScript
- Azure DevOps
- Azure Web Apps
- Azure Functions
- Azure Logic Apps
- Demonstrated experience implementing and supporting DevOps practices and CI/CD pipelines, including automated builds, testing, deployment, source control, and release management.
- 5+ years of experience designing, building, modelling, configuring, and maintaining database management systems, including database design, administration, performance tuning, monitoring, backup and recovery, and data migration.
- Experience in data modelling, reporting, and dashboard development.
- Demonstrated experience working with diverse stakeholders and supporting cross-functional collaboration involving ministry partners, vendors, technology partners, and high-impact project teams.
- Experience applying industry-standard web development, accessibility, architectural, security, and privacy practices.
- Microsoft Azure cloud architecture and solution implementation.
- Azure SQL Database administration, performance tuning, capacity planning, monitoring, backup and recovery, and data masking.
- Azure Active Directory user administration.
- .NET Core application development using C#, MVC, and Entity Framework.
- Azure Web Apps, Azure Functions, and Azure Logic Apps.
- Azure DevOps, Team Foundation Server (TFS), and automated CI/CD pipelines.
- ReactJS and other modern JavaScript frameworks, including Angular and Vue.js.
- Microsoft Web Services, Windows Communication Foundation (WCF), and Windows Presentation Foundation (WPF).
- Visual Studio development environments, including versions up to Visual Studio 2022.
- Enterprise application integration, SaaS implementation, system modernization, and API or web service integration.
- Agile software development methodologies, prototyping, code reviews, automated testing, and quality assurance.
- Experience supporting System Integration Testing, User Acceptance Testing, performance testing, and defect remediation.
- Knowledge of Government of Ontario Information and Technology Standards (GO-ITS), accessibility requirements, security controls, privacy requirements, and enterprise governance.
- Previous experience delivering application development projects in the Ontario Public Service (OPS), Justice Technology Services (JTS), or comparable public-sector enterprise environments within the last three years.
- Azure cloud and Microsoft .NET application development.
- Full lifecycle development using C#, MVC, Entity Framework, ReactJS, HTML5, CSS3, JavaScript, Azure DevOps, Azure Web Apps, Azure Functions, and Azure Logic Apps.
- Application architecture, cloud implementation, and DevOps CI/CD.
- Database design, modelling, development, and administration.
- Experience with WCF, WPF, Microsoft Web Services, Visual Studio, and TFS.
- High-quality coding using Microsoft Azure, .NET, C#, MVC, Entity Framework, ReactJS, and related technologies.
- Frontend JavaScript framework development.
- Prototyping and Agile development.
- Secure coding, accessibility, and industry-standard web development practices.
- HTML5, CSS3, XML, and frontend framework development.
- ReactJS, Angular, Vue.js, or comparable technologies.
- Prototyping and Agile delivery.
- Data modelling, reporting, and dashboard development.
- Accessibility, usability, and web security practices.
- Collaboration with ministry stakeholders, vendors, technology partners, and cross-functional teams.
- Application of web, architecture, security, and technology standards.
- Ability to research, learn, and adopt new technologies and development techniques.
- Strong communication, interpersonal, analytical, and problem-solving skills.
- Ability to contribute effectively as a team player in a high-impact environment.
- Recent experience, within the last three years, working as a Software Developer on application development projects in OPS, JTS, or comparable enterprise public-sector environments.
- The role is currently designated as 100% onsite at 21 College Street, Toronto, Ontario, five days per week.
- The standard working schedule is 7.25 hours per day, Monday through Friday, excluding breaks, within the hours of 8:00 AM to 5:00 PM.
- The anticipated assignment period is November 2, 2026, to July 30, 2027, subject to change based on security clearance and contract-signing timelines.
- The VOR Master Service Agreement expires April 5, 2027. Under the applicable six-month survival clause, the Statement of Work may continue until October 5, 2027, if operationally required and subject to the contract's remaining days, funds, and extension provisions.
- The consultant must maintain appropriate source code and documentation in the designated JTS TFS repository and complete knowledge transfer to the assigned FTE before the assignment ends.