> Markdown version of [/jobs/ext/3420774-software-engineer](https://www.wearedevelopers.com/jobs/ext/3420774-software-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Software Engineer - **Company:** Tennant Company - **Location:** Minneapolis, MN, United States - **Experience:** Expert - **Salary:** $97,500.0 - $150,600.0 - **Contract:** Permanent contract - **Skills:** ASP.NET, .NET Framework, Application Programming Interfaces (APIs), Amazon Web Services, Software Applications, JIRA, Microsoft Azure, C Sharp (Programming Language), CAN Bus, Cloud Engineering, Code Review, Databases, Computer Engineering, Continuous Integration, Data Security, Dependency Injection, Software Design Patterns, DevOps, Web Development, Language Integrated Query, Entity Framework, Extensible Application Markup Language, Github, Human-Computer Interaction, JSON, Python (Programming Language), Microsoft Visual Studio, Windows Presentation Foundation, Microsoft SQL Server, Object-Oriented Software Development, Performance Tuning, Software Architecture, Systems Development Life Cycle, Cloud Services, Single Sign-On, Software Engineering, Structured Programming, TCP/IP, Windows Desktop, Extensible Markup Language (XML), Data Logging, Data Processing, Multithreading, Cloud Platform System, Software Distribution, Blazor, Peripherals, Backend, Git, Data Layers, Solid Principles, Information Technology, Deployment Automation, Data Analytics, Bitbucket, Asynchronous Programming, Api Design, Communication Devices, Restful APIs, Software Version Control, Windows Client, Web Api - **Published:** September 11, 2026 - **Apply:** https://www.thejobnetwork.com/job/senior-software-engineer-509964241 ## About the Role * Bachelor's degree in Computer Science, Software Engineering, Computer Engineering, Electrical Engineering, or related field with 5+ years of relevant experience; or Master's degree with 3+ years of relevant experience. * Strong hands-on experience building Windows desktop client applications in .NET using C#, WPF, and XAML. * Strong grasp of C#, modern .NET, SQL Server, API development, and software architecture/design fundamentals. * Experience working with peripherals or external devices that connect to client applications, including protocols such as HID (Human Interface Device), CDC (Communication Device Class), MSC (Mass Storage Class), CAN (Controller Area Network) etc. * Strong background in cloud-native software development using Azure, AWS, or GCP, including compute, storage, service integration, and API-driven architectures. * Hands-on experience leading projects and leading local and remote teams to build, enhance, support, and deliver critical software applications. * Experience with relational databases and SQL Server development, including query design, performance considerations, and data-driven application behavior. * Familiarity with Python for scripting, tooling, automation, data processing, or engineering support workflows. * Experience with source control and SDLC tools such as Git, Visual Studio, JIRA, Bitbucket, or GitHub. * Ability to apply technical judgment to ambiguous, complex problems and independently drive work items through completion. Preferred Experience: * Experience with asynchronous programming, task-based concurrency, multi-threaded application design, and performance optimization in device-connected or desktop applications. * Strong understanding of object-oriented design, SOLID principles, dependency injection / IoC, and common design patterns. * Experience with ORMs and data access technologies such as Entity Framework or LINQ. * Experience working with XML, JSON, REST APIs, and service-based integrations. * Exposure to web application development technologies such as ASP.NET, Blazor, or Web API to support future browser-based or hybrid solution paths. * Exposure to CI/CD pipelines, automated deployments, monitoring, alerting, and operational diagnostics for critical applications. * Understanding of secure software distribution, single sign-on, role-based access, and modern authentication/authorization approaches. * Awareness of product safety regulations, cybersecurity expectations, and software lifecycle obligations relevant to connected products in industrial or equipment-focused environments. * Experience supporting on-demand resource delivery from the cloud as well as advanced download workflows for devices or environments with connectivity constraints. Skills: * Ability to write code that is easily maintainable, reliable, well-structured, and aligned with common programming best practices. * Ability to combine complex technical information with business conditions into a coherent picture and present it clearly to team members, internal stakeholders, and external partners. * Ability to build consensus and influence others through strong leadership, communication, and collaboration skills. * Ability to solve difficult technical and team challenges, systematically and methodically across desktop software, cloud systems, connected devices, and databases. * Excellent troubleshooting and problem-solving skills, including root cause analysis across applications, systems, and data layers. * Strong ownership mindset and willingness to take responsibility for critical software components from design through support. * Willingness to continuously improve self, products, and team, and to learn and apply emerging technologies as business needs evolve. ## Description * Develop, maintain, and improve a suite of mission-critical service, diagnostics, and programming applications that have a direct impact on Tennant's business operations and customer support capabilities. * Design and modernize Windows client applications using C#, WPF, and XAML with strong emphasis on usability, reliability, maintainability, security, and performance. * Build and enhance cloud-native backend services and APIs using Azure, AWS, or GCP to support software distribution, secure access, diagnostics, telemetry-adjacent workflows, and future network-enabled device experiences. * Develop solutions that support both current device-connected workflows (including USB HID and peripherals) and future TCP/IP-based communication models to enable broader browser-based and device-agnostic experiences over time. * Work closely with product managers, architects, and cross-functional stakeholders to translate business requirements into well-designed, implemented, tested, and documented solutions. * Lead design sessions and code reviews, promote sound design patterns, clean architecture, structured programming fundamentals, and robust engineering practices across the team. * Become the technical owner and subject matter expert for assigned applications, high-risk or high-complexity features, and key architecture initiatives. * Starting from higher-level business and technical requirements, independently estimate, decompose, prioritize, and deliver work with minimal oversight. * Troubleshoot and resolve defects and production issues spanning desktop software, cloud services, connected systems, and databases using a wide range of tools and techniques to identify root cause and implement resilient solutions. * Contribute to and help advance CI/CD, DevOps, monitoring, logging, and deployment reliability practices for critical software components. * Mentor and support other software developers through design collaboration, code reviews, technical guidance, pairing, and knowledge sharing across local and remote teams. * Partner with security, quality, and compliance stakeholders to support secure access patterns, SSO integration, software integrity, and awareness of applicable product safety and cybersecurity expectations for connected equipment. ## Related Videos - [Navigating the Corporate Jungle: Life as a Developer in a large Company](https://www.wearedevelopers.com/videos/621-navigating-the-corporate-jungle-life-as-a-developer-in-a-large-company) - [How a Small Team Shrank a Microsoft Monorepo by 94%](https://www.wearedevelopers.com/videos/1236-how-a-small-team-shrank-a-microsoft-monorepo-by-94) - [GitOps for the people](https://www.wearedevelopers.com/videos/461-gitops-for-the-people) - [Tips and Tricks for Working with JSON](https://www.wearedevelopers.com/videos/1229-tips-and-tricks-for-working-with-json) - [You’re a great coder? That alone won’t get you far: The soft skills secret in IT success](https://www.wearedevelopers.com/videos/1076-you-re-a-great-coder-that-alone-won-t-get-you-far-the-soft-skills-secret-in-it-success) - [Git for Code Reviews](https://www.wearedevelopers.com/videos/429-git-for-code-reviews) ## Related Articles - [What is Software Engineering?](https://www.wearedevelopers.com/magazine/289-what-is-software-engineering) - [What’s the Difference between a Junior, Mid, and Senior Developer?](https://www.wearedevelopers.com/magazine/238-what-s-the-difference-between-a-junior-mid-and-senior-developer) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [7 Important Tips That Every Software Developer Should Know](https://www.wearedevelopers.com/magazine/101-7-important-tips-that-every-software-developer-should-know) - [Top Characteristics of a Software Engineer](https://www.wearedevelopers.com/magazine/166-top-characteristics-of-a-software-engineer) - [The Most Popular IT Jobs on the Market](https://www.wearedevelopers.com/magazine/376-the-most-popular-it-jobs-on-the-market)