Description
Develop and maintain software solutions that interface with neutronics, and spectroscopy hardware and software devices, to perform data acquisition, analysis, instrument control, and reporting in support of system orders and product developments. This position will support a diverse System's team working with hardware engineers, physicists, and customers for requirements gathering, solution development, design, implementation, testing, and software release. The Associate Software Engineer will ensure all solutions follow Mirion's QA and engineering processes and provides complete documentation and testing to demonstrate adherence to requirements. ESSENTIAL DUTIES
- Assist in the development, maintenance, and deployment of new and existing Windows-based systems.
- Work closely with senior developers to evaluate requirements, develop, and maintain software solutions for Windows-based systems.
- Generate software documentation with emphasis on SRS, SDD, and test plans.
- Implement and test software to meet required specifications following Mirion's QA processes as assigned.
- Create supporting unit tests for application code.
- Provide product support as assigned to marketing and customer service.
- Troubleshoot issues and Develop Software Patches.
- Provide support to acceptance testing and installations.
- Perform installations and training at customer site.
- Stay abreast of emerging computing technologies.
ESSENTIAL REQUIREMENTS
- Candidate should be highly motivated, independent/self-directed, detail oriented, a strong individual contributor, and a strong team player.
- Understand basic hardware principles so she/he can interface with our hardware and firmware groups.
- Understand math and physics concepts so she/he can interface with our Physics and Services teams.
- Ability to comprehend complex requirements and write technical specifications.
Must be able to read and understand complex domain-specific documents, and design and implement systems based on those documents.
Knowledge of database platforms, architecture, SQL language and SQL server tools.
- Knowledge and experience debugging and troubleshooting Windows-based applications, computer networking, and operating systems related problems.
- Knowledge of programming languages and tools; primarily C/C++, .NET, Visual Basic, C#, DevOps, Unit test frameworks, and scripting components/language programming.
- In depth knowledge of Windows operating systems and networking protocols.
- Ability to develop and test software algorithms demonstrating strong math skills.
- Develop GUI mockups, prototypes, and proof of concepts as needed.
- Meet deadlines and ensure proper delivery of all assigned design and/or development tasks.
- Knowledge of appropriate technical standards (e.g., ISO, IEEE, IEC, etc.).
- Generate and maintain software documentation.
- Strong written and verbal communication skills.
- Experience with real-time systems software development is highly desired.
- Experience working with multi-tiered or service-oriented architectures.
ADDITIONAL REQUIREMENTS
- Ability to travel approximately 5%.
- Some familiarity with basic instrumentation products and how embedded applications work.
- Other desired application skills and knowledge include COM, Jenkins, JIRA, Python, Windows script host, Digital IO.
- Some familiarity with application installs and InstallShield.
EDUCATION AND EXPERIENCE REQUIREMENTS
- BS degree in a technical field. Very exceptional work experience may be considered as a substitute for a formal education degree.
- Five or more years' prior experience.
Qualifications
Education
Bachelors (required)
Experience
Five or more year's prior experience. (required)
Equal Opportunity Employer/Protected Veterans/Individuals with Disabilities This employer is required to notify all applicants of their rights pursuant to federal employment laws. For further information, please review the Know Your Rights notice from the Department of Labor.
|