Intermediate Software Engineer

GeologicAI

Calgary

On-site

CAD 90,000 - 140,000

Full time

14 days+

Get a reply from this employer

Your resume and cover letter, tailored to exactly what they’re hiring for.

Get past ATS filters

Benefits offered by this job

Casual environment
Flexible schedule
Remote work (depending on role)
Extended health & dental benefits
Robots with lasers!

Job summary

GeologicAI seeks an Intermediate Software Engineer to join the Platform Infrastructure team in Calgary. You will develop CI/CD pipelines, IaC, and deployment automation, enabling production releases across field-based and edge systems while profiling performance and bottlenecks.

You will modernize platforms, refactor legacy code, containerize Python apps, and enhance reliability with observability and testing across teams.

Qualifications

  • 3–6 years of professional software engineering experience in platform, infrastructure, or backend systems.
  • Strong Python development skills in a scalable codebase.
  • Solid understanding of distributed systems and performance profiling.
  • Hands-on experience building or improving CI/CD pipelines and deployment workflows.
  • Experience with Docker and containerized development environments.
  • Demonstrated ability to refactor complex, legacy codebases safely and incrementally.
  • Experience with software testing at scale (unit, integration, end-to-end).
  • Experience implementing observability tooling: logging, metrics, tracing, alerting.
  • Experience with infrastructure as code and configuration management (Terraform/Ansible).
  • Linux-based development and operations as a daily practice.

Responsibilities

  • Design, build, and own automated deployment pipelines from development through production.
  • Implement infrastructure as code and configuration management practices.
  • Drive environment parity across local, test, staging, and production.
  • Automate release processes to reduce manual steps and improve cadence.
  • Maintain deployment reliability for distributed and edge environments.
  • Profile and analyze distributed processing systems for performance bottlenecks.
  • Design and implement optimizations for data pipelines and processing workflows.
  • Develop tooling to surface systemic issues and reinforce reliability.
  • Contribute architectural thinking to scaling components for higher data volumes.
  • Establish platform engineering standards around code structure and deployment readiness.
  • Build test environments representing production at scale and automate validations.
  • Collaborate with engineers to translate pain points into platform improvements.

Skills

Python
Distributed systems
CI/CD pipelines
Performance profiling
Software testing
Observability tooling
Linux development & operations

Tools

Docker
Terraform
Ansible
Databricks
Spark
Azure

Job description

Intermediate Software Engineer

Department: Software Development

Employment Type: Permanent - Full Time

Location: Calgary

Description

The Platform Infrastructure team owns the infrastructure, tooling, and engineering practices that let us ship software safely and scale our systems reliably. This role sits at the intersection of software engineering and DevOps: you will build the CI/CD pipelines and deployment automation that get code to production, and you will go deep into the platform itself, profiling performance, identifying architectural bottlenecks, and refactoring the systems that limit our ability to scale.

This is not a role for someone who wants to maintain the status quo. We have the foundations, but we need someone with the instincts to find what is slowing us down next whether that is a fragile deployment pipeline, an unscalable data processing pattern, or a legacy component that needs to be modernized and the engineering depth to fix it

Key Responsibilities

CI/CD, Deployability & Infrastructure as Code

  • Design, build, and own automated deployment pipelines from development through test, staging, and production, including deployments to field-based hardware at remote mine sites.
  • Implement infrastructure as code (IaC) and configuration management practices that make environments reproducible, auditable, and easy to reason about.
  • Drive environment parity across local development, test, staging, and production so that deployment failures are caught early and consistently.
  • Automate release processes to reduce manual steps, eliminate deployment risk, and improve release cadence.
  • Maintain and improve deployment reliability to distributed and edge environments, including trailer-mounted compute units operating in the field.

Scale, Performance & Distributed Systems

  • Profile and analyze distributed processing systems to identify performance bottlenecks across compute, I/O, memory, and network layers.
  • Design and implement optimizations that allow our data pipelines and processing workflows to handle growing data volumes without degrading performance
  • Develop pattern detection tooling to proactively surface systemic issues, resource contention, throughput degradation, failure modes before they become incidents.
  • Contribute architectural thinking to discussions about how to scale components that were not originally designed for current data volumes

Refactoring & Platform Modernization

  • Work within and improve legacy codebases, identifying the highestleverage refactoring opportunities and executing them without disrupting production systems.
  • Containerize Python-based scientific processing applications to improve portability, isolation, and deployment consistency.
  • Reduce technical debt incrementally and pragmatically, with a bias toward changes that improve scalability and maintainability simultaneously.
  • Establish and promote platform engineering standards around code structure, dependency management, and deployment readiness.

Testing & Release Quality

  • Build and maintain test environments that accurately represent production at scale, including large-volume data processing scenarios.
  • Develop automated regression, integration, and end-to-end validation frameworks across multiple processing systems.
  • Improve release confidence through rigorous pre-production validation, automated quality gates, and controlled rollout mechanisms.
  • Create shared testing utilities and reusable fixtures that lower the cost of writing high-quality tests across the engineering organization.

Observability & System Reliability

  • Instrument systems with structured logging, distributed tracing, and metrics that make it possible to understand system behaviour under real workloads.
  • Build dashboards and alerting that surface the right signals, not noise and enable the team to detect and respond to issues quickly.
  • Establish reliability baselines and SLOs for critical processing pipelines and track progress against them over time.
  • Conduct post-incident analysis and translate learnings into systemic improvements, not just one-off fixes.

Developer Experience

  • Reduce friction in the development workflow: faster feedback loops, better local tooling, clearer onboarding, and self-service access to environments.
  • Document what you build, runbooks, architecture decision records, onboarding guides — so knowledge is accessible and the team can operate independently.
  • Collaborate with engineers across the organization to understand pain points and translate them into platform improvements with real impact.
Skills, Education, and Experience

Must Have Skills, Education, and Experience:

  • 3–6 years of professional software engineering experience, with meaningful exposure to platform, infrastructure, or backend systems work.
  • Strong Python development skills; comfortable working in a Python-centric codebase at scale.
  • Solid understanding of distributed systems: how they fail, how to profile them, and how to reason about performance across multiple components.
  • Hands-on experience building or significantly improving CI/CD pipelines and automated deployment workflows.
  • Experience with Docker and containerized development and deployment environments.
  • Demonstrated ability to refactor complex, legacy codebases safely and incrementally.
  • Experience with performance profiling and optimization, you know how to find the real bottleneck, not just the obvious one.
  • Strong grasp of software testing: unit, integration, end-to-end, and what makes tests useful at scale versus brittle and expensive.
  • Experience implementing or working with observability tooling: logging, metrics, tracing, alerting.
  • Experience with infrastructure as code and configuration management practices and tools.
  • Linux-based development and operations as a daily practice.

Assets:

  • Experience with Azure or other cloud platforms, particularly around managed compute and storage at scale.
  • Familiarity with MLOps practices: model serving infrastructure, experiment tracking, or ML pipeline tooling.
  • Experience with scientific computing, high-throughput data processing, or analytical software systems.
  • Experience with edge or distributed hardware deployments — shipping software to systems outside a data centre.
  • Exposure to specific IaC tooling such as Terraform or Ansible.
  • Experience with Databricks, Spark, or similar large-scale data processing frameworks.
Benefits from Working at GeologicAI

What You'll Love About Us:

We're a fast-growing well-funded company working on interesting products that are making a difference to the world. Our products and services are helping find the hydrocarbons that power our world today, and the metals and minerals required for the energy transition of tomorrow.

We offer:

  • A casual and fun work environment
  • Flexible schedule and opportunities for remote work (depending on role)
  • Extended health and dental benefits (confirm for geographic location)
  • Robots with lasers!
Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Product Manager, Geotechnical
Product Manager, Geotechnical

GeologicAI • Canada

Remote
CAD 110,000 - 170,000
Flexible schedule
Remote work
Extended health and dental benefits
+1
Manager, Technical Operations
Manager, Technical Operations

GeologicAI • Calgary

Hybrid
CAD 150,000 - 190,000
Flexible schedule and remote work
Extended health and dental benefits
Robots with lasers!
Manager, Customer Excellence
Manager, Customer Excellence

GeologicAI • Canada

Remote
CAD 150,000 - 210,000
Casual work environment
Flexible remote work
Extended health and dental benefits
+1
Manager, Fleet Performance
Manager, Fleet Performance

GeologicAI • Calgary

On-site
CAD 120,000 - 180,000
Casual environment
Flexible schedule
Remote work option
+2
Product Manager, Geotechnical
Product Manager, Geotechnical

GeologicAI • Calgary

Remote
CAD 150,000 - 190,000
A casual and fun work environment
Flexible schedule and remote work
Extended health and dental benefits
+1
Manager, Customer Success
Manager, Customer Success

GeologicAI • Canada

Remote
CAD 110,000 - 140,000
Casual work environment
Flexible remote schedule
Extended health benefits
+1
Manager, Customer Success
Manager, Customer Success

GeologicAI • Calgary

Remote
CAD 95,000 - 130,000
A casual and fun work environment
Flexible schedule and opportunities of
Extended health and dental benefits
+1
Regional Operations Manager, North America
Regional Operations Manager, North America

GeologicAI • Canada

Remote
CAD 120,000 - 170,000
Casual and fun work environment
Flexible schedule and remote work
Extended health and dental benefits
Project Manager
Project Manager

GeologicAI • Calgary

Remote
CAD 85,000 - 110,000
Flexible schedule and remote work
Extended health and dental benefits
Robots with lasers!
+1
Regional Operations Superintendent, North America
Regional Operations Superintendent, North America

GeologicAI • Canada

Remote
CAD 120,000 - 180,000
Casual work environment
Flexible schedule
Health and dental benefits