Write the software that controls the movement of assembly-line robots.
Create the artificial intelligence that controls characters in video games like The SimsTM.
Develop software for a portable global positioning system (GPS) so drivers don't get lost.
Write software that allows people to communicate over great distances.
Overview
Listen to this section
Are you interested in developing cool video game software for computers? Would you like to learn how to make software run faster and more reliably on different kinds of computers and operating systems? Do you like to apply your computer science skills to solve problems? If so, then you might be interested in the career of a computer software engineer.
Software Engineer
In this video, Jessica Mong explains how fixing a broken computer when she was a child in Nigeria eventually inspired her to earn a computer engineering scholarship in the U.S. and start her career as a software engineer.
Do You Have the Skills and Characteristics of a Computer Software Engineer?
Programming:?Writing computer programs for various purposes.
Active Listening:?Giving full attention to what other people are saying, taking time to understand the points being made, asking questions as appropriate, and not interrupting at inappropriate times.
Complex Problem Solving:?Identifying complex problems and reviewing related information to develop and evaluate options and implement solutions.
Critical Thinking:?Using logic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusions or approaches to problems.
Original Thinking:?Seeking new and creative ways to solve problems or invent solutions.
Quality Control Analysis:?Conducting tests and inspections of products, services, or processes to evaluate quality or performance.
Core Tasks
Think about if you'd like the typical tasks a Computer Software Engineer might do:
Analyze information to determine, recommend, and plan installation of a new system or modification of an existing system.
Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
Confer with data processing or project managers to obtain information on limitations or capabilities for data processing projects.
Confer with systems analysts, engineers, programmers and others to design systems and to obtain information on project limitations and capabilities, performance requirements and interfaces.
Consult with customers or other departments on project status, proposals, or technical issues, such as software system design or maintenance.
Coordinate installation of software system.
Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcomes and consequences of design.
Determine system performance standards.
Develop or direct software system testing or validation procedures, programming, or documentation.
Modify existing software to correct errors, adapt it to new hardware, or upgrade interfaces and improve performance.
Monitor functioning of equipment to ensure system operates in conformance with specifications.
Obtain and evaluate information on factors such as reporting formats required, costs, or security needs to determine hardware configuration.
Prepare reports or correspondence concerning project specifications, activities, or status.
Recommend purchase of equipment to control dust, temperature, or humidity in area of system installation.
Specify power supply requirements and configuration.
Store, retrieve, and manipulate data for analysis of system capabilities and requirements.
Supervise and assign work to programmers, designers, technologists, technicians, or other engineering or scientific personnel.
Supervise the work of programmers, technologists and technicians and other engineering and scientific personnel.
Train users to use new or modified equipment.
Tasks 1/3
Salary & Job Openings
Steps to Get There: Becoming a Computer Software Engineer
Try it Out with an Activity or Project
On the Job
More Information
Please create a free account to view this career and access our full library of over 160 STEM careers.
With a free account you will have access to our full library of over 160 STEM careers. Each career profile includes detailed information to help you learn about a career and the requirements to get there. You can explore:
salary information by state
recommended high school coursework
fun projects and activities to test out a career
videos and interviews with professionals in the field