Job Description :
Job Description :
Responsible for functional empirical analysis and design related to developing and implementing software operating systems for company products. This may include, but is not limited to, operating software and diagnostic software. Involved in the development of testing strategies and software reliability studies for devices and systems, and standards for software documentation.

Reports to: Software Engineering Manager
Essential Duties:
Create, modify, direct, and maintain software for new and revised products.
Supervise other software engineers and technicians assigned to a particular job or project.
Assist to develop and track schedules for software development or revision.
Assist to develop programming standards and practices.
Identify, develop justifications for, and use software development tools such as assemblers, compilers, and emulators.
Work with the Design Engineer and/or Project Leader during the development of a new or revised design.
Assist to develop the definition of the software requirements, objectives, and modules for a new or revised design.
Perform or assist others to test software or establish software testing requirements.
Program in Assembly, C, and other high level languages.
Work with customers, users, and others to develop software operating requirements or to troubleshoot/debug existing problems. This includes travel when required.
Assist to train personnel on software operation of new or revised designs.
Assist the Technical Writer to write manuals and other publications as they relate to software.
Develop and/or direct device communications standards, software programs, and hardware requirements.
Estimate the Engineering effort and material required for jobs or proposals being quoted.
Perform other duties as assigned.
Requirements:
Bachelor’s degree in Electrical Engineering or equivalent plus six years of software design experience. • Ability to speak and write in a clear and understandable manner.
Good communicative capability to supply technical advice and information to others.
Ability to concentrate for extended periods.
Ability to exchange and furnish information requiring detailed explanation and discussions with customers and various levels of personnel.
Operate computer keyboard.
Travel as required for training, support of project tasks, product issues, or other design or job related needs.