1

Mid Level Software Engineer Jobs in Minnesota (NOW HIRING)

Senior Software Engineer

Maple Grove, MN · On-site

$125K - $165K/yr

Our engineering teams thrive on collaboration, problem-solving, and bringing complex products from ... Unit and module level software testing experienc Benefits * Health Care Plan (Medical, Dental ...

Senior Software Engineer

Maple Grove, MN · On-site

$125K - $165K/yr

Our engineering teams thrive on collaboration, problem-solving, and bringing complex products from ... Unit and module level software testing experienc Benefits * Health Care Plan (Medical, Dental ...

Senior Software Engineer

Maple Grove, MN

$125K - $165K/yr

Our engineering teams thrive on collaboration, problem-solving, and bringing complex products from ... Unit and module level software testing experienc Benefits * Health Care Plan (Medical, Dental ...

Be Seen First

Senior Embedded Software Engineer

North Mankato, MN · On-site

$120K - $157K/yr

Key Responsibilities Embedded Software Development o Design, develop, and maintain embedded C/C ... mid-level engineers. o Lead by example through code quality, design rigor, and problem-solving ...

... 2000 and leading mid-market clients to deliver successfully in an increasingly competitive ... Bachelor's of Science degree in Software Engineering or Computer Science (Advanced Degree a plus ...

Software Engineer II

Moundsview, MN

$103K - $141K/yr

... mid-size companies to meet their talent needs with high quality IT resources through Staff ... May have direct supervisory responsibilities for lower-level technical resources. Participate in ...

Supervise other engineers, designers, and technicians * Prepare or assist with proposals, tracking ... software such as RISA and/or STAAD * Ability to climb ladders, enter confined spaces, and work ...

next page

Showing results 1-20

Mid Level Software Engineer information

See Minnesota salary details

$62.2K

$144.5K

$201.3K

How much do mid level software engineer jobs pay per year?

As of Jun 29, 2026, the average yearly pay for mid level software engineer in Minnesota is $144,486.00, according to ZipRecruiter salary data. Most workers in this role earn between $117,500.00 and $169,400.00 per year, depending on experience, location, and employer.

What is a Mid Level Software Engineer job?

A Mid Level Software Engineer is a professional with a few years of experience who develops, tests, and maintains software applications. They work independently on tasks, contribute to code reviews, and collaborate with teams to design and implement solutions. Mid-level engineers are expected to write clean, efficient code, troubleshoot issues, and improve system performance. They may also mentor junior developers and participate in architectural discussions. Typically, they have strong problem-solving skills and proficiency in programming languages relevant to their role.

What typical responsibilities can I expect as a Mid Level Software Engineer?

As a Mid Level Software Engineer, you will be involved in designing, coding, testing, and maintaining software applications, often working on both new and existing projects. You’ll collaborate with other engineers, product managers, and QA teams to deliver features that meet business requirements, while also participating in code reviews and contributing to architectural decisions. Your responsibilities may also include troubleshooting bugs, refining development processes, and occasionally mentoring junior engineers. This role typically offers a blend of technical challenge, teamwork, and opportunities for continued skill development.

What are the key skills and qualifications needed to thrive in the Mid Level Software Engineer position, and why are they important?

To thrive as a Mid Level Software Engineer, you need a solid understanding of software development principles, programming languages such as Java, Python, or C#, and a bachelor’s degree in computer science or a related field. Experience with version control systems like Git, familiarity with agile methodologies, and sometimes certifications such as AWS Certified Developer or Microsoft Certified: Azure Developer Associate are advantageous. Strong problem-solving skills, teamwork, and effective communication are standout soft skills in this position. These combined skills enable engineers to deliver high-quality code, collaborate efficiently within development teams, and adapt to evolving project requirements.

What are the most commonly searched types of Software Engineer jobs in Minnesota? The most popular types of Software Engineer jobs in Minnesota are:
What job categories do people searching Mid Level Software Engineer jobs in Minnesota look for? The top searched job categories for Mid Level Software Engineer jobs in Minnesota are:
What cities in Minnesota are hiring for Mid Level Software Engineer jobs? Cities in Minnesota with the most Mid Level Software Engineer job openings:
Senior Software Engineer - New Product Development

Senior Software Engineer - New Product Development

Tennant Company

Golden Valley, MN • On-site

$97K - $150K/yr

Full-time

Medical, Dental, Vision, Life, Retirement, PTO

Posted 14 days ago


Tennant Company rating

7.8

Company rating: 7.8 out of 10

Based on 16 frontline employees who took The Breakroom Quiz

176th of 419 rated machine equipment manufacturers


Job description

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, Hardware, Test, Manufacturing, and external partners to resolve system-level challenges.
  • Provide technical guidance and informal mentorship to junior engineers.
  • Help drive alignment across teams on software interfaces, integration strategies, and technical decisions.
  • Clearly communicate technical status, risks, and recommendations to stakeholders.
  • Support product launches and help resolve issues during integration, validation, and early production.

Education & Experience
Required
  • Bachelor of Science in Electrical, Software or Computer Engineering.
  • Minimum 6-9 years of professional software engineering experience, including embedded or systems-level development.
  • Strong hands-on experience with C/C++ in Linux and/or RTOS environments.
  • Experience working with requirements management, configuration management, and defect tracking tools.
  • Demonstrated ability to debug hardware/software and system-level issues.
  • Proven experience working effectively on cross-functional engineering teams.

Preferred
  • Experience in robotics, autonomous systems, or complex electro-mechanical products.
  • Exposure to IoT and connected systems architectures.
  • Experience with scripting or higher-level languages such as Python or C#.
  • Familiarity with communication protocols such as CAN / CANOpen.
  • Experience with unit, integration, and system-level testing frameworks.
  • Demonstrated growth into technical leadership or subsystem ownership roles.

Key Attributes for Success
  • Strong hands-on engineer with growing system-level perspective.
  • Ability to balance execution with technical leadership and mentorship.
  • Solid architectural intuition with interest in scalable and maintainable system design.
  • Proactive problem solver comfortable working in complex, multi-disciplinary systems.
  • Collaborative communicator who can influence without authority.
  • Motivated to grow into principal-level technical leadership roles.

Total Compensation = Pay range + Benefits
Posted salary ranges are made in good faith. Tennant Co. reserves the right to adjust ranges depending on the experience/qualifications of the selected candidate as well as internal and external equity. The salary range reflects both entry into the role and future growth. Total Compensation = Base Salary + Benefits
Benefits = A comprehensive benefits package including multiple medical plan options, 401(k) with a 100% match up to 6%, paid vacation time, 8 paid company holidays and 3 personal holidays dental and vision coverage, wellness rewards, robust family support programs, company-paid disability and life insurance, and a full Employee Assistance Program.
Defining Our Employee Value Proposition
At Tennant Company, we...
Discover fulfilling work with opportunities for growth and meaningful recognition.
Drive the quality and innovation our customers rely on in our products and services.
Connect with people who care about each other, our brands and our communities.
These are the principles that define how our employees experience Tennant Company, make Tennant a great place to grow your career, and are at the core of our legacy and future. Together, they serve as guideposts for working with our customers, our partners and one another.
Begin your journey with us. Let's reinvent how the world cleans.
Equal Opportunity Employer
Tennant Company is an equal opportunity employer. Employment decisions are made on the basis of individual skill, ability, reliability, productivity, and other factors important to performance. We do not discriminate on the basis of race, color, creed, religion, sex, national origin, physical or mental disability, age, veteran status, pregnancy, sexual orientation, genetic information, gender identity, or any other basis protected by state or federal law or local ordinance.

What Tennant Company employees say

Pay

Benefits

Hours and flexibility

Workplace

Get the full story on Breakroom