Full Time

Embedded Linux Senior Software Engineer - Optimisation

Canonical
$110,000 - $150,000* / year (about $53–$72 an hour)

Job Description

This job was posted over 30 days ago, so it has most likely closed. See newer jobs like it.

Written by AI from the job title and company, not by Canonical, so some details may not match this job. The employer's own page has the real description.

Job Overview


The Embedded Linux Senior Software Engineer - Optimisation at Canonical will play a critical role in enhancing the performance of Linux-based systems on embedded devices. This position involves designing and implementing optimizations to improve system efficiency, stability, and responsiveness. The candidate will collaborate with cross-functional teams to tailor solutions that meet customer requirements, leveraging both their technical expertise and innovative thinking to drive success in the development of cutting-edge embedded technologies.



Job Responsibilities

  • Develop and implement performance optimization strategies for embedded Linux systems.
  • Analyze system bottlenecks and apply advanced debugging techniques to resolve issues.
  • Work closely with hardware engineers to optimize software for specific platform capabilities.
  • Create and maintain detailed documentation of optimizations and methodologies.
  • Perform code reviews to ensure adherence to best practices and high-quality code standards.
  • Collaborate with product management to define product requirements and roadmaps.
  • Participate in Agile methodologies, contributing to sprints and iterative development cycles.


Qualifications

  • Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field.
  • Minimum 5 years of experience in embedded software development with a focus on Linux.
  • Strong understanding of Linux kernel and user-space programming.
  • Proficiency in C/C++ programming languages and experience with performance profiling tools.
  • Knowledge of system-level programming, network protocols, and device drivers.
  • Experience with version control systems, preferably Git.


Technologies & Tools


The role involves working with various technologies including Linux kernel modules, embedded operating systems, and performance analysis tools such as GDB and Valgrind. Familiarity with development environments such as Yocto or OpenEmbedded, along with cross-compilation tools and scripting languages like Python or Bash, will also be essential.



Ideal Candidates


The ideal candidates for this position will possess a proactive mindset and the ability to work collaboratively in a fast-paced environment. They should be detail-oriented, capable of tackling complex problems methodically, and exhibit strong analytical skills. Excellent communication abilities are critical for collaborating with team members across diverse disciplines. A passion for continuous learning and staying abreast of emerging technologies in the embedded systems domain will further enhance their fit for this role.

Not sure what kind of job to look for? Our career quiz is 30 quick questions, then the careers that fit your interests and what they pay. Take the career quiz →

View Similar Jobs

Matches Jobs

Similar jobs which you may be interested in. Typically using your existing skillset.