Computer Software Engineering Technology Essential Skills

Research, design, and develop computer and network software or specialized utility programs. Analyze user needs and develop software solutions, applying principles and techniques of computer science, engineering, and mathematical analysis. Update software or enhance existing software capabilities. May work with computer hardware engineers to integrate hardware and software systems, and develop specifications and performance requirements. May maintain databases within an application area, working individually or coordinating database development as part of a team.

 Sample of reported job titles:    Application Developer, Application Integration Engineer, Developer, Infrastructure Engineer, Network Engineer, Software Architect, Software Developer, Software Development Engineer, Software Engineer, Systems Engineer


Tasks

  • Analyze information to determine, recommend, and plan the installation of a new system or modification of an existing system.
  • Analyze user needs and software requirements to determine the 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.

Tools used in this occupation

  • Analyze project data to determine specifications or requirements.
  • Modify software programs to improve performance.
  • Supervise information technology personnel.
  • Apply mathematical principles or statistical approaches to solve problems in scientific or applied fields.
  • Assess database performance.
  • Assign duties or work schedules to employees.

Technology used in this occupation:

  • Database management system software — Amazon DynamoDB; Elasticsearch; MongoDB; NoSQL 
  • Database user interface and query software — Airtable; Apache Hive; Blackboard software; MySQL 
  • Development environment software — Advanced business application programming ABAP; Apache Ant; Common business-oriented language COBOL; Go 
  • Object or component oriented development software — Apache Spark; jQuery; Objective C; Scala 
  • Web platform development software — Backbone.js; Google AngularJS; Microsoft ASP.NET Core MVC; React 

Knowledge

  • Computers and Electronics — Knowledge of circuit boards, processors, chips, electronic equipment, and computer hardware and software, including applications and programming.
  • Engineering and Technology — Knowledge of the practical application of engineering science and technology. This includes applying principles, techniques, procedures, and equipment to the design and production of various goods and services.
  • English Language — Knowledge of the structure and content of the English language including the meaning and spelling of words, rules of composition, and grammar.
  • Mathematics — Knowledge of arithmetic, algebra, geometry, calculus, statistics, and their applications.
  • Design — Knowledge of design techniques, tools, and principles involved in the production of precision technical plans, blueprints, drawings, and models.

Skills

  • Programming — Writing computer programs for various purposes.
  • Systems Analysis — Determining how a system should work and how changes in conditions, operations, and the environment will affect outcomes.
  • Systems Evaluation — Identifying measures or indicators of system performance and the actions needed to improve or correct performance, relative to the goals of the system.
  • Judgment and Decision Making — Considering the relative costs and benefits of potential actions to choose the most appropriate one.
  • Complex Problem Solving — Identifying complex problems and reviewing related information to develop and evaluate options and implement solutions

Abilities

  • Deductive Reasoning — The ability to apply general rules to specific problems to produce answers that make sense.
  • Inductive Reasoning — The ability to combine pieces of information to form general rules or conclusions (includes finding a relationship among seemingly unrelated events).
  • Problem Sensitivity — The ability to tell when something is wrong or is likely to go wrong. It does not involve solving the problem, only recognizing there is a problem.
  • Information Ordering — The ability to arrange things or actions in a certain order or pattern according to a specific rule or set of rules (e.g., patterns of numbers, letters, words, pictures, mathematical operations).
  • Near Vision — The ability to see details at close range (within a few feet of the observer).

Work Activities

  • Interacting with Computers — Using computers and computer systems (including hardware and software) to program, write software, set up functions, enter data, or process information.
  • Making Decisions and Solving Problems — Analyzing information and evaluating results to choose the best solution and solve problems.
  • Updating and Using Relevant Knowledge — Keeping up-to-date technically and applying new knowledge to your job.
  • Communicating with Supervisors, Peers, or Subordinates — Providing information to supervisors, co-workers, and subordinates by telephone, in written form, e-mail, or in person.
  • Getting Information — Observing, receiving, and otherwise obtaining information from all relevant sources

Work Context

Face-to-Face Discussions - How often do you have to have face-to-face discussions with individuals or teams in this job?

  • Electronic Mail — 100% responded “Every day.”
  • Spend Time Sitting — 99% responded “Continually or almost continually.”
  • Face-to-Face Discussions — 87% responded “Every day.
  • Work With Work Group or Team — 82% responded “Extremely important.”
  • Importance of Being Exact or Accurate — 51% responded “Extremely important.”

Interests

  • Investigative — Investigative occupations frequently involve working with ideas and require an extensive amount of thinking. These occupations can involve searching for facts and figuring out problems mentally.
  • Realistic — Realistic occupations frequently involve work activities that include practical, hands-on problems, and solutions. They often deal with plants, animals, and real-world materials like wood, tools, and machinery. Many of the occupations require working outside and do not involve a lot of paperwork or working closely with others.
  • Conventional — Conventional occupations frequently involve following set procedures and routines. These occupations can include working with data and details more than with ideas. Usually, there is a clear line of authority to follow.

Work Styles

  • Analytical Thinking — Job requires analyzing information and using logic to address work-related issues and problems.
  • Attention to Detail — Job requires being careful about detail and thorough in completing work tasks.
  • Innovation — Job requires creativity and alternative thinking to develop new ideas for and answers to work-related problems.
  • Integrity — Job requires being honest and ethical.
  • Achievement/Effort — Job requires establishing and maintaining personally challenging achievement goals and exerting effort toward mastering tasks.

Work Values

  • Working Conditions — Occupations that satisfy this work value offer job security and good working conditions. Corresponding needs are Activity, Compensation, Independence, Security, Variety, and Working Conditions.
  • Recognition — Occupations that satisfy this work value offer advancement, the potential for leadership, and are often considered prestigious. Corresponding needs are Advancement, Authority, Recognition, and Social Status.
  • Achievement — Occupations that satisfy this work value are results-oriented and allow employees to use their strongest abilities, giving them a feeling of accomplishment. Corresponding needs are Ability Utilization and Achievement.