Senior Software Engineer - Canada Only

TechnosylvaOn-siteFull-timeSenior, 5–8 yearsListed 1 day ago

Apply now

About this role

About Technosylva

Technosylva is a global leader in wildfire and extreme weather risk mitigation software. The Company’s market-leading solutions, enhanced by AI and machine learning capabilities, provide real-time and predictive insights to support electric utility, insurance and government agency customers.

Technosylva has provided critical solutions for the past 26 years. In 2022 the organization entered a period of significant growth and transformation with investment from TA Associates, a leading growth PE firm, scaling to about 225 employees and offering its product in over 10 countries. In 2024 General Atlantic, a leading global growth investor, announced a strategic growth investment in Technosylva to support the company in its mission.

Role Overview

We are hiring a backend-focused Senior Software Engineer to build and optimize the high-performance services and compute models at the core of our platform. This role combines strong systems and backend engineering with advanced numerical and parallel-computing expertise.  You will design robust services and APIs while also writing the highly optimized, concurrent code that makes large-scale simulation fast and accurate. It is an ideal fit for an engineer who is equally comfortable reasoning about service architecture and squeezing performance out of compute- and memory-intensive workloads.

Responsibilities

- Design, build, and maintain backend services and APIs (REST/gRPC or equivalent).

- Model, optimize, and maintain relational and non-relational databases — schema design, query tuning, and data integrity.

- Implement and troubleshoot inter-process communication (IPC, messaging, and service-to-service protocols).

- Develop primary backend systems in C# and Java.

- Design and implement highly optimized compute models in C++.

- Apply synchronization, concurrency, and multi-processing techniques to maximize throughput and correctness.

- Profile, benchmark, and optimize performance-critical code paths.

- Translate mathematical and algorithmic requirements into efficient, production-grade code.

- Participate in architecture decisions, code reviews, and technical mentorship.

- Write clean, testable, well-documented code and contribute to CI/CD practices.

Requirements

Required

- Strong proficiency in C# and Java for backend development.

- Strong C++ skills for high-performance compute work.

- Solid understanding of concurrency, synchronization primitives, threading, and multi-processing.

- Strong mathematical proficiency — numerical methods, linear algebra, or applied math relevant to compute models.

- Experience with API design, database design, and IPC mechanisms.

- Proven ability to profile and optimize compute- and memory-intensive workloads.

Preferred Qualifications

- Experience with parallel and high-performance computing — multithreading at scale, SIMD/vectorization, GPU (CUDA/OpenCL), or distributed compute (MPI).

- Background in scientific, geospatial, simulation, or physics-based modeling domains.

- Familiarity with cloud infrastructure and containerized deployment (AWS/Azure/GCP, Docker, Kubernetes).

- Experience building and operating low-latency, high-throughput data or compute pipelines.

- Working knowledge of observability, testing, and performance-regression practices for production systems.