2017 Graduate Software Engineer - Systems ArchitectureJob Description
About the role
The Architecture and Technology Group in Cambridge (UK) is responsible for exploring future technologies to design next-generation extensions to the ARM architecture. In this role, you will investigate new technology, develop prototypes and models, and contribute to creating features that are not yet available to developers, typically 3-5 years before these systems are released as commercial products by ARM partners.
As a member of a small and dynamic team, you will be working alongside technology experts across ARM, contributing to the development of both hardware and software components that enable fellow engineers across the industry to create world-beating products around ARM technology.
The activities for this role demand an enthusiastic candidate from either a Computer Science or an Electrical/Electronics Engineering backgroun, and include:
· Building a detailed understanding of hardware features and capabilities, development tools and the software development process and use-case requirements.
· Development of modelling flows and component models in instruction-set simulator environments.
· Modelling investigations to drive technical decisions across a broad spectrum of features, including hardware, software and system architecture.
· Development of prototype software flows from drivers to visualization tools that support these investigations and demonstrate use of next-generation extensions to the ARM architecture.
You will play an essential role in helping ARM develop next-generation technologies in areas such as software and hardware optimization, pre-silicon debugging, system profiling and debug, and collaborate on next generation instruction set and CPU system architectures, guided by quantitative investigation and expert understanding of the markets we serve.
As a successful Graduate Engineer, you will have a good university degree, ideally in Computer Science or Electrical/Electronic Engineering, although candidates with other academic backgrounds with the relevant skills will also be considered.
You will have a strong understanding of the challenges of software engineering, software debugging and optimization, and a keen interest in computer architecture and the interaction between software and hardware in a real system. You will be flexible with a variety of software or hardware development skills.
You will possess a research mind-set that seeks to find and communicate the best answers to complex technical problems based on systematic investigation, and be committed to extending the breadth and depth of your knowledge.
· Good grounding in computer architecture fundamentals (including the interaction between hardware and software, instruction sets, etc.)
· Grounding in the software engineering process and development tools
· Good programming skills in at least C or C++
· Pro-active and self-motivated with a willingness to be flexible and accept new challenges
· Excellent communication skills
Desirable skills and experience:
· Experience/project work related to development tools (e.g., debuggers, compilers, disassemblers, visualization) and/or low-level software (e.g., device drivers, operating systems, microcontroller projects)
· Personal project work and/or contributions to open source projects
· Experience/programming skills in Python or similar scripting and prototyping languages
· Independent research experience
Your particular benefits package will depend on position and type of employment and may be subject to change. Your package will be confirmed on offer of employment. ARM's benefits program provides permanent employees with the opportunity to stay innovative and healthy, ensure the wellness of their families, and create a positive working environment.
· Annual Bonus Plan
· Discretionary Cash Award
· Group Personal Pension Plan with enhanced company contribution
· Medical, Travel, Health & Life Insurances
· Holiday, 25 days annual leave with option to buy an additional 5 days per year
· Sabbatical, 20 paid days every four-year of service
· Volunteering, One (1) paid working day each year (TeamARM)
· Varies by location: cycle to work, free car parking, gym on site, team and social events
ARM® technology is at the heart of a computing and connectivity revolution that is transforming the way people live and businesses operate. From the unmissable to the invisible; our advanced, energy-efficient processor designs are enabling the intelligence in 86 billion silicon chips and securely powering products from the sensor to the smartphone to the supercomputer. With more than 1,000 technology partners including the world's most famous business and consumer brands, we are driving ARM innovation into all areas compute is happening inside the chip, the network and the cloud.
With offices around the world, ARM is a diverse community of dedicated, innovative and highly talented professionals. By enabling an inclusive, meritocratic and open workplace where all our people can grow and succeed, we encourage our people to share their unique contributions to ARM's success in the global marketplace.