Company:
Qualcomm Europe, Inc. Italy Branch Office
Job Area:
Engineering Group, Engineering Group > Software Engineering
General Summary:
Arduino is now part of the Qualcomm organisation!
Arduino’s mission is to enable people to enhance their lives through accessible open-source electronics and digital technologies. Since 2005, millions of people, from kids and students to engineers and professionals around the world are using Arduino to innovate in the fields of music, games and toys, smart homes, farming, autonomous vehicles and many more.
To support our growth, we are looking for a Senior Embedded Linux Developer to join our Hardware & Firmware team. You will be instrumental in designing, developing, and maintaining the Linux-based software stack for our embedded devices. You will design, develop and test Linux components (for example, hardware drivers) to be used in microprocessor-based hardware boards developed by Arduino. You will work across the entire product lifecycle, from initial concept and architecture definition to deployment and ongoing support, ensuring our products are robust, performant, and secure.
What we offer
- A challenging career path in a rapidly growing company with modern vision and talented teams.
- A competitive salary (and benefits) that values people skills and experience.
- A young and inspiring work environment that encourages diversity and cultural exchange.
- Individual growth objectives with a dedicated budget for learning/training.
- Flexible working hours and working locations, we value work-life balance!
- A meaningful work opportunity in a mission-driven company committed to empower people around the world.
Minimum Qualifications:
• Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience.
OR
Master's degree in Engineering, Information Systems, Computer Science, or related field and 1+ year of Software Engineering or related work experience.
OR
PhD in Engineering, Information Systems, Computer Science, or related field.
• 2+ years of academic or work experience with Programming Language such as C, C++, Java, Python, etc.
And if you live near one of our offices…
- Ping pong and foosball tournaments (sport or gym benefit is also included for everyone!).
- Seasonal celebrations, happy hours and everyday drinks and snacks at the office.
- Sunny rooftop lunch breaks and hamacas for relaxation and concentration.
What you'll work on
- Design, develop, and optimize Linux kernel modules, device drivers, and user-space applications for embedded hardware.
- Develop and maintain Board Support Packages (BSPs) for new and existing hardware platforms, including bootloaders, kernel configuration, device tree, and file system integration
- Collaborate closely with hardware engineers to bring up new boards, debug hardware-software interactions, and ensure seamless integration.
- Analyze and optimize system performance, memory usage, and power consumption for embedded Linux devices.
- Diagnose and resolve complex technical issues related to the embedded Linux operating system, drivers, and applications.
- Create and maintain clear and concise technical documentation for designs, code, and test procedures.
- Work effectively with cross-functional teams including hardware, application software, Quality Assurance, and product management to define requirements, integrate components, and deliver high-quality products.
- Represent Arduino at internal / external events and share our spirit with the developer community
What you bring
- Bachelor's or Master's degree in computer science, engineering, or related field
- At least 5 years experience in Embedded Linux development.
- Strong proficiency in C and/or C++ for embedded systems.
- In-depth understanding of the Linux kernel, including drivers, kernel modules, and system calls
- Experience with embedded Linux distributions and build systems (e.g., Yocto Project)
- Hands-on experience with hardware interfaces and protocols (e.g., I2C, SPI, UART, USB, Ethernet, CAN, GPIO)
- Proficiency with debugging tools (e.g., GDB, JTAG debuggers, oscilloscopes, etc)
- Broad knowledge of git flow
- Ability to read hardware schematics and datasheets.
- Able to write high quality technical documentation in English
- Fluent in English both verbal and written is mandatory
Bonus Points
- Knowledge of the Arduino ecosystem
- Experience with Golang and/or Python
- Familiarity with containerization technologies (e.g., Docker) for embedded environments.
- Knowledge of security best practices in embedded Linux systems.
- Knowledge of network protocols (e.g. MQTT, CoAP, HTTP, TCP, UDP, AMQP)
- Knowledge of building systems for Linux distributions
- Knowledge of Github
If you're excited about this role or about our company but your experience doesn't align perfectly with the points outlined above, we strongly encourage you to apply anyways. If we feel you don’t fit for this job we may have something else for you!
*References to a particular number of years experience are for indicative purposes only. Applications from candidates with equivalent experience will be considered, provided that the candidate can demonstrate an ability to fulfill the principal duties of the role and possesses the required competencies.
Qualcomm is an equal opportunity employer. If you are an individual with a disability and need an accommodation during the application/hiring process, rest assured that Qualcomm is committed to providing an accessible process. You may e-mail disability-accomodations@qualcomm.com or call Qualcomm's toll-free number found here. Upon request, Qualcomm will provide reasonable accommodations to support individuals with disabilities to be able participate in the hiring process. Qualcomm is also committed to making our workplace accessible for individuals with disabilities. (Keep in mind that this email address is used to provide reasonable accommodations for individuals with disabilities. We will not respond here to requests for updates on applications or resume inquiries).
Qualcomm expects its employees to abide by all applicable policies and procedures, including but not limited to security and other requirements regarding protection of Company confidential information and other confidential and/or proprietary information, to the extent those requirements are permissible under applicable law.
To all Staffing and Recruiting Agencies: Our Careers Site is only for individuals seeking a job at Qualcomm. Staffing and recruiting agencies and individuals being represented by an agency are not authorized to use this site or to submit profiles, applications or resumes, and any such submissions will be considered unsolicited. Qualcomm does not accept unsolicited resumes or applications from agencies. Please do not forward resumes to our jobs alias, Qualcomm employees or any other company location. Qualcomm is not responsible for any fees related to unsolicited resumes/applications.
If you would like more information about this role, please contact Qualcomm Careers.