ThermoAnalytics (TAI) continues to grow and seeks entry level and experienced Software Engineers to join their team in either Calumet or Novi, Michigan. Software Engineers are at the heart of product development. They design, implement, test and maintain functional code making up software across the company’s portfolio of products. Daily tasks include requirements discovery, code design and programming, unit test design and programming, demonstration to customers and stakeholders, and collaboration in small development squads.
COMPENSATION/BENEFITS. $55,000 – $80,000 annually, based on your knowledge, experience and expertise, in addition to an extremely rich benefit package. To conform to U.S. Government regulations, applicants must be United States citizens or lawful permanent residents of the United States. Final candidates may be required to undergo a thorough background check, credit check and/or drug screen.
RESPONSIBILITIES OF THE SOFTWARE ENGINEER.
- Identify tasks needed to complete & write user stories, estimate story size; demonstrate completed stories.
- Collaborate with customers to develop feature requirements from user stories.
- Design, write, test and debug code.
- Design, prototype & implement physics-based algorithms, user-interfaces, application infrastructure or software test processes.
- Design and implement test cases to verify algorithm quality, code quality or software usability.
- Periodically assess software development process and implement improvements.
- Identify and obtain new technical skills and knowledge that support the business’ products and services.
- Field and dispatch technical support requests.
QUALIFICATIONS REQUIRED OF THE SOFTWARE ENGINEER.
- Bachelor’s degree in Computer Science, Software Engineering, Chemical, Electrical, Mechanical or Aerospace Engineering, Physics or related field.
- 1+ years’ experience designing, implementing debugging and testing computer code (C++ preferred).
- Computer Science fundamentals in object-oriented design, data structures, algorithm design, problem solving & complexity analysis.
- Proficiency in, at least, one modern programming language such as C, C++, Java, or Perl (C++ preferred).
- Debugging techniques in Linux and Windows environments.
- Practical use of software configuration management techniques and tools (Subversion preferred).
- Practical use of unit test frameworks (googletest preferred).
- Practical use of code quality tools (static code analysis, memory checking, profiling).
- Strong analytic and problem-solving skills; ability to self-prioritize tasks and manage multiple competing priorities.
- Ability to self-manage/adapt in a fast paced, high demand environment with changing priorities and direction.
- Effectively communicate technically complex information verbally, orally and graphically.
- Effectively collaborate with technical and non-technical staff members.
QUALIFICATIONS REQUIRED OF THE SENIOR SOFTWARE ENGINEER.
- Practical use of: GUI toolkits (Qt preferred) and design patterns.
- Demonstrated use of: formal test design methods and continuous integration systems.
- 3+ years experience using agile software development methods (Scrum and Kanban preferred).
- 3+ years building complex software systems that have been successfully delivered to customers.
- 3+ years direct experience in one or more of these technical areas: Computational Fluid Dynamics, Heat Transfer/Thermal Analysis, Electro-Optic Sensor Modeling, Numerical Methods, High-performance Computing, Scientific Visualization.
INTERESTED? Apply online below. No phone calls or walk-ins please.
ABOUT US. ThermoAnalytics is an Equal Opportunity Employer. Learn more at thermoanalytics.com.