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

Would you like to know what kind of career and professions suit you best? Take our free Holland code career test and find out.

Personality Type

  • Investigative / Realistic

Knowledge

  • Object-oriented modelling

    The object-oriented paradigm, which is based on classes, objects, methods and interfaces and their application in software design and analysis, programming organisation and techniques.

  • Unified modelling language

    The general-purpose modelling language used in software development to offer a standard visualisation of system designs.

  • Business process modelling

    The tools, methods and notations such as Business Process Model and Notation (BPMN) and Business Process Execution Language (BPEL), used to describe and analyse the characteristics of a business process and model its further development.

  • Systems development life-cycle

    The sequence of steps, such as planning, creating, testing and deploying and the models for the development and life-cycle management of a system.

  • Tools for software configuration management

    The software programs to perform configuration identification, control, status accounting and audit, such as CVS, ClearCase, Subversion, GIT and TortoiseSVN perform this management.

Skills

  • Provide technical documentation

    Prepare documentation for existing and upcoming products or services, describing their functionality and composition in such a way that it is understandable for a wide audience without technical background and compliant with defined requirements and standards. Keep documentation up to date.

  • Provide cost benefit analysis reports

    Prepare, compile and communicate reports with broken down cost analysis on the proposal and budget plans of the company. Analyse the financial or social costs and benefits of a project or investment in advance over a given period of time.

  • Create flowchart diagram

    Compose a diagram that illustrates systematic progress through a procedure or system using connecting lines and a set of symbols.

  • Align software with system architectures

    Put system design and technical specifications in line with software architecture in order to ensure the integration and interoperability between components of the system.

  • Design process

    Identify the workflow and resource requirements for a particular process, using a variety of tools such as process simulation software, flowcharting and scale models.

  • Oversee development of software

    Organise, plan and supervise the development of the applications and frameworks in order to create a software product, from the earliest planning stages to the final product test.

  • Analyse software specifications

    Assess the specifications of a software product or system to be developed by identifying functional and non-functional requirements, constraints and possible sets of use cases which illustrate interactions between the software and its users.

  • Collect customer feedback on applications

    Gather a response and analyse data from customers to identify requests or problems in order to improve applications and overall customer satisfaction.

  • Define software architecture

    Create and document the structure of software products including components, coupling and interfaces. Ensure feasibility, functionality and compatibility with existing platforms.

  • Define technical requirements

    Specify technical properties of goods, materials, methods, processes, services, systems, software and functionalities by identifying and responding to the particular needs that are to be satisfied according to customer requirements.

  • Build business relationships

    Establish a positive, long-term relationship between organisations and interested third parties such as suppliers, distributors, shareholders and other stakeholders in order to inform them of the organisation and its objectives.

  • Create software design

    Transpose a series of requirements into a clear and organised software design.

  • Analyse business requirements

    Study clients' needs and expectations for a product or service in order to identify and resolve inconsistencies and possible disagreements of involved stakeholders.

Optional knowledge and skills

asp.net ict project management methodologies web programming cobol c# haskell php sap r3 openedge advanced business language ruby utilise computer-aided software engineering tools apply ict systems theory pascal manage staff coffeescript design database scheme provide ict consulting advice vbscript matlab typescript staf perform resource planning lean project management salt swift erlang ml scala python perform risk analysis ansible agile project management javascript jenkins objective-c computer programming smalltalk implement data warehousing techniques systems theory use markup languages assembly perl apache maven prolog puppet r perform ict troubleshooting process-based management sas language c++ abap visual basic ajax task algorithmisation develop software prototype common lisp apl lisp microsoft visual c++ ict security legislation scratch groovy java

Common job titles

  • Senior application architect
  • Senior software architect
  • Principal architect iv
  • Software architect
  • Technical architect
  • Software solutions architect pre-sales