Software Developer - Senior
Senior Software Developer for the Criminal Justice Digital Design (CJDD) modernization program, delivering secure, high-availability, high-performance Angular, RESTful API/Spring Boot, cloud-native and microservice solutions.
- Organization
- Justice Technology Services
- Location
- Toronto, Ontario
- Work arrangement
- On-site
- Employment type
- Contract
- Compensation
- $767/day
- Reference
- RQ11411
Overview
The Justice Technology Services - Digital Design Branch requires software developers with analysis / design / development experience of delivering highly-secure, high availability, high-performance and high-quality digital products based on Angular, Restful API / Spring Boot, Cloud-Native frameworks, TDD (Test Driven Development), Micro Service model, UI/UX and accessibility standard, CI/CD and test automation processes / tooling to build and enhance products for Criminal Justice Digital Design (CJDD) modernization program.
Successful candidates will work on various applications and integration endpoints including Criminal eIntake / eSearchWarrant / eHub, Digital Information Repository (DIR) and Integration workstreams.
This position is listed as Onsite, working 7.25 hours per calendar day, sometime between 8:00 AM and 5:00 PM (excluding breaks) Monday to Friday inclusive, unless otherwise identified.
The start date is subject to change based on security clearances and contract signing timelines.
Responsibilities
• Analysis, design, coding and unit testing of application capabilities and APIs using Restful API, Spring Boot Cloud-Native Angular technologies.
• Translate functional specifications into working, tested applications (Front-end User-Interface, Backend logic, and integration tier).
• Develop detailed programming specifications, user interface designs and prototypes.
• Write and/or generate code and compile data driven programs.
• Ensure compliance to security and accessibility standards / requirements.
• Conduct unit tests and debug code.
• Development - Writing and/or generating code, conducting unit tests on written code.
• Design and Documentation – Participate in creation of high-quality software design and documentation of SDLC phases.
• Support – Assist with troubleshooting production issues, analyze logs, on-call support, and day-to-day operations.
• Analyze business and functional requirements, lead/participate in JAD sessions and prepare required architecture documentation and provide relevant input / support of Enterprise Architecture artifacts for all checkpoints as required.
• Assist with system and user interface design and modifications (data & screen) as required.
• Transfer knowledge to team members and other personnel.
• Deliver product features (Product Backlog Items, User Stories, Non-Functional Requirements) from beginning to end (requirements, development, unit and integration testing) without supervision, and with effective collaboration.
Mandatory Qualifications
• At least 10 years of hands-on experience with software development, especially highly sensitive / secure, high performance, high availability Cloud solutions, including application performance analysis, modeling, and tuning.
• Must have extensive experience (5+ years) in development of enterprise-grade applications using Restful API and Angular frameworks, Micro Service Model, etc, and API documentation / testing.
• Must have demonstrated experience (5+ years) in Front-end / User Interface development including proficiency in HTML 5, CSS3, JavaScript / TypeScript, responsive web design and cross-browser compatibility, and deep knowledge of Angular Framework like components, services, modules, decorators, routing, and the latest Angular features and best practices.
• Experience with enterprise integration technologies, such as JMS, AMQP, REST, or IBM Mainframe interfaces (e.g. IMS Adapter), and an understanding of how to use them in a Spring Integration context.
• Strong skills in SQL, and extensive experience working with relational databases, such as SQL Server, PostgreSQL, or Oracle, and non-structured database such as MongoDB.
• Solid Experience and knowledge on Azure Platform as a Service (process, tooling, technical) for application delivery across build and continuous operation.
Preferred Qualifications
• Have knowledge on application security in Cloud environment, for example, Oauth2, Multi-Factor Authentication, SSO, OWASP, certificate based or protected API, JWT Authentication, TLS1.2, and Digital Signature (and its interoperability between multiple applications).
• Hands-on experience in pdf generation and implementation.
• Have knowledge in database administration, database performance management, data cleansing, data quality, and data conversion & validation.
Skills and Experience
• A passion for staying up to date with the latest industry trends and technologies, and a desire to continuously learn and improve your skills.
• Strong analytical, problem-solving and debugging skills, and experience diagnosing, uncovering pros & cons (beyond technical approach), and resolving complex issues.
• A track record of delivering high-quality, robust, and scalable solutions in a fast-paced, deadline-driven environment.
• 5+ years’ experience and strong expertise in the frontend UI development with Angular and Open-Source Cloud-Native framework, Micro Service Model, and AODA compliance (for example, validation and remediation using WAVE, AXE tools).
• Strong expertise in RESTful API (e.g. Spring Boot) design and development, documentation and testing.
• In-depth knowledge of microservice architecture and experience building scalable, highly available, and highly sensitive systems, including intelligent & automated operational capabilities.
• Experience in Lean and/or Agile methodologies such as Scrum or Kanban, and experience participating in sprint planning and retrospectives.
• Experience with applying various design patterns and standards to the technical design and development.
• Hands-on experience with delivering product features (Product Backlog Items, User Stories, Non-Functional Requirements) from beginning to end (requirements, development, unit and integration testing) without supervision, and with effective collaboration.
• Knowledge of data transformation techniques, such as mapping and normalization, and experience using them in a Spring Integration context.
• Understanding of security best practices and experience implementing authentication, authorization, and encryption.
• Previous knowledge of working with containerized environments such as Azure, OpenShift, etc.
• Strong experience with TDD (Test Driven Development), writing automated tests (e.g. using Selenium tool), including unit, API test, and a deep understanding of the testing process, including experience with WAF OWASP practices (investigation and remediation).
• Excellent communication skills, both written and verbal, and the ability to work effectively with both technical and non-technical stakeholders.
Resumes Evaluation/Criteria:
Criteria 1: Technical Design - 35 Points
• Extensive experience with REST API (e.g. Spring Boot) design and development, including experience with API documentation and testing.
• Strong experience in developing Single Page Application (SPA) by using Angular Cloud Native Frameworks.
• Demonstrated and results-based experience in User Interface design, integration design, and data modeling for enterprise applications.
• Skilled in designing highly sensitive, high performance, high availability solutions from business requirements, especially using UML, JEE, and Service Bus.
• Practical knowledge in applying various design patterns and standards to the technical design and development. Knowledgeable in Web Content Accessibility Guidelines (WCAG) for web application development, OMG technical standards, OWASP practices, and OPS architecture standards.
Criteria 2: Technical Framework Implementation - 35 Points
• Hands-on and demonstrated experience in design and development using Microservice architecture, API Services, Enterprise Service Bus, Message Queue, etc.
• Hands-on and demonstrated experience in Java Frameworks (e.g. Spring, Shiro, Primefaces etc.), and technologies such as Hibernate, JSF, etc.
• Hands-on experience in developing Single Page Application (SPA) by using Angular.
• Must have prior experience in working with containerized environments such as Azure, OpenShift, Docker, Kubernetes, Microservices, etc.
• Knowledge of web accessibility / AODA compliance, (for example, validation and remediation using WAVE, AXE tools), TDD (Test Driven Development), test automation (e.g. using Selenium tool), DevOps CI/CD pipeline.
• Skill and knowledge of IBM Mainframe integration concept and implementation (e.g. IMS Adapter).
• Relevant experience of Cloud monitoring, logging, and alert / notification capabilities (e.g. Azure App Insights) and skills in operational effective (e.g. automation, and proactive remediation).
Criteria 3: Integration and Data Management Skills - 20 Points
• Hands-on and demonstrated experience in design and development using Microservice architecture and API Services.
• Strong experience with enterprise integration technologies, such as Azure Service Bus, JMS, AMQP, REST, or IBM Mainframe adapter.
• Strong experience in integrating web applications with RESTful APIs. Knowledge of HTTP protocols and AJAX.
• Knowledge of data transformation techniques, such as mapping and normalization, and experience using them in a Spring Integration context.
• Strong skills in SQL and experience working with relational databases, such as SQL Server, or Oracle.
• Knowledge in database administration, database performance management, data cleansing, data quality, and data conversion & validation.
Criteria 4: Security - 10 Points
• Demonstrated experience with Security in Cloud environment, for example, Oauth2, Multi-Factor Authentication, OWASP, SSO, PKI, RBAC, certificate based or protected API, JWT Authentication, TLS1.2, etc.
• Understanding of High Availability, Disaster Recovery, Business Continuity.
• Understanding of security best practices and demonstrated experience in implementing authentication, authorization, and encryption.
• Understanding of common web security practices and vulnerabilities. Knowledge of how to secure applications against common threats.
Applications are closed.