Product Engineer - Software

Since 1936, millions of samples worldwide have been analyzed using LECO instruments for elemental analysis, thermal analysis, metallography, and mass spectrometry. Our comprehensive solutions for improving productivity include working with you to find the right equipment for the type of analysis you are doing — and providing you with the training, application support, and service you need to keep your lab running at its best.
For over 80 years, LECO has been a leader in the development and production of world class laboratory instruments delivering state of the art products nationwide and across the globe. Located in St. Joseph, Michigan, LECO continues to be a family-owned company that understands the value of shared interests, long-term stability, loyalty, and trust.
Product Engineer - Software
Schedule:
Monday-Friday, 8AM-12PM, 1PM-5PM Eastern Time.
Onsite or remotely from a non-distracting environment. Some onsite time will be required depending on the project.
Position Summary:
- Develop and maintain Windows desktop software in C# and WPF (Windows Presentation Foundation) for LECO’s laboratory instruments. This software enables users to analyze sample data and review results, supporting quality assurance in industries such as metallurgy, food production, and water purification. The Product Engineer – Software plays a key role in delivering reliable, high-performance applications that integrate with LECO hardware to ensure accurate and meaningful analytical results.
Position Responsibilities: - Cross-Functional Team Representation: Serve as the software representative on a cross-functional product development team, acting as the voice of software engineering in planning and decision-making.
- Collaborative Development: Work closely with scientists and engineers from other disciplines to co-develop new integrated hardware/software products. Engage with collaborators with empathy and clear communication to gather requirements and plan solutions.
- Impediment Identification: Proactively identify and communicate any impediments or blockers to software development progress, ensuring potential issues are raised early and addressed jointly with the team.
- Requirement Fulfillment: Ensure all software requirements and specifications are met with high-quality, maintainable code that aligns with product needs and user expectations.
- Legacy Code Enhancement: Productively work within and enhance an existing codebase. Understand sub-optimal or legacy code sections and improve them incrementally without unnecessary large-scale rewrites, balancing innovation with stability.
- Technical Solution Planning: Contribute to technical discussions and architectural decisions with a collaborative mindset. Listen to feedback from other engineers and scientists, and help plot a path forward that results in appropriate, effective software solutions.
Position Requirements:
- Technical Expertise: Strong proficiency in C# programming and WPF for Windows desktop application development. Demonstrated experience building and shipping desktop software (preferably in a .NET environment).
- Code Maintenance Skills: Ability to navigate, understand, and improve existing codebases. Skilled in refactoring and enhancing legacy code while preserving functionality. High standards for code quality, readability, and maintainability.
- Collaboration & Communication: Excellent teamwork skills with the ability to collaborate in cross-functional groups. Effective communication and active listening skills, especially when working with non-software professionals (e.g., scientists, mechanical engineers).
- Dependability: Proven track record of delivering reliable, working software solutions. Shows responsibility and accountability in meeting commitments. Willingness to take the time needed to produce solid results rather than rushing deliverables—quality is prioritized over speed.
- Education: Bachelor’s degree in Computer Science (or a related field), or equivalent practical experience in software development.
Education/Certifications:
Bachelor’s degree, preferably in Computer Science, or equivalent experience.