Senior Software Developer – Full Stack (Java)
Summary
Upstaff is hiring a senior full-stack Java developer (10+ years) to build enterprise web applications and reusable platform services for Ontario's Government Services Integration Cluster. Work spans Java microservices, REST APIs, Oracle/SQL data layers, secure integrations (JWT, OAuth 2.0, SSL), and Azure DevOps pipelines for government programs.
- Design, develop, test, deploy, and maintain enterprise-scale, multi-client web applications and reusable platform services.
- Develop and maintain Java-based applications, microservices, REST APIs, RESTful web services, frontend and backend components, workflows, and integration services.
- Translate approved business requirements, technical specifications, and architectural designs into secure, tested, production-ready software.
- Develop detailed programming specifications and perform coding, compilation, debugging, unit testing, documentation, and application maintenance.
- Design and implement secure APIs, authentication and authorization mechanisms, identity integrations, security gateways, and secure communications using JWT, OAuth 2.0, and SSL certificates.
- Design, develop, and maintain database objects, SQL queries, data-access components, data transformations, and conversion or migration routines using Oracle, SQL, and comparable relational database technologies.
- Apply object-oriented programming principles, design patterns, clean-code practices, refactoring, and microservices architecture to improve extensibility, scalability, and maintainability.
- Build and maintain enterprise integrations involving middleware, API gateways, communications protocols, registries, permitting, forms, payments, notifications, documents, identity, and other business-facing services.
- Develop and maintain automated unit, integration, API, database, and user-interface tests to ensure application quality and reliability.
- Use Azure DevOps or comparable tools for work management, source control, build automation, testing, release management, and deployment pipelines.
- Review, modify, test, and troubleshoot build scripts, configuration files, installation scripts, and deployment processes.
- Participate in technical design walkthroughs, architecture discussions, impact assessments, code reviews, estimation, backlog refinement, sprint planning, and release planning.
- Identify and resolve technical issues related to development, integration, implementation, conversion, migration, deployment, and production operations.
- Analyse application performance, troubleshoot database and integration issues, and implement improvements to reliability, scalability, security, and maintainability.
- Provide implementation, migration, conversion, post-implementation, and ongoing production support for complex enterprise applications.
- Collaborate with business and technical stakeholders to clarify requirements, document technical decisions, and ensure solutions align with approved standards and architecture.
- Prepare and maintain technical specifications, system documentation, deployment instructions, support procedures, and other required project documentation.
- Provide technical guidance, conduct knowledge sharing, and support development quality while meeting project deadlines and changing priorities.
- Ensure compliance with applicable government development standards, security requirements, accessibility expectations, information-management practices, and documentation procedures.
- Minimum 10 years of experience designing and developing large-scale, multi-client web applications or equivalent senior software development experience.
- Extensive hands-on experience in Java application development with Oracle, SQL, or comparable relational database technologies.
- Significant experience designing, developing, and implementing REST APIs and RESTful web services.
- Demonstrated experience with microservices architecture and developing secure, scalable, Internet-ready applications.
- Proven ability to translate technical system specifications into working applications, including programming specifications, coding, compilation, debugging, documentation, maintenance, and unit testing.
- Strong understanding of object-oriented programming, design patterns, clean code, refactoring, structured development methodologies, and Agile delivery practices.
- Experience using Azure DevOps or comparable tools for source control, work tracking, automated builds, testing, and deployment pipelines.
- Hands-on experience with security gateways and protocols, including:
- JSON Web Tokens (JWT).
- OAuth 2.0.
- SSL certificates.
- Secure communications.
- Authentication, authorization, and identity integration.
- Strong knowledge of relational and hierarchical database technologies, query languages, SQL tuning, and data-access components.
- Experience with middleware, API gateways, enterprise integrations, communications protocols, and data migration or conversion activities.
- Experience with application configuration, installation, deployment scripts, troubleshooting, and post-implementation support.
- Ability to create and maintain automated tests and participate in technical design reviews, code reviews, and impact assessments.
- Strong written and verbal communication, analytical thinking, systematic problem-solving, decision-making, interpersonal, and negotiation skills.
- Ability to explain technical concepts, develop and present ideas, and participate effectively in technical design walkthroughs.
- Demonstrated ability to work collaboratively with business stakeholders, subject-matter experts, architects, developers, testers, and other IT professionals.
- Ability to work under pressure, adapt to changing priorities, manage competing demands, and deliver high-quality results within aggressive timelines.
- Knowledge of Ontario Public Service (OPS) development standards, processes, governance, security, accessibility, information management, and documentation expectations.
