- Modifying software to fix errors,adapt it to new hardware, improve its performance, or upgradeinterfaces.
- Directing system testing andvalidation procedures.
- Directing softwareprogramming and documentationdevelopment.
- Consulting with departments orcustomers on project status andproposals.
- Working with customers ordepartments on technical issues including software system designand maintenance.
- Analyzing information torecommend and plan the installation of new systems or modificationsof an existing system.
- Consulting withengineering staff to evaluate software hardware interfaces anddevelop specifications and performancerequirements.
- Designing and developing softwaresystems using scientific analysis and mathematical models topredict and measure outcomes and designconsequences.
- Preparing reports on programmingproject specifications, activities, orstatus.
- Conferring with project managers toobtain information on limitations orcapabilities.