Careers
Engineering

Senior Software Engineer

Join our team
Apply for this job and hear back from the hiring manager in under 48 hours!
Apply Now
Location
Calgary, Alberta
Department
Engineering
Type
In-Office
Job Description

Employers often ask why you'd be a good fit to work for them. At BigGeo, we prefer to start by showing why we’re a good fit for you.

Why You’d Want to Work at BigGeo:

  • Be part of a pioneering team driving the future of geospatial intelligence.
  • Work in an innovative, data-driven environment that values creativity and rapid problem-solving.
  • Experience firsthand how your contributions shape cutting-edge technologies and serve critical industries globally.
  • Embrace a modern “self-care” work schedule that emphasizes balance and well-being.
  • Shape products that solve major global challenges, from urban planning to environmental conservation.

About BigGeo:

BigGeo is at the forefront of geospatial data intelligence, creating transformative solutions that turn location-based data into actionable insights across industries. Our advanced platform brings geospatial analysis, real-time data processing, and 3D visualization to life, empowering industries to unlock deeper insights and make informed decisions.

Our company has assembled a dynamic, forward-thinking team across all pillars of commercial and technology, united by the mission to redefine how people access and interpret their geospatial data. We make it possible for individuals and businesses alike to unlock the full potential of their data—enabling them to extract valuable insights from massive datasets. With a work environment that thrives on cutting-edge innovation, BigGeo isn’t just a tech company; we’re revolutionizing how the world understands and interacts with data.

About the position:

We're seeking a Senior Software Engineer: Platform focusing on high-performance backend systems using modern statically compiled languages. This role emphasizes building reliable, secure, and performant infrastructure that powers our product offerings. If you're a developer who thrives on creating high-performance, observable systems and isn't afraid to dive deep into low-level optimizations while building reliable platform services, we want to hear from you!

Responsibilities:

  • Design and implement efficient, reliable, secure, and observable backend systems
  • Optimize code for performance and resource utilization
  • Contribute to architectural decisions for distributed systems and big-data processing
  • Write and maintain observable, instrumented code that enables effective system monitoring
  • Lead the development of complex platform features
  • Design and implement scalable data architectures
  • Conduct thorough performance testing and optimization
  • Mentor junior developers, promote and enforce best practices
  • Lead initiatives to align platform development with business objectives, ensuring that all platform functionalities contribute positively to key outcomes and KPIs.
  • Facilitate a smooth transition of platform features to product teams, supporting seamless integration and effective use within product pipelines.
  • Continuously evaluate and optimize the platform to enhance user experience and deliver measurable business value, supporting overall company growth objectives.
  • Drive DevOps practices and automation initiatives
  • Monitor and analyze technical performance of internal systems
  • Implement and maintain CI/CD pipelines
  • Support deployment and operational excellence
  • Contribute to infrastructure-as-code initiatives

Requirements:

  • Bachelor’s degree in Computer Science, Software Engineering, Data Science, or a related field (or equivalent practical experience).
  • Proven track record in high-performance backend development
  • Proficiency in modern statically compiled languages
  • Strong understanding of immutability principles and their application
  • Expertise in writing efficient, reliable, and secure code
  • Proficient with both manual memory management and automatic lifetime management techniques
  • Strong understanding of computer architecture and efficient utilization of available resources
  • Strong knowledge of fundamental data structures
  • Understanding of performance trade-offs between algorithmic efficiency, distributed systems coordination, and I/O minimization in big data contexts
  • Experience with modern observability patterns and practices

Nice to Haves:

  • Experience with Rust (with tokio.rs) or Scala (with cats-effect) will be given top priority.
  • Experience with any modern statically typed language is a bonus
  • Background in big-data processing architectures
  • Experience with distributed systems
  • Experience with high-performance data structures
  • Knowledge of geospatial data structures and algorithms
  • Expertise in optimizing I/O operations
  • Familiarity with binary protocols
  • Experience with distributed eventing systems (e.g., NATS.io)
  • Experience with gRPC and other high-performance RPC frameworks
  • Proficiency in using version control systems (e.g., Git)
  • Experience with container orchestration and cloud platforms
  • Familiarity with infrastructure-as-code practices
  • Passionate about code efficiency, reliability, and security
  • Proactive in finding ways to improve existing systems
  • Eager to learn, mentor and teach
  • Strong problem-solving skills and critical thinking
  • Excellent communication and teamwork abilities