We are seeking a highly motivated
Software Engineer III with 5+ years of professional software development experience to design, develop, test, and maintain desktop applications and system software in a Windows environment. The ideal candidate will have strong proficiency in
C/C++,
Qt, and
C# .NET, along with experience developing robust, high-performance applications that interface with hardware and external devices.
This role will collaborate closely with cross-functional teams including software, hardware, quality assurance, and product management to deliver innovative solutions that meet customer and business requirements.
Key Responsibilities- Design, develop, enhance, and maintain software applications using C/C++, Qt, and C# .NET on the Windows platform.
- Participate in all phases of the software development lifecycle, including requirements analysis, design, implementation, testing, deployment, and maintenance.
- Develop intuitive user interfaces and desktop applications using the Qt framework and Microsoft .NET technologies.
- Write clean, maintainable, and well-documented code following established coding standards and best practices.
- Troubleshoot, debug, and resolve software defects and performance issues.
- Collaborate with hardware and systems engineering teams to integrate software with electronic devices and subsystems.
- Develop and maintain software communication interfaces for connected devices and external systems.
- Create and execute unit tests and support system-level testing activities.
- Participate in design reviews, code reviews, and technical discussions.
- Contribute to software architecture decisions and continuous improvement initiatives.
- Support released products through issue investigation, troubleshooting, and enhancement activities.
Required Qualifications- Bachelor's degree in Computer Science, Software Engineering, Computer Engineering, or a related technical field.
- 5+ years of professional software development experience.
- Strong proficiency in:
- C/C++
- Qt Framework
- C# / .NET
- Experience developing software applications in a Windows environment.
- Solid understanding of object-oriented design principles and software engineering best practices.
- Experience with debugging, performance tuning, and software troubleshooting.
- Familiarity with source control systems such as Git, Azure DevOps, or similar tools.
- Strong problem-solving, analytical, and communication skills.
- Ability to work effectively both independently and within a collaborative team environment.
Desired Qualifications- Experience working with electronic hardware devices and embedded systems.
- Knowledge of communication protocols including:
- USB
- TCP/IP
- EtherCAT (preferred)
- Experience developing software that interfaces with instruments, sensors, or external hardware.
- Familiarity with multithreaded programming and inter-process communication.
- Experience with automated testing and continuous integration practices.
- Understanding of software-hardware integration and troubleshooting techniques.
Preferred Competencies- Strong attention to detail and commitment to software quality.
- Ability to analyze complex technical problems and deliver practical solutions.
- Excellent written and verbal communication skills.
- Demonstrated ability to manage multiple priorities in a fast-paced development environment.
- Passion for technology and continuous learning.
Compensation Package:
HORIBA Instruments offers a competitive compensation package that includes a 401(k) plan with match; employee group dental, vision, life, and disability (short and long-term) paid for by the company; medical insurance, family dental and vision insurance, and supplemental life insurance available with reasonable employee contributions; employee assistance program; paid holidays, vacation, and sick time; flexible spending accounts; and educational reimbursement and commuter benefit programs.