Job Description
Job Description
Salary : Position Summary
Position Summary
A Software Engineer designs, implements, tests, and maintains software applications and software systems. Additional responsibilities include managing software development teams and projects, providing technical leadership and being the domain technical lead for software development of analytical instruments.
Team Description
Software engineering at Micromeritics is seeking technical personnel to be part of an established software team that has multiple opportunities for software engineers with web application frontend backgrounds.
Our development team employs software engineering techniques to design, implement, test, and maintain software applications with a focus on analytical instruments.
We are seeking individuals that can integrate their skillsets with a traditional engineering team for a multifaceted development program.
Job Purpose
A Senior Software Engineer designs, manages, implements, tests, and maintains software applications and software systems.
Additional responsibilities include domain technical leadership for software development of analytical instruments.
The Software Engineer must be proficient in systems and software engineering, C++ / C, build systems, toolchains, and embedded system and application design and implementation.
Key Responsibilities
- Managing teams and projects for analytical instrument development
- Develop software designs and requirements for existing and future products
- Perform development, debugging, maintenance, enhancement, and internal documentation of software
- Develop and maintain kernel and user-level software and scripts
- Contribute to technical reports and presentations
Additional Responsibilities
- Develop software designs and requirements for existing and future products
- Implement new software design and requirements for existing and future products
- Support implementation of system requirements into software requirements and maintainable design
- Regularly work with customers both internal and external as well as team members during the product life cycle to facilitate product quality
- Support migration and optimization of software for running on specific target platforms
- Provide engineering support for existing and in-development products
Required Minimum Qualifications
- Bachelor's degree software engineering or a master’s degree in physics, chemistry, or related field with software experience.
- Five (5) or more years’ experience in C++ and Python software development. Five (5) or more years of embedded software development.
- In-office availability
- Experience implementing embedded applications, hardware control algorithms, and numerical models for data reduction
- Demonstrable organizational, planning, prioritization, and problem-solving skills
- Demonstrable verbal and written skills
Preferred Qualifications
Ability to work both independently as well as within a broad base of people at all levels within the organization. Familiarity with the Texas Instruments DSP, Microsoft Windows, and Linux programming environments.