Jobs and Careers
TE

Senior Software Engineer - New Product Development

Tennant Company
Golden Valley, United Statesfull_timeVerifiedPosted 16 Jun 2026
💰 $150,600/yr($97,500/yr$150,600/yr)

About the role

Title: Senior Software Engineer, Robotics

Location: United States - Minneapolis, MN

Pay: $97,500 - 150,600

 

With more than $1B in revenue, Tennant Company is a globally recognized leader in the cleaning equipment industry. For the past 150 years, we have been passionate about developing and manufacturing innovative and sustainable solutions for our customers. At Tennant Company, we are committed to stewardship and creating a cleaner, safer and healthier world. With manufacturing, operations and sales, service, and support functions across the globe, your journey at Tennant can take you places you never expected.

Position Overview

We are seeking a Senior Software Engineer to join the Tennant Company (TNC) Robotics Product Development organization. This role combines strong hands-on software development with emerging technical leadership responsibilities, supporting the design, integration, and delivery of embedded and connected software systems for robotic cleaning platforms.

The Senior Software Engineer contributes to system-level software design while also owning complex features or subsystems end-to-end. This role partners closely with Systems, Electrical, Mechanical, Test, and Product teams to translate requirements into scalable, reliable solutions and begins to influence technical direction, best practices, and architectural decisions.

Success in this role is measured by software quality, system integration effectiveness, technical contributions to architecture, and the ability to guide and elevate team execution.

 

Key Responsibilities

Embedded & Platform Software Development

  • Design, develop, test, and maintain embedded software using C/C++ on Linux and/or Real‑Time Operating Systems (RTOS).
  • Own delivery of complex features or subsystems, ensuring performance, reliability, and maintainability.
  • Contribute to software running on machine controllers and companion processing units.
  • Provide hands-on support for:
    • Board bring‑up and hardware/software integration
    • Driver configuration and targeted development
    • Debugging hardware/software interface issues
  • Ensure software integrates cleanly with electrical, controls, and mechanical subsystems.

Connected Systems & Communications

  • Develop and support software for connected and distributed systems, including:
    • Controller‑to‑controller communication (CAN, CANOpen)
    • Ethernet and USB‑based interfaces
  • Contribute to the design and implementation of IoT-enabled features, including data exchange, telemetry, and system monitoring.
  • Apply and promote best practices for secure, reliable communication and data handling.

Software Design & Emerging Architecture Leadership

  • Define and refine functional requirements, system behaviors, and performance targets for features and subsystems.
  • Develop clear and structured design artifacts (flowcharts, architecture diagrams, interface specifications).
  • Actively contribute to software architecture discussions, offering recommendations that improve scalability, modularity, and reuse.
  • Participate in and help lead design reviews, ensuring alignment with system-level requirements and architectural intent.
  • Begin to drive consistency in design approaches across projects and teams.

Quality, Testing & Debugging

  • Build high-quality software with strong emphasis on maintainability, testability, and robustness.
  • Lead debugging efforts, performing fault isolation and root cause analysis across system boundaries.
  • Support and guide unit, integration, and system-level testing activities.
  • Promote adherence to coding standards, review practices, and quality metrics.

Development Process, Tooling & Continuous Improvement

  • Execute software development within the New Product Development (NPD) lifecycle.
  • Participate in Agile or iterative development processes while helping improve team execution efficiency.
  • Use and support best practices with tools such as:
    • Configuration management (Bitbucket or similar)
    • Defect tracking and task management (Jira)
    • Requirements management (Visure or similar)
  • Contribute to process improvements, including development workflows, documentation, and traceability.

Technical Leadership & Cross‑Functional Collaboration

  • Collaborate closely with Systems, Hardwar

Apply for this role

Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.

Apply Now →Generate Application Kit

Free account required — sign up in 30s

Company

Tennant Company

View company profile →