Staff Software Engineer
Company | Onto Innovation |
---|---|
Location | Bloomington, MN, USA |
Salary | $Not Provided – $Not Provided |
Type | Full-Time |
Degrees | Bachelor’s, Master’s |
Experience Level | Senior, Expert or higher |
Requirements
- Bachelor’s or Master’s degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field.
- Proven experience (7+ years for senior) in software development for highly technical applications.
- Strong knowledge of hardware-software integration and experience working with complex systems.
- Excellent skillset focused on Windows development, the .NET platform (C#, C++), and relation databases (SQL Server a plus).
- Experience with software development methodologies such as Agile, Scrum, or Kanban.
- Excellent problem-solving skills and the ability to think critically and creatively.
- Experience with version control systems (e.g., Git, AzureDevOps) and continuous integration/continuous deployment (CI/CD) practices.
- Excellent problem-solving skills and attention to detail and quality. Demonstrated experience debugging complex multi-threaded environments.
- Strong written and verbal communication and collaboration skills.
- Ability to travel both domestically (~10%) and internationally (infrequent and only when needed)
Responsibilities
- Key member of a small team of software engineers supporting full software lifecycle activities for automation applications of the Inspectrology Business Unit (IBU).
- Participate in New Product Development (NPD) activities by collaborating in a team setting with hardware engineers, application engineers, Technical Project Managers and Program/Product Managers.
- Develop and maintain software applications that integrate with complex semiconductor handling systems.
- Collaborate with hardware engineers to ensure seamless hardware-software integration.
- Conduct thorough testing and debugging of software to ensure high-quality and reliable operation.
- Participate in the design and implementation of new features and functionalities.
- Perform requirement analysis and capture, develop detailed SW designs, code and associated test plans.
- Perform design/code reviews for all deliverables, collaborating with the systems engineers, software developers, and other technical staff.
- Optimize software performance and ensure scalability.
- Document software designs, processes, and troubleshooting steps.
- Provide technical support and guidance to other team members.
- Stay updated with the latest industry trends and technologies in software development and hardware-software integration.
Preferred Qualifications
- Experience in the semiconductor industry, robotics, or similar sector.
- Familiarity with hardware communication protocols and embedded systems is a plus.
- Knowledge of real-time operating systems (RTOS) and embedded software development.
- Experience with software estimation a plus.