User Interface Developer ICT Professionals
SaveWhat Does an {{ profession.preferred_title|title }} Do?
User interface developers implement, code, document and maintain the interface of a software system by using front-end development technologies.
Resource recommendations may include affiliate links. Learn more
Where Do I Start?
World Wide Web Consortium Standards
The standards, technical specifications and guidelines developed by the international organisation World Wide Web Consortium (W3C) which allow the design and development of web applications.
Sign up to trackReady to go deeper? Pick up to 3 skills to focus on from the list below.
These are common skills for this role. Real-world experience matters more than ticking every box — use this as a guide, not a checklist.
Skills You Need to Become an User Interface Developer
Essential Skills
Essential Skills
-
EssentialWorld Wide Web Consortium Standards knowledge
The standards, technical specifications and guidelines developed by the international organisation World Wide Web Consortium (W3C) which allow the design and development of web applications.
No book recommendations available yet.
-
EssentialComputer Programming knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms (e.g. object oriented programming, functional programming) and of programming languages.
No book recommendations available yet.
-
EssentialGraphics Editor Software knowledge
The field of graphical ICT tools which enable digital editing and composition of graphics, such as GIMP, Adobe Photoshop and Adobe Illustrator, to develop both 2D raster or 2D vector …
No book recommendations available yet.
-
EssentialIntegrated Development Environment Software knowledge
The suite of software development tools for writing programs, such as compiler, debugger, code editor, code highlights, packaged in a unified user interface, such as Visual Studio or Eclipse.
No book recommendations available yet.
-
EssentialWeb Programming knowledge
The programming paradigm that is based on combining markup (which adds context and structure to text) and other web programming code, such as AJAX, javascript and PHP, in order to …
No book recommendations available yet.
-
EssentialSoftware Ui Design Patterns knowledge
The reusable solutions and formalised best practices to solve common user interface tasks in software development and design.
No book recommendations available yet.
-
EssentialStyle Sheet Languages knowledge
The field of computer language that conveys the presentation of structured documents such as Cascading Style Sheets (CSS). These documents have to adhere to style sheets, a set of stylistic …
No book recommendations available yet.
-
EssentialAnalyse Software Specifications skill
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 …
Course recommendations coming soon.
-
EssentialDesign Graphics skill
Apply a variety of visual techniques in order to design graphic material. Combine graphical elements to communicate concepts and ideas.
Course recommendations coming soon.
-
EssentialDesign User Interface skill
Create software or device components which enable interaction between humans and systems or machines, using appropriate techniques, languages and tools so as to streamline interaction while using the system or …
Course recommendations coming soon.
-
EssentialDevelop Software Prototype skill
Create a first incomplete or preliminary version of a piece of software application to simulate some specific aspects of the final product.
Course recommendations coming soon.
-
EssentialDraw Design Sketches skill
Create rough pictures to assist in creating and communicating design concepts.
Course recommendations coming soon.
-
EssentialInterpret Technical Texts skill
Read and understand technical texts that provide information on how to perform a task, usually explained in steps.
Course recommendations coming soon.
-
EssentialUse Software Design Patterns skill
Utilise reusable solutions, formalised best practices, to solve common ICT development tasks in software development and design.
Course recommendations coming soon.
-
EssentialUse Software Libraries skill
Utilise collections of codes and software packages which capture frequently used routines to help programmers simplify their work.
Course recommendations coming soon.
-
EssentialUtilise Methodologies For User Centered Design skill
Use design methodologies in which the needs, wishes and limitations of end users of a product, service or process are given extensive attention at each stage of the design process.
Course recommendations coming soon.
Optional Skills (5 of {{ profession.optional_skills|length }} displayed)
-
OptionalAdobe Photoshop knowledge
The computer program Adobe Photoshop is a graphical ICT tool which enables digital editing and composition of graphics to generate both 2D raster or 2D vector graphics. It is developed …
Recommended Books
1 book{{ skill.books|length|pluralize }}Mastering Adobe Photoshop Elements 2021 - Third Edition -
OptionalXcode knowledge
The computer program Xcode is a suite of software development tools for writing programs, such as compiler, debugger, code editor, code highlights, packaged in a unified user interface. It is …
Recommended Books
3 book{{ skill.books|length|pluralize }} -
OptionalHuman-Computer Interaction knowledge
The study of the behaviour and interaction between digital devices and human beings.
Recommended Books
3 book{{ skill.books|length|pluralize }} -
OptionalAdobe Illustrator knowledge
The computer program Adobe Illustrator CC is a graphical ICT tool which enables digital editing and composition of graphics to generate both 2D raster or 2D vector graphics. It is …
Recommended Books
1 book{{ skill.books|length|pluralize }} -
OptionalGimp (Graphics Editor Software) knowledge
The computer program GIMP is a graphical ICT tool which enables digital editing and composition of graphics to generate both 2D raster or 2D vector graphics. It is developed by …
No book recommendations available yet.
-
OptionalIct Project Management knowledge
The methodologies for the planning, implementation, review and follow-up of ICT projects, such as the development, integration, modification and sales of ICT products and services, as well as projects relating …
Recommended Books
1 book{{ skill.books|length|pluralize }} -
OptionalMicrosoft Visio knowledge
The computer program Microsoft Visio is a graphical ICT tool which enables digital editing and composition of graphics to generate both 2D raster or 2D vector graphics. It is developed …
Recommended Books
1 book{{ skill.books|length|pluralize }} -
OptionalMicrosoft Visual C++ knowledge
The computer program Visual C++ is a suite of software development tools for writing programs, such as compiler, debugger, code editor, code highlights, packaged in a unified user interface. It …
Recommended Books
1 book{{ skill.books|length|pluralize }} -
OptionalAbap knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in ABAP.
No book recommendations available yet.
-
OptionalAjax knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in AJAX.
No book recommendations available yet.
-
OptionalAnsible knowledge
The tool Ansible is a software program to perform configuration identification, control, status accounting and audit.
No book recommendations available yet.
-
OptionalApache Maven knowledge
The tool Apache Maven is a software program to perform configuration identification, control, status accounting and audit of software during its development and maintenance.
No book recommendations available yet.
-
OptionalAsp.Net knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in ASP.NET.
No book recommendations available yet.
-
OptionalC# knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in C#.
No book recommendations available yet.
-
OptionalC++ knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in C++.
No book recommendations available yet.
-
OptionalCoffeescript knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in CoffeeScript.
No book recommendations available yet.
-
OptionalEclipse (Integrated Development Environment Software) knowledge
The computer program Eclipse is a suite of software development tools for writing programs, such as compiler, debugger, code editor, code highlights, packaged in a unified user interface. It is …
No book recommendations available yet.
-
OptionalErlang knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Erlang.
No book recommendations available yet.
-
OptionalHaskell knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Haskell.
No book recommendations available yet.
-
OptionalJava (Computer Programming) knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Java.
No book recommendations available yet.
-
OptionalJavascript knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in JavaScript.
No book recommendations available yet.
-
OptionalJenkins (Tools For Software Configuration Management) knowledge
The tool Jenkins is a software program to perform configuration identification, control, status accounting and audit of software during its development and maintenance.
No book recommendations available yet.
-
OptionalPerl knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Perl.
No book recommendations available yet.
-
OptionalPhp knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in PHP.
No book recommendations available yet.
-
OptionalPuppet (Tools For Software Configuration Management) knowledge
The tool Puppet is a software program to perform configuration identification, control, status accounting and audit.
No book recommendations available yet.
-
OptionalPython (Computer Programming) knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Python.
No book recommendations available yet.
-
OptionalRuby (Computer Programming) knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Ruby.
No book recommendations available yet.
-
OptionalSalt (Tools For Software Configuration Management) knowledge
The tool Salt is a software program to perform configuration identification, control, status accounting and audit.
No book recommendations available yet.
-
OptionalSap R3 knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in SAP R3.
No book recommendations available yet.
-
OptionalScala knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Scala.
No book recommendations available yet.
-
OptionalScratch (Computer Programming) knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Scratch.
No book recommendations available yet.
-
OptionalSketchbook Pro knowledge
The computer program SketchBook Pro is a graphical ICT tool which enables digital editing and composition of graphics to generate both 2D raster or 2D vector graphics. It is developed …
No book recommendations available yet.
-
OptionalStaf knowledge
The tool STAF is a software program to perform configuration identification, control, status accounting and audit.
No book recommendations available yet.
-
OptionalSynfig knowledge
The computer program Synfig is a graphical ICT tool which enables digital editing and composition of graphics to generate both 2D raster or 2D vector graphics. It is developed by …
No book recommendations available yet.
-
OptionalVbscript knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in VBScript.
No book recommendations available yet.
-
OptionalVisual Studio .Net knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Visual Basic.
No book recommendations available yet.
-
OptionalCss knowledge
The computer language CSS is a style sheet language that conveys the presentation of structured documents. These documents have to adhere to style sheets, a set of stylistic rules such …
Recommended Books
2 book{{ skill.books|length|pluralize }}Modern CSS -
OptionalSass knowledge
The computer language Sass is a style sheet language that conveys the presentation of structured documents. These documents have to adhere to style sheets, a set of stylistic rules such …
Recommended Books
1 book{{ skill.books|length|pluralize }} -
OptionalApl knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in APL.
No book recommendations available yet.
-
OptionalGroovy knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Groovy.
No book recommendations available yet.
-
OptionalIct Debugging Tools knowledge
The ICT tools used to test and debug programs and software code, such as GNU Debugger (GDB), Intel Debugger (IDB), Microsoft Visual Studio Debugger, Valgrind and WinDbg.
No book recommendations available yet.
-
OptionalJsss knowledge
The computer language JSSS is a style sheet language that conveys the presentation of structured documents. These documents have to adhere to style sheets, a set of stylistic rules such …
No book recommendations available yet.
-
OptionalLess knowledge
The computer language LESS is a style sheet language that conveys the presentation of structured documents. These documents have to adhere to style sheets, a set of stylistic rules such …
No book recommendations available yet.
-
OptionalMatlab knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in MATLAB.
No book recommendations available yet.
-
OptionalMl (Computer Programming) knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in ML.
No book recommendations available yet.
-
OptionalObjective-C knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Objective-C.
No book recommendations available yet.
-
OptionalOpenedge Advanced Business Language knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in OpenEdge Advanced Business Language.
No book recommendations available yet.
-
OptionalProlog (Computer Programming) knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Prolog.
No book recommendations available yet.
-
OptionalSas Language knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in SAS language.
No book recommendations available yet.
-
OptionalSmalltalk (Computer Programming) knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Smalltalk.
No book recommendations available yet.
-
OptionalSwift (Computer Programming) knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Swift.
No book recommendations available yet.
-
OptionalTypescript knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in TypeScript.
No book recommendations available yet.
-
OptionalKdevelop knowledge
The computer program KDevelop is a suite of software development tools for writing programs, such as compiler, debugger, code editor, code highlights, packaged in a unified user interface. It is …
Recommended Books
1 book{{ skill.books|length|pluralize }} -
OptionalAssembly (Computer Programming) knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Assembly.
No book recommendations available yet.
-
OptionalCobol knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in COBOL.
No book recommendations available yet.
-
OptionalCommon Lisp knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Common Lisp.
No book recommendations available yet.
-
OptionalLisp knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Lisp.
No book recommendations available yet.
-
OptionalPascal (Computer Programming) knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in Pascal.
No book recommendations available yet.
-
OptionalR knowledge
The techniques and principles of software development, such as analysis, algorithms, coding, testing and compiling of programming paradigms in R.
No book recommendations available yet.
-
OptionalTools For Software Configuration Management knowledge
The software programs to perform configuration identification, control, status accounting and audit, such as CVS, ClearCase, Subversion, GIT and TortoiseSVN perform this management.
No book recommendations available yet.
-
OptionalVagrant knowledge
The tool Vagrant is a software program to perform configuration identification, control, status accounting and audit.
No book recommendations available yet.
-
OptionalSoftware Interaction Design knowledge
The methodologies for designing interaction between users and a software product or service to satisfy the needs and preferences of most of the people who will interface with the product …
No book recommendations available yet.
-
OptionalCreate Flowchart Diagram skill
Compose a diagram that illustrates systematic progress through a procedure or system using connecting lines and a set of symbols.
Course recommendations coming soon.
-
OptionalDebug Software skill
Repair computer code by analysing testing results, locating the defects causing the software to output an incorrect or unexpected result and removing these faults.
Course recommendations coming soon.
-
OptionalProvide Technical Documentation skill
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 …
Course recommendations coming soon.
-
OptionalUse Automatic Programming skill
Utilise specialised software tools to generate computer code from specifications, such as diagrams, structured informations or other means of describing functionality.
Course recommendations coming soon.
-
OptionalUse Concurrent Programming skill
Utilise specialised ICT tools to create programs that can execute concurrent operations by splitting programs into parallel processes and, once computed, combining the outcomes together.
Course recommendations coming soon.
-
OptionalUse Functional Programming skill
Utilise specialised ICT tools to create computer code which treats computation as the evaluation of mathematical functions and seeks to avoid state and mutable data. Use programming languages which support …
Course recommendations coming soon.
-
OptionalUse Logic Programming skill
Utilise specialised ICT tools to create computer code composed of series of sentences in logical form, expressing rules and facts about some problem domain. Use programming languages which support this …
Course recommendations coming soon.
-
OptionalUse Markup Languages skill
Utilise computer languages that are syntactically distinguishable from the text to add annotations to a document, specify layout and process types of documents such as HTML.
Course recommendations coming soon.
-
OptionalUse Object-Oriented Programming skill
Utilise specialised ICT tools to create computer code based on the concept of an "object" which is an abstract data type encapsulated with a set of "methods", which operate on …
Course recommendations coming soon.
-
OptionalUse Scripting Programming skill
Utilise specialised ICT tools to create computer code that is interpreted by the corresponding run-time environments in order to extend applications and automate common computer operations. Use programming languages which …
Course recommendations coming soon.
-
OptionalUtilise Computer-Aided Software Engineering Tools skill
Use software tools (CASE) to support the development lifecycle, design and implementation of software and applications of high-quality that can be easily maintained.
Course recommendations coming soon.