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.
Position Overview
The Embedded Linux Senior Software Engineer - Optimisation at Canonical will be responsible for enhancing performance, stability, and efficiency of embedded systems running on Linux. The role entails working on low-level programming to optimize resource usage, engage in system architecture discussions, and collaborate with cross-functional teams to deliver high-quality software. The ideal candidate will demonstrate expertise in optimizing Linux-based platforms and contribute towards shaping the future of embedded software in innovative environments.
Job Responsibilities
- Develop and optimize Linux-based embedded systems for performance and resource efficiency.
- Engage in code reviews, collaborating with team members to improve code quality and adherence to best practices.
- Analyze and diagnose performance bottlenecks, providing solutions for scalability and efficiency improvements.
- Work closely with hardware engineers to ensure proper interactions between software and hardware functionalities.
- Contribute to system architecture and design discussions to establish robust frameworks for software deployment.
- Perform testing and validation of software solutions, ensuring compliance with project requirements.
- Document software designs, architecture, and implementation processes for reference and onboarding purposes.
Qualifications
- Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field.
- 7+ years of experience in embedded software development, specifically with Linux systems.
- Proficiency in C/C++ programming languages and understanding of system-level programming.
- Strong grasp of Linux kernel architecture, device drivers, and system optimization techniques.
- Familiarity with performance analysis tools and techniques for embedded systems.
- Experience with version control systems, particularly Git.
- Excellent problem-solving skills, with the ability to work independently and within a team.
Technologies & Tools
The position utilizes a variety of technologies and tools essential to embedded Linux development, including but not limited to real-time operating systems, embedded C/C++, GCC toolchain, Yocto Project, and tools for automation and CI/CD processes. Additionally, the role requires familiarity with debugging and profiling tools specific to embedded environments.
Ideal Candidates
The ideal candidate possesses strong technical acumen coupled with a keen attention to detail, ensuring high-quality deliverables in software performance. A good fit for this position will reflect strong communication skills, the ability to collaborate across diverse teams, and a passion for continuous learning and innovation in embedded systems. Candidates should also demonstrate a proactive approach to problem-solving and possess resilience in overcoming technical challenges.
The two or three lines under your name say who you are before anyone reads the rest. Type your job and a few facts, and our summary writer gives you five to pick from. Write a summary →
View Similar Jobs
Similar jobs which you may be interested in. Typically using your existing skillset.