DevSecOps Specialist

  • Location: Ottawa, Ontario
  • Type: Contract
  • Job #35468

Position Overview

We are seeking an experienced Senior DevOps Engineer to design, build, and maintain the continuous integration, deployment, and test infrastructure supporting a distributed microservices-based software environment.

The successful candidate will work closely with software developers, test engineers, systems engineers, and laboratory teams to automate software builds, deployments, testing, packaging, and release processes. This role will support deployments across virtualized environments, Kubernetes clusters, and physical laboratory hardware.

The position requires strong experience with GitLab CI/CD, Kubernetes, containerization, Artifactory, infrastructure automation, embedded hardware environments, and multi-architecture software builds.

Key Responsibilities

Continuous Integration and Deployment

  • Design, implement, and maintain the core continuous integration infrastructure supporting software builds, automated testing, and deployments.
  • Support test deployments across virtualized environments, containerized platforms, Kubernetes clusters, and physical laboratory hardware.
  • Build, maintain, and optimize CI/CD pipelines using GitLab.
  • Integrate automated build, packaging, deployment, testing, and release activities into CI/CD workflows.
  • Identify and resolve pipeline performance, reliability, and scalability issues.
  • Automate software deployment processes to improve delivery speed, repeatability, and quality.
  • Support additional CI/CD platforms, including Jenkins and Azure DevOps, where required.

Test Infrastructure and Resource Management

  • Develop and maintain systems for managing shared test infrastructure and laboratory hardware.
  • Coordinate access to test environments used by developers, testers, sanity testing, and regression testing teams.
  • Implement resource scheduling, reservation, allocation, and release mechanisms to improve infrastructure utilization.
  • Reduce conflicts, idle capacity, and testing delays across shared environments.
  • Support automated provisioning, configuration, deployment, and cleanup of test environments.

Kubernetes and Container Operations

  • Deploy, operate, and maintain Kubernetes clusters in cloud-based and on-premises environments.
  • Support Azure Kubernetes environments and other cloud platforms, including AWS and Google Cloud Platform.
  • Use Helm to package, configure, deploy, and manage Kubernetes applications.
  • Monitor and optimize cluster availability, scalability, security, performance, and resource utilization.
  • Develop and maintain Dockerfiles and container images for software builds, testing, and deployment.
  • Support the deployment of distributed microservices across containerized target environments.
  • Troubleshoot Kubernetes, container networking, application deployment, and service availability issues.

Build, Packaging and Release Management

  • Manage software artifacts, repositories, and release workflows using JFrog Artifactory.
  • Assist with the deployment and administration of repositories for multiple artifact and package types.
  • Support software versioning, release promotion, artifact traceability, and release governance.
  • Create and maintain Debian control files and related configuration required to produce Debian software packages.
  • Develop and maintain build containers for repeatable and isolated software compilation.
  • Support cross-compilation workflows for multiple processor architectures, particularly x86_64 and aarch64.
  • Troubleshoot build-system, dependency, packaging, and architecture-related issues.

Infrastructure Automation and Configuration Management

  • Develop and maintain Ansible playbooks to automate the deployment and configuration of microservices and supporting infrastructure.
  • Automate repetitive operational, provisioning, deployment, and validation activities using Python and Bash.
  • Collaborate with engineering teams to improve infrastructure-as-code, configuration management, and deployment standards.
  • Ensure deployment processes are documented, repeatable, scalable, and suitable for automated testing.

Monitoring and Operational Support

  • Implement and maintain monitoring, logging, alerting, and observability solutions.
  • Support tools such as Prometheus, Grafana, ELK, and OpenSearch.
  • Develop dashboards and alerts to monitor Kubernetes clusters, infrastructure services, deployment pipelines, applications, and test environments.
  • Investigate infrastructure failures, deployment issues, performance degradation, and service interruptions.
  • Participate in root-cause analysis and implement corrective and preventative improvements.

Networking and Embedded Systems Support

  • Support deployments within environments involving Layer 2 and Layer 3 networking technologies.
  • Troubleshoot connectivity, addressing, routing, switching, service discovery, and container networking issues.
  • Work with embedded hardware platforms, laboratory equipment, and target systems.
  • Support software builds and deployments involving embedded Linux and multi-architecture hardware.
  • Collaborate with hardware and software engineering teams to resolve integration and deployment challenges.

Agile Collaboration

  • Work within an Agile software development environment.
  • Collaborate with developers, testers, product owners, systems engineers, and other stakeholders.
  • Participate in sprint planning, backlog refinement, technical reviews, and deployment planning sessions.
  • Use Jira to track work, manage issues, support sprint execution, and maintain visibility into deployment and infrastructure activities.
  • Provide technical guidance and recommendations related to deployment strategies, automation, testing infrastructure, and operational readiness.

Required Qualifications

  • Bachelor’s degree in Computer Science, Software Engineering, Computer Engineering, Information Technology, or a related discipline, or equivalent professional experience.
  • Demonstrated experience as a DevOps Engineer, Site Reliability Engineer, Build and Release Engineer, Infrastructure Engineer, or similar operations-focused role.
  • Strong hands-on experience building and maintaining CI/CD pipelines using GitLab.
  • Experience deploying and operating Kubernetes in cloud-based or on-premises environments.
  • Proficiency with Helm for Kubernetes application packaging and deployment.
  • Strong knowledge of Docker, Dockerfiles, containers, and containerized deployment environments.
  • Experience supporting distributed microservices architectures.
  • Hands-on experience with JFrog Artifactory and software release management.
  • Experience with infrastructure automation and configuration management using Ansible.
  • Strong scripting skills using Python and Bash.
  • Experience with public cloud platforms such as Azure, AWS, or Google Cloud Platform.
  • Understanding of Layer 2 and Layer 3 networking concepts.
  • Experience creating Debian packages and Debian control files.
  • Experience supporting cross-compilation systems and multi-architecture software builds.
  • Understanding of x86_64 and aarch64 build and deployment environments.
  • Experience creating and maintaining containerized build environments.
  • Familiarity with embedded hardware, embedded Linux, or physical laboratory environments.
  • Experience with monitoring and observability tools such as Prometheus, Grafana, ELK, or OpenSearch.
  • Experience working with Jira and Agile software development practices.
  • Strong troubleshooting, analytical, documentation, and communication skills.

Preferred Qualifications

  • Experience managing shared laboratory hardware or automated test infrastructure.
  • Experience developing resource reservation or scheduling systems for shared test environments.
  • Experience deploying microservices onto embedded or specialized target systems.
  • Familiarity with Jenkins and Azure DevOps pipelines.
  • Experience with Kubernetes networking, ingress controllers, service meshes, storage, and cluster security.
  • Knowledge of software supply-chain security, artifact signing, vulnerability scanning, and secure release practices.
  • Experience supporting highly available, production-grade Kubernetes environments.
  • Familiarity with networking or telecommunications software development environments.
  • Experience working with cross-functional teams involving software, hardware, test, systems, and network engineering.

Key Competencies

  • CI/CD architecture and automation
  • Kubernetes operations and troubleshooting
  • Containerization and microservices deployment
  • Test infrastructure resource management
  • Multi-architecture build systems
  • Embedded hardware integration
  • Software packaging and release management
  • Infrastructure automation
  • Cloud and on-premises environments
  • Network troubleshooting
  • Monitoring and observability
  • Cross-functional Agile collaboration
Attach a Resume file. Accepted file types are DOC, DOCX, PDF, HTML, and TXT.

We are uploading your application. It may take a few moments to read your resume. Please wait!