Profession 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.
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
Knowledge
- Internet of Things
The general principles, categories, requirements, limitations and vulnerabilities of smart connected devices (most of them with intended internet connectivity).
- Computer programming
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.
- 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.
- ICT debugging tools
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.
- Mobile operating systems
The features, restrictions, architectures and other characteristics of operating systems designed to run on mobile devices, such as Android or iOS.
- Embedded systems
The computer systems and components with a specialised and autonomous function within a larger system or machine such as embedded systems software architectures, embedded peripherals, design principles and development tools.
- Integrated development environment software
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.
- Industrial software
The selection of software that aids in estimating, managing and scheduling industrial processes such as design, work flow and production improvement.
Skills
- Utilise computer-aided software engineering tools
Use software tools (CASE) to support the development lifecycle, design and implementation of software and applications of high-quality that can be easily maintained.
- Design application interfaces
Create and program application interfaces, their operations, inputs and outputs and underlying types.
- Develop software prototype
Create a first incomplete or preliminary version of a piece of software application to simulate some specific aspects of the final product.
- Interpret technical texts
Read and understand technical texts that provide information on how to perform a task, usually explained in steps.
- Use different communication channels
Make use of various types of communication channels such as verbal, handwritten, digital and telephonic communication with the purpose of constructing and sharing ideas or information.
- 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.
- Debug software
Repair computer code by analysing testing results, locating the defects causing the software to output an incorrect or unexpected result and removing these faults.
- Use software design patterns
Utilise reusable solutions, formalised best practices, to solve common ICT development tasks in software development and design.
- Use software libraries
Utilise collections of codes and software packages which capture frequently used routines to help programmers simplify their work.
- Create flowchart diagram
Compose a diagram that illustrates systematic progress through a procedure or system using connecting lines and a set of symbols.
- 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.
Optional knowledge and skills
apache maven ruby (computer programming) ml (computer programming) design user interface visual studio .net blackberry integrate system components javascript adapt to changes in technological development plans salt (tools for software configuration management) vbscript use automatic programming prolog (computer programming) staf collect customer feedback on applications use concurrent programming android (mobile operating systems) ios java (computer programming) openedge advanced business language objective-c python (computer programming) abap ict security legislation sap r3 c# world wide web consortium standards kdevelop r haskell assembly (computer programming) use logic programming swift (computer programming) use functional programming xcode lisp typescript sas language php matlab object-oriented modelling groovy puppet (tools for software configuration management) apl common lisp asp.net perl identify customer requirements use object-oriented programming microsoft visual c++ software anomalies migrate existing data mobile device software frameworks cobol eclipse (integrated development environment software) scratch (computer programming) coffeescript scala develop creative ideas pascal (computer programming) ajax windows phone c++ jenkins (tools for software configuration management) erlang smalltalk (computer programming) ansibleSource: Sisyphus ODB