# Tasks & work activities — embedded system designer Source: O*NET 30.3, occupation 15-1211.00 (Computer Systems Analysts). ## Task statements - **[Core]** Troubleshoot program and system malfunctions to restore normal functioning. - **[Core]** Provide staff and users with assistance solving computer-related problems, such as malfunctions and program problems. - **[Core]** Test, maintain, and monitor computer programs and systems, including coordinating the installation of computer programs and systems. - **[Core]** Use object-oriented programming languages, as well as client and server applications development processes and multimedia and Internet technology. - **[Core]** Confer with clients regarding the nature of the information processing or computation needs a computer program is to address. - **[Core]** Coordinate and link the computer systems within an organization to increase compatibility so that information can be shared. - **[Core]** Consult with management to ensure agreement on system principles. - **[Core]** Expand or modify system to serve new purposes or improve work flow. - **[Core]** Determine computer software or hardware needed to set up or alter systems. - **[Core]** Train staff and users to work with computer systems and programs. - **[Core]** Analyze information processing or computation needs and plan and design computer systems, using techniques such as structured analysis, data modeling, and information engineering. - **[Core]** Assess the usefulness of pre-developed application packages and adapt them to a user environment. - **[Core]** Define the goals of the system and devise flow charts and diagrams describing logical operational steps of programs. - **[Core]** Develop, document, and revise system design procedures, test procedures, and quality standards. - **[Core]** Recommend new equipment or software packages. - **[Core]** Read manuals, periodicals, and technical reports to learn how to develop programs that meet staff and user requirements. - **[Core]** Use the computer in the analysis and solution of business problems, such as development of integrated production and inventory control and cost analysis systems. - **[Core]** Specify inputs accessed by the system and plan the distribution and use of the results. - **[Supplemental]** Interview or survey workers, observe job performance, or perform the job to determine what information is processed and how it is processed. - **[Supplemental]** Review and analyze computer printouts and performance indicators to locate code problems, and correct errors by correcting codes. - **[Supplemental]** Supervise computer programmers or other systems analysts or serve as project leaders for particular systems projects. - **[Supplemental]** Prepare cost-benefit and return-on-investment analyses to aid in decisions on system implementation. ## Detailed work activities - Analyze data to identify or resolve operational problems. - Analyze project data to determine specifications or requirements. - Apply information technology to solve business or other applied problems. - Collaborate with others to determine design specifications or details. - Collect data about customer needs. - Configure computer networks. - Coordinate software or hardware installation. - Design integrated computer systems. - Develop diagrams or flow charts of system operation. - Develop testing routines or procedures. - Document design or development procedures. - Estimate time or monetary resources needed to complete projects. - Evaluate utility of software or hardware technologies. - Identify information technology project resource requirements. - Manage information technology projects or system activities. - Modify software programs to improve performance. - Monitor computer system performance to ensure proper operation. - Provide recommendations to others about computer hardware. - Provide technical support for software maintenance or use. - Read documents to gather technical information. - Select production input materials. - Supervise information technology personnel. - Test software performance. - Train others in computer interface or software use. - Troubleshoot issues with computer applications or systems. - Write computer programming code.