Back to results

Senior Software Developer

  • Edmonton, AB, Canada

Applications open in a new tab.

Job details

Posting language
English
Posted

Original job description

We are seeking a talented and experienced software developer with six (6) or more years of professional programming experience and an interest in transitioning into Rust development. While direct Rust experience is not required, we are seeking someone with a background in systems programming, secure software development, and a desire to build high-performance, reliable, and secure software.

Responsibilities

  • Research, design, and develop software systems with a focus on performance, reliability, and security.
  • Collaborate with cross-functional teams to define, design, and ship a new software product tightly integrated into a cohesive product ecosystem.
  • Participate in code reviews, provide feedback, and maintain high coding standards.
  • Remain current with software development advancements and best practices.
  • Write and maintain technical documentation. 

Required Qualifications

  • Computing Science, Computer Engineering, Electrical Engineering, or equivalent degree.
  • Six (6) or more years of experience in software development, with demonstrated proficiency in one or more languages such as Rust, C, C++, Go, Erlang, or Python.
  • Strong understanding of cybersecurity concepts, secure software development, systems programming concepts, including memory management, performance optimization, network communication, synchronous programming, and concurrency.
  • Strong understanding of Linux systems, including Linux software development, security, and system components.
  • Strong problem-solving skills and the ability to work independently on dedicated tasks, as well as on small and medium-sized teams.
  • Familiarity with development tools such as Git and GitLab.
  • Familiarity with DevOps principles and practices, including CI/CD.

Preferred Qualifications

  • Exposure to Rust development with a willingness to learn and grow in the language is an asset.
  • Strong understanding of security and reliability engineering concepts is an asset.
  • Experience working with IoT, distributed systems, networking, or embedded systems is an asset.
  • Experience working with Modbus, Canbus, or similar protocols is an asset.
  • Experience working with Linux, NixOS, Ubuntu, and/or Ubuntu core is an asset.
  • Experience working in an agile software development environment is an asset.
  • Experience working with infrastructure-as-code (IaC), virtualization, or containerization, including tools such as ProxMox, Docker, or Kubernetes, is an asset.
More about this job

Responsibilities

Research, design, and develop high-performance, reliable, and secure software systems. Collaborate with cross-functional teams to integrate new products into a cohesive ecosystem while maintaining high coding standards.

Requirements

Requires a degree in Computing Science, Engineering, or equivalent and six or more years of professional software development experience. Candidates must possess strong knowledge of systems programming, cybersecurity, and Linux environments.

Skills

  • Rust
  • C
  • C++
  • Go
  • Erlang
  • Python
  • Systems programming
  • Cybersecurity
  • Linux
  • Memory management
  • Concurrency
  • Git
  • GitLab
  • CI/CD
  • DevOps
  • Networking

Visa sponsorship

Not detected in the job text

Categories

  • Software
  • Engineering
  • Technology
  • Security & Safety

Keywords

  • Rust
  • C
  • C++
  • Go
  • Erlang
  • Python
  • Systems Programming
  • Cybersecurity
  • Linux
  • Memory Management
  • Performance Optimization
  • Concurrency
  • Git
  • GitLab
  • DevOps
  • CI/CD
  • IoT
  • Distributed Systems
  • Networking
  • Embedded Systems
  • Modbus
  • Canbus
  • NixOS
  • Ubuntu
  • Agile
  • Infrastructure-as-code
  • Virtualization
  • Containerization
  • ProxMox
  • Docker

Report this job