Login

Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

ARM websites use two types of cookie: (1) those that enable the site to function and perform as required; and (2) analytical cookies which anonymously track visitors only while using the site. If you are not happy with this use of these cookies please review our Privacy Policy to learn how they can be disabled. By disabling cookies some features of the site will not work.

What is an ARM Accredited Engineer?

An ARM Accredited Engineer is an individual certified to meet or exceed a basic level of knowledge of ARMv7 Cortex-A and Cortex-R technology across a comprehensive range of subject domains and consistent level of difficulty. In order to provide a clearer picture of what this means, it is worth exploring how we decided what an ARM Accredited Engineer should be capable of doing.

Step 1: identify a role

The first thing we did was identify the job role that we thought an ARM Accredited Engineer would perform. We asked ourselves "What does industry need from an ARM Accredited Engineer?". In answering this question we researched job adverts, and talked to HR representatives, hiring managers, technical trainers, engineers and support staff.

Step 2: create a job description for that role

Once we were comfortable that we had identified the role that would appeal to the widest cross-section of embedded systems and software engineers, we set about breaking down that role into over 50 ARM-related tasks that we would expect the jobholder to be capable of.

Examples of the tasks we identified are:

  • Applications Development – develop software for SMP multi-core systems
  • Firmware Development – initialize an MMU
  • Firmware Development – develop device drivers/BSPs
  • Firmware Development – develop interrupt handlers
  • Generic Development – cross compile code
  • Software Debug – debug cache coherency issues
  • Software Optimization – write performance efficient code
  • Software Optimization – write software for cached systems

Step 3: identify the knowledge each of these tasks requires

Using this comprehensive list of tasks we then identified the ARM-specific knowledge required for performing these tasks competently. This led directly to the development of the AAE syllabus.