What are the responsibilities and job description for the Software Engineer position at Ametek?
AMT Software Engineers design and develop new software and maintain existing software systems composed of software applications and services that run on a variety of platforms including desktop and server computers running Microsoft Windows operating systems as well as AMT-designed instruments for ORTEC, Solartron, Princeton Applied Research, and related brands. The primary assignments of an AMT Numeric Algorithms Software Engineer are focused on designing, coding, and maintaining numerical algorithms related to nuclear radioisotope spectroscopy and electrochemistry. In addition to exceptional mathematics and software development capabilities, strong soft skills such as teamwork, collaboration, communication, decision making, and influencing people are essential to success.
ESSENTIAL DUTIES AND RESPONSIBILITIES
- Designs and implements software that must be extensible, maintainable, and testable
- Provides thought leadership about applicable new and improved algorithms, technologies, and tools
- Provides technical leadership for assigned modules and subsystems
- Authors and maintains technical requirements, designs, and similar documentation as necessary
- Takes an agile approach to software development
- Works effectively in a cross-discipline, globally dispersed engineering team
- Works effectively with other departments such as Product Support and Product Management
- Works effectively with vendors, outsource partners, and customers
- Works within the AMT Engineering Product Development Process
- Continuously improves skills and stays current with latest technologies, design patterns, etc.
EDUCATION and/or EXPERIENCE
Minimum Requirements
- Bachelor's degree (BS) from four-year college or university in Nuclear Engineering, Nuclear Physics, Computer Science, Computer Engineering, Electrical Engineering, or similar fields of study
- Five (5) years applicable experience
- Due to potential work on ITAR products and projects, applicants must be a U.S. Person (citizen or
green card holder) - Proficiency with the following programming languages / technologies / techniques:
- Design and coding of complex numeric algorithms
- Nuclear radioisotope spectroscopy
- C# and C
- Software design and programming targeting Windows operating systems
- Configuration management tools such as SVN, Git, TFS, etc.
Desired Skills
- Proficiency with many of the following programming languages / technologies / processes:
- Electrochemical algorithms such as electrochemical impedance spectroscopy
- Python, C, MATLAB, Fortran, HTML-5, Javascript (Angular or React), and/or Visual Basic
- Software development using multi-threading
- Software development of servers / services (Windows services, web services, etc.)
- Developing software for data acquisition systems that interface with a variety of sensing technologies
- Secure software development
- Agile / Scrum software development lifecycle
- CI / CD, DevOps