Naukrijobs UK
Register
London Jobs
Manchester Jobs
Liverpool Jobs
Nottingham Jobs
Birmingham Jobs
Cambridge Jobs
Glasgow Jobs
Bristol Jobs
Wales Jobs
Oil & Gas Jobs
Banking Jobs
Construction Jobs
Top Management Jobs
IT - Software Jobs
Medical Healthcare Jobs
Purchase / Logistics Jobs
Sales
Ajax Jobs
Designing Jobs
ASP .NET Jobs
Java Jobs
MySQL Jobs
Sap hr Jobs
Software Testing Jobs
Html Jobs
IT Jobs
Logistics Jobs
Customer Service Jobs
Airport Jobs
Banking Jobs
Driver Jobs
Part Time Jobs
Civil Engineering Jobs
Accountant Jobs
Safety Officer Jobs
Nursing Jobs
Civil Engineering Jobs
Hospitality Jobs
Part Time Jobs
Security Jobs
Finance Jobs
Marketing Jobs
Shipping Jobs
Real Estate Jobs
Telecom Jobs

Staff/Principal Software Engineer

Job LocationCambridge
EducationNot Mentioned
SalaryCompetitive salary
IndustryNot Mentioned
Functional AreaNot Mentioned
Job TypePermanent , full-time

Job Description

Job OverviewYou will join a multifaceted, collaborative and highly motivated Agile software development team working on the GPU compute drivers for the next generation Mali™ mobile GPUs.You will develop with the latest yet-to-be-published Android versions and will help craft the technologies that the mobile market will see in years to come.This inclusive multinational development team is located in Cambridge, the technological centre of the UK.Our group writes the layer of the driver that implements the popular GPU compute APIs, such as OpenCL, which provide massively parallel execution of general purpose (C-like) code on Mali GPUs, often known as GPGPU (General-purpose computing on graphics processingunits).Our many customers have performance-critical GPU compute use cases that include machine learning (ML), image processing & computer vision (CV), video encoding and decoding. Mobile devices are highly constrained environments, and our challenge is to providethis sophisticated functionality, while improving both dependability and efficiency.If you want to develop your skills and understanding in these technologies, this is the opportunity for you. Join us and together we will make GPU compute and Mali a success in our customers hands!ResponsibilitiesWe have different teams that handle the development, performance analysis and optimization of the GPU driver. You may be adding a new functionality to support the latest GPUs, identifying optimisation opportunities to squeeze out that last bit of performance,developing our infrastructure to ensure it supports the ever-growing number of benchmarks that we run and many other exciting tasks!You will work in a Linux environment, working on Arm-based targets including models, FPGAs and silicon from our partner companies (thereby covering past, present and future generations of our designs).As a member of an Agile team, you will have the chance to try your hand at different aspects of our work. Engineers grow their expertise through in-house and externally hosted training, and through peer code reviews.You will be working closely together with our community of engineering teams across Arm’s European design centres developing technologies for the current and next generations of Arm Mali™ GPUs.Depending on the team you join:

  • Participating in all phases of software development – including design, implementation, testing, code review and documentation.
  • Implementing new features in the driver and/or infrastructure.
  • Testing and analysing the functionality and performance of our software.
  • Performing design and code reviews for other team members.
  • Engaging with the rest of the team for investigation, estimation and planning purposes.
  • Maintaining the existing codebase: fixing bugs and other quality assurance activities.
  • Promoting and demonstrating the Arm core beliefs and behaviours.
  • What skills, experience and qualifications do I need
Required Skills and Experience:
  • Experience in C and C++ programming.
  • Experience in scripting with Python and Bash.
  • A proven understanding of embedded hardware architectures and software engineering development practices.
  • Proficiency in problem solving and debugging with a practical, organized and analytical approach to work.
  • Good interpersonal team-working skills, self-motivated and results focused.
  • Good written and spoken English.
"Nice To Have" Skills and Experience:Dont worry if you dont have these skills, youll be learning them as part of your activities, but it would be useful to have some already:
  • Experience of OpenCL, CUDA, or Vulkan.
  • Experience with machine learning.
  • Knowledge of software optimisation, profiling and instrumentation techniques.
  • Experience developing software for Linux or Android based systems.
  • Experience with data analysis and statistics.
  • Knowledge of the internal operation of compilers (particularly LLVM), although this is not a compiler role.
  • Familiarity with Git, and bug tracking tools.
  • Experience in creating design and test specifications and in the creation and maintenance of test suites.
  • Automation skills, with exposure to Docker.
  • Experience with Agile development processes.
  • Experience of driver or HAL development.
  • Working exposure to software development for a commercial organization.
  • Willingness to travel occasionally to meet our teams in other sites.
#LI-SM1

APPLY NOW

Staff/Principal Software Engineer Related Jobs

© 2019 Naukrijobs All Rights Reserved