Software Engineer

5 days ago


Richmond, Canada General Fusion Full time

Established in 2002, General Fusion is a global leader in the race to commercialize clean fusion energy. We are pursuing a uniquely practical approach, Magnetized Target Fusion, and aim to provide zero-carbon fusion power to the grid in the early to mid-2030s. Today at our state-of-the-art labs in Richmond, BC, we’re operating a groundbreaking fusion demonstration machine called Lawson Machine 26 (LM26), designed to achieve transformational technical milestones, and accelerate General Fusion’s technology to commercialization. Our path to market is funded by a global syndicate of leading energy venture capital firms, industry leaders, and technology pioneers. Learn more at www.generalfusion.com.Position Overview:We are seeking an intermediate to senior Software Engineer to join our Control Systems and Electronics team at General Fusion. This role is focused on developing, deploying, and supporting backend software applications and microservices that enable data pipelines, control system events, and data acquisition (DAQ) for our experimental fusion machines.You will contribute to the design, development, maintenance, and operational support of on-premises software systems that underpin live experimental operations. Working closely with physicists, diagnosticians, and engineers, you will help build reliable, scalable systems that support real-time experimentation and data-driven decision-making. While the role operates in a controls and DAQ environment, it is not a PLC programming position and is primarily focused on software systems, infrastructure, and data.General Fusion is a deep-tech startup developing first-of-a-kind technology. We’re looking for a versatile software engineer who enjoys solving complex problems, learns quickly, and thrives in a fast-paced, evolving technical environment.Responsibilities:Design, extend, and maintain data acquisition (DAQ) and data processing pipelines, backend services, APIs, and data storage interfaces.Develop, deploy, and support containerized applications and microservices that enable experimental operations.Design, evolve, and maintain data models and schemas used to ingest raw experimental data and represent it as structured, query-able formats (e.g. structured text, metadata-rich records, and time-series data.)Implement robust data validation, normalization, and transformation logic at ingestion boundaries to ensure data quality and consistency.Champion best practices for software development in a production environment, including system design, testing, deployment, observability, and long-term maintainability.Significantly contribute to the architectural design and long-term evolution of the data acquisition and control software stack, balancing experimental agility with production reliability.Troubleshoot and debug data processing and system issues in real time to support live experimental operations.Maintain and incrementally modernize legacy systems, while contributing to next-generation platform development.Build tools and services that enable scientists and machine operators to access, analyze, and visualize experimental data.Collaborate across disciplines to translate experimental requirements into robust, maintainable software solutions.Other tasks as assigned. Requirements:Must have: Bachelor’s degree in computer science or related engineering field. Minimum 5 years of relevant industry experience in software engineering or a related role.Expert-level proficiency in Python, with significant experience across its ecosystemStrong experience designing and managing data models and schemas, particularly for ingesting raw data and converting it into structured representations.Solid understanding of data serialization and structured data formats (e.g. text-based formats, schema-driven data, time-series representations)Experience building, packaging, and deploying Python software using tools such as pip and uv.Strong working knowledge of git-based version control workflows (e.g. branching, code review, and collaboration)Strong data analysis skills: able to rapidly prototype, explore, and communicate ideas using tools such as NumPy, Pandas, and Matplotlib.Strong Linux background, particularly with Debian-based systems (e.g. Ubuntu), including scripting, filesystems, and system tooling.Experience developing, deploying, and supporting containerized services using Docker, Kubernetes, or similar technologies.Comfort working extensively at the command line.Experience managing virtual machines and operating production systems.Experience deploying software and remotely managing systems across Linux and Windows environments.Proven ability to troubleshoot and debug issues amongst large complex codebases.Highly proactive and self-directed; you take ownership, advocate for sound technical approaches, and seek out opportunities to improve systems.Familiarity with the full software development lifecycle, including requirements definition, testing and verification, issue tracking and planning, coding standards, and version control.Excellent communication, interpersonal, and organizational skills.Preferred: Experience in a multidisciplinary R&D or experimental environment.Familiarity with data engineering concepts, including databases, pipelines, analytics frameworks, and large-scale data systems.Experience in designing and managing data dashboards using Grafana or similar.Experience with messaging and event-driven systems such as MQTT, NATS, or similar technologies · Familiarity with DAQ hardware, including commercial digitizers such as oscilloscopes.Experience working with time-series databases (TSDBs), including deployment and operations (e.g. Influx DB.)Experience with signal processing, optimization, or advanced analytics.Embedded or low-level experience on platforms such as Arduino or STM32.Working knowledge of C and/or C++.The typical hiring range for this position is $105,000CAD - $130,000CAD. General Fusion considers several factors when determining total compensation, including job-specific or highly specialized knowledge, skills, and experience, proficiency, job location, and internal equity.What We Offer:Flexible hoursFour weeks’ vacationComprehensive benefits package.RRSP contributionSupport for professional developmentGreat company culture – social events, food trucks, bike rides, Sun Run, etc.Applications:We thank all applicants for their interest, only those selected for an interview will be contacted.General Fusion is committed to creating a diverse environment and is proud to be an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, or age.


  • Software Engineer

    2 weeks ago


    Richmond, Canada Quectel Full time

    This range is provided by Quectel. Your actual pay will be based on your skills and experience — talk with your recruiter to learn more. Base pay range CA$80,000.00/yr - CA$135,000.00/yr Job Summary We are seeking a highly motivated and skilled Multimedia Software Engineer to design, develop, and maintain software applications. They collaborate with teams...

  • Software Engineer

    4 weeks ago


    Richmond, Canada Quectel Full time

    This range is provided by Quectel. Your actual pay will be based on your skills and experience — talk with your recruiter to learn more. Base pay range CA$80,000.00/yr - CA$135,000.00/yr Job Summary We are seeking a highly motivated and skilled Multimedia Software Engineer to design, develop, and maintain software applications. They collaborate with teams...

  • Software Engineer

    2 weeks ago


    Richmond, Canada Quectel Full time

    Software Engineer - Linux Join to apply for the Software Engineer - Linux role at Quectel This range is provided by Quectel. Your actual pay will be based on your skills and experience — talk with your recruiter to learn more. Base pay range CA$80,000.00/yr - CA$135,000.00/yr Job Summary We are seeking a skilled Linux Networking and IoT Engineer to design,...

  • Software Engineer

    4 weeks ago


    Richmond, Canada Quectel Full time

    Software Engineer - Linux Join to apply for the Software Engineer - Linux role at Quectel This range is provided by Quectel. Your actual pay will be based on your skills and experience — talk with your recruiter to learn more. Base pay range CA$80,000.00/yr - CA$135,000.00/yr Job Summary We are seeking a skilled Linux Networking and IoT Engineer to design,...


  • Richmond, British Columbia, Canada Maajoba Labs Full time

    Job SummaryWe are seeking an experienced Software Engineering Manager to lead our dynamic development team. The ideal candidate will oversee the design, development, and deployment of innovative software solutions, ensuring alignment with business goals and technical excellence. This role requires strong leadership skills, a deep understanding of software...


  • Richmond, British Columbia, Canada Quectel Full time

    About the jobJob SummaryManage customer software project release & deployment with high quality software solutions that aligns the organizational business goals. Responsible for working with team of developers, ensuring efficient workflows, fostering and environment of customer satisfaction and collaborations.We are seeking a highly motivated and...


  • Richmond, Canada PowerToFly Full time

    Optum is a global organization that delivers care, aided by technology to help millions of people live healthier lives. The work you do with our team will directly improve health outcomes by connecting people with the care, pharmacy benefits, data and resources they need to feel their best. Here, you will find a culture guided by inclusion, talented peers,...


  • Richmond, Canada PowerToFly Full time

    Optum is a global organization that delivers care, aided by technology to help millions of people live healthier lives. The work you do with our team will directly improve health outcomes by connecting people with the care, pharmacy benefits, data and resources they need to feel their best. Here, you will find a culture guided by inclusion, talented peers,...


  • Richmond, Canada PowerToFly Full time

    Optum is a global organization that delivers care, aided by technology to help millions of people live healthier lives. The work you do with our team will directly improve health outcomes by connecting people with the care, pharmacy benefits, data and resources they need to feel their best. Here, you will find a culture guided by inclusion, talented peers,...

  • Software Engineer

    3 weeks ago


    Richmond, Canada Optum Full time

    Optum is a global organization that delivers care, aided by technology to help millions of people live healthier lives. The work you do with our team will directly improve health outcomes by connecting people with the care, pharmacy benefits, data and resources they need to feel their best. Here, you will find a culture guided by diversity and inclusion,...