Software Developer - MQTT

Olive Recruiting

  • Houston, TX
  • 4 days ago

    Highlights

    Responsibilities: Design, develop, and maintain MQTT server capabilities using Go, including session management, Quality of Service (QoS), retained messages, persistence, bridging, and high-volume message routing. The ideal candidate will have experience with MQTT architecture, backend development, networking, and containerized applications, with the ability to develop scalable solutions across edge, on-premises, and cloud environments.

    Numbers & Facts

    LocationHouston, TX

    Description

    We are seeking a Software Developer with experience in MQTT or messaging systems to join an agile development team focused on industrial data platforms. This position will support the design, development, and maintenance of reliable messaging solutions for industrial automation, SCADA, and operational technology (OT) environments. The ideal candidate will have experience with MQTT architecture, backend development, networking, and containerized applications, with the ability to develop scalable solutions across edge, on-premises, and cloud environments. This role will collaborate with cross-functional teams and contribute to the full software development lifecycle.

    Responsibilities:
    • Design, develop, and maintain MQTT server capabilities using Go, including session management, Quality of Service (QoS), retained messages, persistence, bridging, and high-volume message routing.
    • Implement and support Sparkplug B functionality, including topic namespaces, birth/death certificates, and state management for industrial system interoperability.
    • Develop reliable messaging solutions for industrial networks with limited bandwidth, intermittent connectivity, and store-and-forward requirements.
    • Implement security features, including TLS encryption, authentication, authorization, and certificate lifecycle management.
    • Develop and optimize backend messaging services to support performance, scalability, and reliable data transmission.
    • Collaborate with software development teams on shared components, system integrations, and cross-product functionality.
    • Support containerized deployments across customer edge devices, on-premises infrastructure, and cloud environments.
    • Participate in agile development activities, including sprint planning, testing, code reviews, and production deployment.
    • Contribute to backend, user interface, and deployment development as part of a full-product development team.
    Qualifications:
    • Bachelor's degree in Computer Science, Software Engineering, or a related field, or equivalent practical experience.
    • Hands-on experience developing, implementing, or supporting MQTT-based systems, including brokers, client libraries, or large-scale messaging deployments.
    • Experience with comparable messaging technologies such as Kafka, AMQP, or NATS may be considered.
    • Strong programming skills in Go or experience with systems programming languages such as Rust, C, or Java, with a willingness to develop in Go.
    • Familiarity with Sparkplug B and industrial messaging standards is strongly preferred.
    • Understanding of networking fundamentals, including TCP/IP, TLS, connection management, and backpressure.
    • Experience with Docker and containerized application deployment in Linux environments.
    • Familiarity with cloud platforms such as Azure or AWS and on-premises deployment environments.
    • Exposure to industrial automation, OT/SCADA systems, edge computing, or industrial data platforms is a plus.
    • Experience with TypeScript, Angular, CI/CD pipelines, Azure Pipelines, Bitbucket, Jira, or similar development tools is beneficial.
    • Strong analytical, problem-solving, communication, and collaboration skills with the ability to work effectively in an agile development environment.

    Similar Jobs