Senior Software Engineer - Advanced Product Development
Join ARM's Advanced Product Development team in Manchester to Research and Develop new software and technology to keep ARM's development tools at the cutting edge.
The Advanced Product Development team (APD) are tasked with investigating what technologies and tools will be relevant to ARM's business over the next 1-2 years. The APD team are distributed across four ARM sites and have a diverse range of skills and experience. APD team members perform 3-6 month, self-directed, investigations into new technologies or identified problems with existing tools, working either individually or together as a distributed team.
Once a project has been decided on, you will be expected to quickly learn about that technology and any required background material to then evaluate the importance of this technology to ARM. This may involve building prototypes of new tools or products and will involve a write up of the information for use by others and a presentation on findings to relevant parts of the company. Recent projects include adding functionality to a compiler, prototyping an HPC performance measurement tool and developing a new way to measure system cache efficiency.
Key Skills & Experience
- Excellent programming skills. Knowledge of C essential.
- Good knowledge of Linux/Unix.
- The ability to quickly learn complex technical information
- Self-driven, independent problem solver, technically versatile, willing to be flexible and accept new challenges.
- Effective verbal and written communication skills.
- Ability to work alone as well as in a team.
- Good presentation skills
- Educated to degree level or have similar relevant experience.
Desirable Skills & Experience
The following skills and abilities will be looked upon favourably whilst assessing applications
- Knowledge of a wide variety of programming languages (e.g. Python, Java, Go, Scala, Rust, Fortran..)
- Experience of software development in HPC (OpenMP, MPI, Fortran etc.)
- Knowledge of operating system, compiler and debugger internals
What are the desired behaviours for this role?
At ARM, we are proud to have a set of behaviours that reflect our unique culture and guide our decisions, defining how we work together to defy ordinary and shape extraordinary. These behaviours are assessed as part of the recruitment process:
- Delivery of results - You demonstrate a can-do attitude and you drive to overcome obstacles, acting with a sense of urgency because you're passionate about what you do.
- Partner / customer focus - Your tendency to put your partners and customers first in all that you do by understanding their needs and striving to achieve win-win solutions.
- Creativity / innovation - Possessing curiosity and a passion for driving continuous improvement through spotting opportunities and seeking the views of others.
- Collaboration / communication - Your ability to forge lasting relationships which are built upon mutual trust, open communication and sharing of information and success.
- Personal impact / influence - You listen to different perspectives, evaluate, persuade and carefully shape your work to deliver truly impactful results.
- Team / personal development - You take time to drive your own development, while also encouraging team members and partners to do the same.