Software Developer
 Modify Occupation  Back To Titles

DESCRIPTION

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.

TASKS ranked from most to least important

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.

INDUSTRY

Finance and Insurance; Professional, Scientific, and Technical Services

SKILLS ranked from most to least important

Critical Thinking→ Using logic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusions or approaches to problems.

Reading Comprehension→ Understanding written sentences and paragraphs in work related documents.

Programming→ Writing computer programs for various purposes.

Speaking→ Talking to others to convey information effectively.

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.

Writing→ Communicating effectively in writing as appropriate for the needs of the audience.

Monitoring→ Monitoring/Assessing performance of yourself, other individuals, or organizations to make improvements or take corrective action.

Active Learning→ Understanding the implications of new information for both current and future problem-solving and decision-making.

Complex Problem Solving→ Identifying complex problems and reviewing related information to develop and evaluate options and implement solutions.

Quality Control Analysis→ Conducting tests and inspections of products, services, or processes to evaluate quality or performance.

Judgment and Decision Making→ Considering the relative costs and benefits of potential actions to choose the most appropriate one.

Operations Analysis→ Analyzing needs and product requirements to create a design.

Systems Analysis→ Determining how a system should work and how changes in conditions, operations, and the environment will affect outcomes.

Science→ Using scientific rules and methods to solve problems.

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.

Time Management→ Managing one's own time and the time of others.

ACTIVITIES ranked from most to least important

Interacting With Computers→ Using computers and computer systems (including hardware and software) to program, write software, set up functions, enter data, or process information.

Analyzing Data or Information→ Identifying the underlying principles, reasons, or facts of information by breaking down information or data into separate parts.

Getting Information→ Observing, receiving, and otherwise obtaining information from all relevant sources.

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.

Processing Information→ Compiling, coding, categorizing, calculating, tabulating, auditing, or verifying information or data.

Documenting/Recording Information→ Entering, transcribing, recording, storing, or maintaining information in written or electronic/magnetic form.

Identifying Objects, Actions, and Events→ Identifying information by categorizing, estimating, recognizing differences or similarities, and detecting changes in circumstances or events.

Thinking Creatively→ Developing, designing, or creating new applications, ideas, relationships, systems, or products, including artistic contributions.

Establishing and Maintaining Interpersonal Relationships→ Developing constructive and cooperative working relationships with others, and maintaining them over time.

Organizing, Planning, and Prioritizing Work→ Developing specific goals and plans to prioritize, organize, and accomplish your work.

Evaluating Information to Determine Compliance with Standards→ Using relevant information and individual judgment to determine whether events or processes comply with laws, regulations, or standards.

Developing and Building Teams→ Encouraging and building mutual trust, respect, and cooperation among team members.

Interpreting the Meaning of Information for Others→ Translating or explaining what information means and how it can be used.

Monitor Processes, Materials, or Surroundings→ Monitoring and reviewing information from materials, events, or the environment, to detect or assess problems.

Developing Objectives and Strategies→ Establishing long-range objectives and specifying the strategies and actions to achieve them.

Scheduling Work and Activities→ Scheduling events, programs, and activities, as well as the work of others.

Judging the Qualities of Things, Services, or People→ Assessing the value, importance, or quality of things or people.

Coordinating the Work and Activities of Others→ Getting members of a group to work together to accomplish tasks.

RESPONSIBILITIES ranked from most to least important >

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.

Collaborate with others to determine design specifications or details.

Collaborate with others to resolve information technology issues.

Communicate project information to others.

Coordinate software or hardware installation.

Design software applications.

Develop performance metrics or standards related to information technology.

Develop testing routines or procedures.

Document technical specifications or requirements.

Identify information technology project resource requirements.

Manage information technology projects or system activities.

Monitor computer system performance to ensure proper operation.

Prepare data for analysis.

Provide recommendations to others about computer hardware.

Provide technical support for software maintenance or use.

Teach others to use computer equipment or hardware.

ABILITIES ranked from most to least used

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.

Written Comprehension→ The ability to read and understand information and ideas presented in writing.

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).

Oral Comprehension→ The ability to listen to and understand information and ideas presented through spoken words and sentences.

Oral Expression→ The ability to communicate information and ideas in speaking so others will understand.

Written Expression→ The ability to communicate information and ideas in writing so others will understand.

Speech Recognition→ The ability to identify and understand the speech of another person.

Flexibility of Closure→ The ability to identify or detect a known pattern (a figure, object, word, or sound) that is hidden in other distracting material.

Fluency of Ideas→ The ability to come up with a number of ideas about a topic (the number of ideas is important, not their quality, correctness, or creativity).

Category Flexibility→ The ability to generate or use different sets of rules for combining or grouping things in different ways.

Originality→ The ability to come up with unusual or clever ideas about a given topic or situation, or to develop creative ways to solve a problem.

Selective Attention→ The ability to concentrate on a task over a period of time without being distracted.

Speech Clarity→ The ability to speak clearly so others can understand you.

KNOWLEDGE ranked from most to least required

Computers and Electronics→ Knowledge of circuit boards, processors, chips, electronic equipment, and computer hardware and software, including applications and programming.

Language→ Knowledge of the structure and content of a language - English, French, Swahili et cetera - including the meaning and spelling of words, rules of composition, and grammar.

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.

Mathematics→ Knowledge of arithmetic, algebra, geometry, calculus, statistics, and their applications.

COMPUTER PROGRAMS ranked alphabetically

Access software -- Desktop virtualization software; Remote computer/Terminal emulator

Administration software -- Software distribution management software

Analytical or scientific software -- Data analysis software; Dynamic modeling software; Simulation program with integrated circuit emphasis SPICE; The MathWorks Simulink; IBM SPSS Statistics; SAS

Application server software -- Docker; GitHub; Oracle Application Server; Oracle WebLogic Server; Red Hat OpenShift; Red Hat WildFly; Spring Boot

Backup or archival software -- Backup and archival software; Veritas NetBackup

Business intelligence and data analysis software -- e.g., Zoho Analytics; Tableau; Clear Analytics; IBM Cognos Impromptu; MicroStrategy; Oracle Business Intelligence Enterprise Edition; Qlik Tech QlikView

Communications server software -- Collaborative client-server software

Computer based training software -- Learning Platform/ course management system (CMS) software

Configuration management software — Automated installation software; Deployment software; Patch management software; Perforce Helix software; Puppet; Visible Razor; VMWare; Red Hat Ansible Engine

Content workflow software -- Project tracking software; Trello; Atlassian JIRA

Customer relationship management CRM software -- Constituent relationship management (CRM) system; Contact management software; Blackbaud The Raiser's Edge; Oracle Eloqua; Salesforce software

Database management system software -- Distributed database management software; Relational database management software; Structured Query Report SQR; Data definition language DDL; Data manipulation language DML; Amazon DynamoDB; Elasticsearch; Apache Hadoop; MongoDB; Microsoft transact-structural query language T-SQL; Teradata Database

Database reporting software -- e.g., Zoho Analytics; Microsoft SQL Server Reporting Services; Oracle Business Intelligence Discoverer; SAP Business Intelligence; SAP Crystal Reports

Data base user interface and query software -- Data entry software; Structured query language SQL; MySQL; Microsoft Access; Airtable; Apache Hive; Amazon Web Services AWS software; Blackboard software; Transact-SQL; FileMaker Pro

Data mining software -- e.g., Google Analytics

Desktop communications software -- e.g., Zoom; Google Meet; Skype

Desktop publishing software -- e.g., Scribus; Adobe Systems Adobe InDesign; Microsoft Publisher

Development environment software -- e.g., A programming language APL; ABC Compiler; Ada; Adobe Systems Adobe ActionScript; Advanced business application programming ABAP; Algorithmic language ALGOL; Apache Ant; Apache Kafka; Apache Maven; Assembler; AWK; B-Method; Beginner's all-purpose symbolic instruction code BASIC; Bigloo Scheme; C; Call-processing language CPL; Common business oriented language COBOL; Computer On-line Real-time Applications Language CORAL 66; Eclipse IDE; Embarcadero JBuilder; Embedded systems development software; Event-driven State-machines Programming; Formula translation/translator FORTRAN; Forth; Gambit Scheme; Go; Haskell; IBM Rational ClearQuest; IBM Rational Rose XDE Developer; IBM Rational Rose XDE Developer D93; ICON programming language; Integrated development environment IDE software; Interface definition language IDL; Interstate connection ICON; J; List processing language LISP; Microsoft .NET Framework; Microsoft Azure; Microsoft ESP SDK; Microsoft PowerShell; Microsoft Visual Basic; Microsoft Visual Basic for Applications VBA; Microsoft Visual Basic Scripting Edition VBScript; Microsoft Visual Studio; MUMPS M; National Instruments LabVIEW; Pascal; Programming language one PL/I; Prolog; Restructured extended executor REXX; Ruby; Scheme programming language; String oriented symbolic language SNOBOL; Sun Microsystems Java 2 Platform Enterprise Edition J2EE; Symantec Visual Cafe; Verilog; Web service definition language WDSL; Xcode; XML Path Language XPATH

Device drivers or system software -- e.g., Microsoft DirectX

Document management software -- Document management system software; Dropbox; Adobe Systems Adobe Acrobat

Electronic mail software -- e.g., Google Gmail; IBM Notes; Microsoft Exchange; Microsoft Outlook

Enterprise application integration software -- Enterprise application integration EAI software; Atlassian Bamboo; Extensible markup language XML; IBM WebSphere; Microsoft SQL Server Integration Services SSIS; Oracle Fusion Middleware

Enterprise resource planning ERP software -- e.g., Sage; Infor; Workday; Microsoft Dynamics GP; NetSuite ERP; Oracle Hyperion; Oracle JD Edwards EnterpriseOne

Enterprise system management software --e.g., IBM Power Systems software; Splunk Enterprise

Expert system software -- Ansible software

File versioning software -- Version control software; Apache Subversion SVN; Git

Filesystem software -- File server software

Financial analysis software -- Budgeting software; Forecasting software; Reporting software, Financial ratio analysis software

Graphical user interface development software -- Graphical user interface GUI builder software; Graphical user interface GUI design software; Salesforce Visualforce

Graphics or photo imaging software -- e.g., Adobe Systems Adobe Creative Cloud; Adobe Systems Adobe Fireworks; Adobe Systems Adobe Flash; Adobe Systems Adobe Illustrator; Adobe Systems Adobe Photoshop; GNU Image Manipulation Program GIMP; JamBoard; Microsoft Visio; Open Graphics Library OpenGL; SmugMug Flickr; Trimble SketchUp Pro

Information retrieval or search software -- Data serialization; Apache Avro; LexisNexis

Instant messaging software -- Private messaging applications; Group text messaging software

Internet protocol IP multimedia subsystem software -- Voice over internet protocol VoiP system software

Metadata management software -- CA Erwin Data Modeler; Talend Data Fabric

Network conferencing software -- Virtual platform meeting software; LogMeIn GoToWebinar

Network monitoring software -- Nagios; Wireshark

Network operation system software -- Mainframe operating system; IBM z/OS operating systems

Network security and virtual private network VPN equipment software -- Virtual private networking VPN software

Object or component oriented development software -- Component object model COM software; Distributed component object model DCOM software; Document Object Model DOM Scripting; Component-based Scalable Logical Architecture CSLA; ABC: the AspectBench Compiler for AspectJ; Apache Groovy; Apache Spark; C#; C++; Collaborative Application Markup Language CAML; Common Lisp Object System CLOS; E++ pattern language; Eiffel; Embarcadero Delphi; jQuery; Jupyter Notebook; Microsoft ActiveX; Microsoft Visual Basic.NET; Microsoft Visual C# .NET; Modula; Oberon; Objective C; Objective Caml; Oracle Java; Practical extraction and reporting language Perl; Python; R; SAP PowerBuilder; Scala; Self; Simple API for XML SAX; Smalltalk; Swift

Object oriented data base management software -- e.g., Hibernate ORM; PostgreSQL

Office suite software -- e.g., Google Workspace; Google Drive; LibreOffice; Microsoft Office

Operating system software -- Microsoft Windows; Microsoft Windows Server; Apple macOS; Bash; Cisco Systems IOS; Disk operating system DOS; Hewlett Packard HP-UX; IBM AIX; Job control language JCL; KornShell; Linux; Magellan Firmware; Operating system shells; Oracle Solaris; QNX; Real time operating system RTOS software; Red Hat Enterprise Linux; Shell script; Ubuntu; UNIX; UNIX Shell; Win CE; Wind River VxWorks

Platform interconnectivity software -- Migration software; Amazon Web Services AWS CloudFormation

Portal server software -- Apache HTTP Server

Presentation software -- e.g., Google Slides; Microsoft PowerPoint

Program testing software — Defect tracking software; Dynamic analysis software; Fault testing software; Functional testing software; Integration testing software; Interoperability testing software; Load testing software; Migration testing software; Mutation testing software; Recovery testing software; Regression testing software; Security testing software; Static analysis software; Stress testing software; System testing software; Test design software; Test implementation software; Unit testing software; Usability testing software; Hewlett Packard LoadRunner; JUnit ; Selenium; Source code editor software

Project management software -- Project documentation; Work breakdown structure; Project evaluation and review technique; Trello; Asana; Confluence; Microsoft SharePoint; Microsoft Teams; Oracle Primavera Enterprise Project Portfolio Management; Slack

Requirements analysis and system architecture software -- Requirements management software; IBM Rational Requisite Pro; Unified modeling language UML

Spreadsheet software -- e.g., Google Sheets; Microsoft Excel

Storage networking software -- Storage area network SAN software; Amazon Simple Storage Service S3

Transaction security and virus protection software -- Encryption software; McAfee; Symantec

Transaction server software -- Customer information control system CICS; Web server software; Microsoft Internet Information Service IIS; Object Management Group Object Request Broker

Video conferencing software -- e.g., Zoom; Microsoft Teams; Cisco Systems Webex; FaceTime; Google Meet; LogMeIn GoToMeeting

Video creation and editing software -- e.g., Tiktok; Adobe Systems Adobe AfterEffects; Flipgrid; Loom; Screencastify; YouTube

Web page creation and editing software -- Social media sites; Adobe Systems Adobe Dreamweaver; Google Sites; LinkedIn

Web platform development software -- e.g., Dynamic hypertext markup language DHTML; Extensible HyperText Markup Language XHTML; Backbone.js; Hypertext markup language HTML; Google AngularJS; JavaScript; Microsoft ASP.NET

Word processing software -- e.g., 3M Post-it App; Google Docs; Microsoft OneNote; Microsoft Word

TOOLS ranked alphabetically

Central processing unit CPU processors→ Graphics processing unit GPU; Multi-core central processing unit CPU

Computer servers→ Application servers

Desktop computers

Digital cameras

Flash memory storage card→ Flash disks

High end computer servers→ Directory servers

Integrated circuit testers→ In circuit emulators ICE; Logic analyzers

Mainframe computers

Notebook computers

INTERESTS ranked from most to least relevant

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.

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.

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.

WORK STYLE ranked from most to least relevant

Attention to Detail→ Job requires being careful about detail and thorough in completing work tasks.

Analytical Thinking→ Job requires analyzing information and using logic to address work-related issues and problems.

Dependability→ Job requires being reliable, responsible, and dependable, and fulfilling obligations.

Adaptability/Flexibility→ Job requires being open to change (positive or negative) and to considerable variety in the workplace.

Integrity→ Job requires being honest and ethical.

Persistence→ Job requires persistence in the face of obstacles.

Cooperation→ Job requires being pleasant with others on the job and displaying a good-natured, cooperative attitude.

Initiative→ Job requires a willingness to take on responsibilities and challenges.

Stress Tolerance→ Job requires accepting criticism and dealing calmly and effectively with high stress situations.

Achievement/Effort→ Job requires establishing and maintaining personally challenging achievement goals and exerting effort toward mastering tasks.

Self Control→ Job requires maintaining composure, keeping emotions in check, controlling anger, and avoiding aggressive behavior, even in very difficult situations.

Independence→ Job requires developing one's own ways of doing things, guiding oneself with little or no supervision, and depending on oneself to get things done.

Innovation→ Job requires creativity and alternative thinking to develop new ideas for and answers to work-related problems.

Leadership→ Job requires a willingness to lead, take charge, and offer opinions and direction.

Concern for Others→ Job requires being sensitive to others' needs and feelings and being understanding and helpful on the job.

VALUES ranked from most to least relevant

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.

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.

Independence→ Occupations that satisfy this work value allow employees to work on their own and make decisions. Corresponding needs are Creativity, Responsibility and Autonomy.