Senior Software Developer - Full Stack
Summary
Senior full-stack developer building enterprise platform services for government registries, permitting, payments, and identity — designing Java microservices, REST APIs, and SQL/Oracle data layers, with secure integrations (JWT, OAuth 2.0, SSL), automated testing, and Azure DevOps pipelines.
Role Overview
The Senior Software Developer – Full Stack will design, develop, integrate, test, deploy, and maintain enterprise platform capabilities across frontend, backend, API, workflow, integration, and data-access layers.
The role involves developing reusable platform services and implementing integrations to support government registries, permitting, forms, payments, notifications, documents, identity, and other business-facing functions.
Working collaboratively with architects, product managers, business analysts, UX designers, QA specialists, DevOps engineers, security and privacy teams, and ministry stakeholders, the successful candidate will translate approved requirements and technical designs into secure, scalable, reliable, and maintainable software solutions.
The candidate will also provide technical leadership through solution design, code reviews, automated testing, troubleshooting, documentation, mentoring, and production support.
Key Responsibilities
- Design, develop, test, deploy, and maintain enterprise-grade full-stack applications and platform services.
- Develop Java-based applications, micro services, REST APIs, and RESTful web services.
- Build and maintain frontend, backend, middleware, workflow, integration, and data-access components.
- Design and optimize database objects, SQL queries, data transformations, and conversion routines.
- Implement secure application integrations using JWT, OAuth 2.0, SSL certificates, identity management, and secure communication protocols.
- Develop reusable components and services using established architectural patterns and software engineering standards.
- Create and maintain automated unit, integration, API, database, and UI tests.
- Participate in solution design walkthroughs, code reviews, impact assessments, estimation, sprint planning, and release planning.
- Work with Azure DevOps or comparable tools for source control, work management, builds, testing, and deployment pipelines.
- Troubleshoot and resolve application issues across development, deployment, migration, conversion, and production environments.
- Review and maintain build scripts, configuration files, installation procedures, and deployment scripts.
- Collaborate with multidisciplinary technical and business teams throughout the software development lifecycle.
- Provide post-implementation support and improve application performance, reliability, scalability, and maintainability.
- Prepare and maintain technical, system, deployment, user, and support documentation.
- Provide technical guidance, mentor team members, and ensure adherence to established development and quality standards.
Required Experience and Qualifications
A. Core Technical Requirements
- 10+ years of experience designing and developing large-scale, multi-client web applications, or equivalent senior-level development experience.
- Extensive hands-on experience in Java development with Oracle, SQL, or comparable relational database technologies.
- Strong experience designing and developing REST APIs and RESTful web services.
- Practical experience with micro service architecture and enterprise application development.
- Experience building Internet-ready applications using object-oriented programming principles.
- Strong understanding of design patterns, clean code, refactoring, and maintainable software architecture.
- Experience translating technical specifications into functional, tested applications.
- Experience with structured development methodologies and Agile delivery approaches.
B. Database and Integration Skills
- Experience with relational and hierarchical database technologies.
- Strong SQL skills, including query development, optimization, and performance tuning.
- Experience developing data-access components, middleware, gateways, and communication protocols.
- Experience with enterprise system integrations and reusable integration components.
- Experience with data migration, conversion, and transformation activities.
C. Security and Authentication
- Experience implementing application security gateways and secure communications.
- Knowledge of JSON Web Tokens (JWT).
- Experience with OAuth 2.0 and authentication/authorization mechanisms.
- Experience working with SSL certificates and secure application connectivity.
- Experience integrating identity and access management capabilities into enterprise applications.
D. DevOps, Testing, and Deployment
- Experience with Azure DevOps or comparable tools for source control, work tracking, builds, testing, and deployment.
- Experience writing and maintaining automated unit, integration, API, database, and UI tests.
- Experience reviewing and modifying build scripts, configuration, installation, and deployment processes.
- Experience debugging, troubleshooting, and supporting complex applications through implementation and production.
Technical and Professional Competencies
- Strong analytical thinking and structured problem-solving skills.
- Excellent written and verbal communication skills.
- Ability to participate in and present technical design walkthroughs.
- Strong collaboration skills across business, architecture, development, QA, security, and DevOps teams.
- Ability to assess technical impacts and make informed implementation decisions.
- Experience conducting code reviews and maintaining software quality.
- Ability to work under pressure, adapt to changing requirements, and meet demanding deadlines.
- Strong documentation, estimation, planning, and technical decision-making skills.
Requirements
Evaluation Criteria
Core Skills and Experience
- 10+ years of relevant senior software development experience.
- Strong Java and relational database development expertise.
- Experience with REST APIs, micro services, and enterprise web applications.
- Experience with object-oriented design, design patterns, clean code, automated testing, Agile methodologies, and Azure DevOps or equivalent tools.
Technical Skills and Experience
- JWT, OAuth 2.0, SSL certificates, secure communications, and identity integration.
- Object-oriented design, refactoring, software development methodologies, and application architecture.
- Relational and hierarchical databases, SQL tuning, middleware, gateways, and enterprise integration.
- Application deployment, installation scripts, troubleshooting, migration, production support, and documentation.
Soft Skills
- Communication, analytical thinking, problem-solving, decision-making, interpersonal skills, and negotiation.
- Ability to present technical ideas and collaborate effectively with functional and technical teams.
- Ability to manage competing priorities, work under pressure, adapt to change, and meet deadlines.
Public-Sector Experience
- Knowledge of Ontario Public Service (OPS) development standards, governance, security, accessibility, information management, and documentation expectations.
Must-Have Requirements
Candidates must demonstrate:
- At least 10 years of experience developing large-scale, multi-client web applications or equivalent senior development experience.
- Extensive hands-on Java development experience with Oracle, SQL, or comparable relational databases.
- Strong experience with REST APIs, RESTful web services, microservice architecture, and Internet-ready applications.
- Practical experience with JWT, OAuth 2.0, SSL certificates, secure communications, and identity integration.
- Experience with relational and hierarchical databases, SQL tuning, middleware, gateways, communication protocols, data conversion, and migration.
Nice-to-Have Requirements
- Previous experience working with the Ontario Public Service or other public-sector organizations.
- Familiarity with public-sector governance, accessibility, security, information-management, and documentation standards.