The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in C++.
Skill reusability level
Relationships with occupations
C++ is an essential knowledge of the following occupations:
Computer-aided design operator: Computer-aided design operators use computer hardware and software in order to add the technical dimensions to computer aided design drawings. Computer-aided design operators ensure all additional aspects of the created images of products are accurate and realistic. They also calculate the amount of materials needed to manufacture the products. Later the finalised digital design is processed by computer-aided manufacturing machines that produce the finished product.
Numerical tool and process control programmer: Numerical tool and process control programmers develop computer programs to control automatic machines and equipment involved in manufacturing processes. They analyse blueprints and job orders, conduct computer simulations and trial runs.
Computer science lecturer: Computer science lecturers are subject professors, teachers, or lecturers who instruct students who have obtained an upper secondary education diploma in their own specialised field of study, computer science, which is predominantly academic in nature. They work with their university research assistants and university teaching assistants for the preparation of lectures and of exams, grading papers and exams and leading review and feedback sessions for the students. They also conduct academic research in their field of computer science, publish their findings and liaise with other university colleagues.
C++ is optional for these occupations. This means knowing this knowledge may be an asset for career advancement if you are in one of these occupations.
Telecommunications engineer: Telecommunications engineers design, build, test and maintain telecommunication systems and networks, including radio and broadcasting equipment.
They analyse customer needs and requirements, ensure that the equipment meets regulations, and prepare and present reports and proposals on telecommunication-related problems. Telecommunications engineers design and oversee the service delivery in all it’s phases, supervising the installation and use of telecommunications equipment and facilities, preparing documentation and providing training for company staff once new equipment has been installed.
Software analyst: Software analysts elicit and prioritise user requirements, produce and document software specifications, test their application, and review them during software development. They act as the interface between the software users and the software development team.
Integration engineer: Integration engineers develop and implement solutions which coordinate applications across the enterprise or its units and departments. They evaluate existing components or systems to determine integration requirements and ensure that the final solutions meet organisational needs. They reuse components when possible and assist management in taking decisions. They perform ICT system integration troubleshooting.
Embedded system designer: Embedded system designers translate and design requirements and the high-level plan or architecture of an embedded control system according to technical software specifications.
Software tester: Software testers perform software tests. They may also plan and design them. They may also debug and repair software although this mainly corresponds to designers and developers. They ensure that applications function properly before delivering them to internal and external clients.
Data warehouse designer: Data warehouse designers are responsible for planning, connecting, designing, scheduling, and deploying data warehouse systems. They develop, monitor and maintain ETL processes, reporting applications and data warehouse design.
Chief ICT security officer: Chief ICT security officers protect company and employee information against unauthorized access. They also define the Information System security policy, manage security deployment across all Information Systems and ensure the provision of information availability.
Enterprise architect: Enterprise architects balance technological opportunities with business requirements. They also maintain a holistic view of the organisation’s strategy, processes, information and ICT assets and link the business mission, strategy and processes to the ICT strategy.
Mobile application developer: Mobile app developers implement applications software for mobile devices, based on the designs provided, using general or specific development tools for device operating systems.
ICT intelligent systems designer: ICT intelligent systems designers apply methods of artificial intelligence in engineering, robotics and computer science to design programs which simulate intelligence including thinking models, cognitive and knowledge-based systems, problem solving, and decision making. They also integrate structured knowledge into computer systems (ontologies, knowledge bases) in order to solve complex problems normally requiring a high level of human expertise or artificial intelligence methods.
Computer hardware engineering technician: Computer hardware engineering technicians collaborate with computer hardware engineers in the development of computer hardware, such as motherboards, routers, and microprocessors. Computer hardware engineering technicians are responsible for building, testing, monitoring, and maintaining the developed computer technology.
ICT technician: ICT technicians install, maintain, repair and operate information systems and any ICT related equipment (laptops, desktops, servers, tablets, smart phones, communications equipment, printers and any piece of computer related peripheral networks), and any type of software (drivers, operating systems, applications).
ICT application configurator: ICT application configurators identify, record, and maintain user-specific application configurations based upon user requirements and business rules. They configure generic software systems in order to create a specific version applied to an organisation’s context. These configurations range from adjusting basic parameters through the creation of business rules and roles in the ICT system to developing specific modules (including the configuration of Commercial off-the-shelf systems (COTS)). They also document configurations, perform configuration updates, and ensure the configurations are correctly implemented in the application.
Embedded systems software developer: Embedded systems software developers program, implement, document and maintain software to be run on an embedded system.
Computer numerical control machine operator: Computer numerical control machine operators set-up, maintain and control a computer numerical control machine in order to execute the product orders. They are responsible for programming the machines, ensuring the required parameters and measurements are met while maintaining the quality and safety standards.
Chief technology officer: Chief technology officers contribute to a company’s technical vision and lead all aspects of technology development, according to its strategic direction and growth objectives. They match technology with business needs.
Knowledge engineer: Knowledge engineers integrate structured knowledge into computer systems (knowledge bases) in order to solve complex problems normally requiring a high level of human expertise or artificial intelligence methods. They are also responsible for eliciting or extracting knowledge from information sources, maintaining this knowledge, and making it available to the organisation or users. To achieve this, they are aware of knowledge representation and maintenance techniques (rules, frames, semantic nets, ontologies) and use knowledge extraction techniques and tools. They can design and build expert or artificial intelligence systems that use this knowledge.
ICT network administrator: ICT network administrators maintain operation of a reliable, secure, and efficient data communications network, including LAN, WAN, intranet, and internet. They perform network address assignment, management and implementation of routing protocols such as ISIS, OSPF, BGP, routing table configurations and certain implementations of authentication. They perform maintenance and administration of servers (file servers, VPN gateways, intrusion detection systems), desktop computers, printers, routers, switches, firewalls, phones, IP communications, personal digital assistants, smartphones, software deployment, security updates and patches as well as a vast array of additional technologies inclusive of both hardware and software.
Chief information officer: Chief information officers define and implement the ICT strategy and governance. They determine necessary resources for the ICT strategy implementation, anticipate ICT market evolutions and company business needs. They contribute to the development of the organisation’s strategic plan and ensure that the ICT infrastructure supports the organisation’s overall operations and priorities.
User interface developer: User interface developers implement, code, document and maintain the interface of a software system by using front-end development technologies.
Electrical engineer: Electrical engineers design and develop electrical systems, electrical equipment, components, motors, and equipment with the feature of energy transmission. They engage in large scale projects such as the design and maintenance of power stations, and the distribution of power to smaller applications such as household appliances.
Database designer: Database designers specify the database’s logical structure, processes, and information flows. They design data models and databases to serve data acquisition.
Computer hardware engineer: Computer hardware engineers design and develop computer hardware systems and components, such as circuit boards, modems, and printers. They draught blueprints and assembly drawings, develop and test the prototypes, and supervise the production process.
User interface designer: User interface designers are in charge of designing user interfaces for applications and systems. They perform layout, graphics and dialogues design activities as well as adaptation activities.
System configurator: System configurators tailor a computer system to the organisation’s and users’ needs. They adjust the base system and software to the needs of the customer. They perform configuration activities and scripting and ensure communication with users.
Digital games developer: Digital games developers program, implement and document digital games. They implement technical standards in gameplay, graphics, sound and functionality.
ICT security technician: ICT security technicians propose and implement necessary security updates and measures whenever is required. They advise, support, inform and provide training and security awareness.
ICT system analyst: ICT system analysts specify the system needs to meet the end user requirements. They analyse system functions in order to define their goals or purposes and to discover operations and procedures for accomplishing them most efficiently. They also design new IT solutions to improve business efficiency and productivity, produce outline designs and estimate costs of new systems, specify the operations the system will perform, and the way data will be viewed by the end user. They present the design to the users and work closely with the users to implement the solution.
ICT system developer: ICT system developers maintain, audit and improve organisational support systems. They use existing or new technologies to meet particular needs. They test both hardware and software system components, diagnose and resolve system faults.
Database developer: Database developers program, implement and coordinate changes to computer databases based on their expertise of database management systems.
Mobile devices technician: Mobile devices technicians carry out proper fault diagnosis to improve the quality of mobile devices and repair them. They provide information related to a number of services, including warranties and after-sale services.
3D modeller: 3D modellers design 3D models of objects, virtual environments, layouts, characters, and 3D virtual animated agents.
Industrial mobile devices software developer: Industrial mobile devices software developers implement applications software for specific, professional industrial mobile (handheld) devices, based on the industry needs, using general or specific development tools for device operating systems.
ICT application developer: ICT application developers implement the ICT (software) applications based on the designs provided using application domain specific languages, tools, platforms and experience.
Web developer: Web developers develop, implement and document web-accessible software based on the designs provided. They align the client’s web presence with its business strategy, troubleshoot software problems and issues and look for ways to improve the application.
ICT network engineer: ICT network engineers implement, maintain and support computer networks. They also perform network modelling, analysis, and planning. They may also design network and computer security measures. They may research and recommend network and data communications hardware and software.
Software architect: Software architects create the technical design and the functional model of a software system, based on functional specifications. They also design the architecture of the system or different modules and components related to the business’ or customer requirements, technical platform, computer language or development environment.
Digital media designer: Digital media designers create and edit graphics, animations, sound, text and video to assist in the creation of integrated multimedia products. They may perform activities related to the web, social networks, augmented reality and virtual reality but exclude the production of music using physical instruments and complex software sound synthesis tools. Digital media designers may program and build websites, mobile applications and other multimedia products.
Digital games designer: Digital games designers develop the layout, logic, concept and gameplay of a digital game. They focus on playfield design, specification writing, and entry of numeric properties that balance and tune the gameplay.
Telecommunications engineering technician: Telecommunications engineering technician deploy, maintain and monitor a telecommunication system that provides interactions between data and voice communications, such as telephone, video conferencing, computer, and voicemail systems. They are also involved in the design, manufacturing, construction, maintenance and repair of telecommunication systems. Telecommunications engineering technicians provide technical assistance in the research and development of telecommunication equipment.
Webmaster: Webmasters deploy, maintain, monitor and support a web server to meet service requirements. They ensure optimum system integrity, security, backup and performance. They coordinate the content, quality and style of websites, execute the website strategy and update and add new features to websites.
ICT system architect: ICT system architects design architecture, components, modules, interfaces, and data for a multi-components system to meet specified requirements.
Software developer: Software developers implement or program all kinds of software systems based on specifications and designs by using programming languages, tools, and platforms.
Application engineer: Application engineers deal with the technical requirements, management, and design for the development of various engineering applications, such as systems, new product designs, or the improvements of processes. They are responsible for the implementation of a design or process improvement, they offer technical support for products, answer questions about the technical functionality and assist the sales team.
- C++ – ESCO