Primary responsibilities for this position include:
- Receive project goals from Project Manager. Determine what is required to accomplish the goals and the tools needed. Estimate requirement including time, effort, schedule, and skills, and report to Team Leader to ensure that resources are available.
- Design and develop software codes within established specifications using object oriented applications, languages and third party tools.
- Design, revise and maintain flow charts setting out code functions and classes as assigned.
- Design algorithms using mathematical and geometrical modeling as directed.
- Integrate codes with portions of software package developed by other team members.
- Test software for bugs and clean the code. Write testing scripts to operate and test all elements of programs. Review results and make necessary changes. Attempt to replicate problems, determine causes and fix codes to eliminate recurrence of problems.
- Ensure that all development efforts are integrated so that code is readily readable and maintainable by other team members.
- Design, develop and implement device drivers to ensure proper operation of software with other manufacturers’ coordinate measuring devices.
- Research new methods, libraries and tool versions. Maintain current awareness.
- Perform certain required functions as a team member, including but not limited to, submitting annual performance review of team members, participate in hiring and termination discussions, attend team meetings.
- Four (4) year degree in a technology related major (Computer Science, Engineering, Mathematics or Physics) or equivalent experience required.
- Must have at least 6 years development experience with C# and C++.
- Experience with C# using Visual Studio. NET 2008 required.
- Strong math background, especially in linear algebra, algebraic curved surface, and vector algebra.
- Must be comfortable working with a source code control system, specifically Visual Studio Team System (TFS)
- Experience in the following areas applies: C#, C++
- Must have excellent written and oral communication skills.
- Experience with Agile Scrum Development process a PLUS.
- CAD software development experience is a PLUS.