R&D Firmware Engineer


Sant Cugat del Valles, Barcelona, Spain

full time

20 Jan 2020


The HP Barcelona site hosts the HP Large Format Printing & 3D Multi Jet Fusion printing business, having the responsibility for the Research and Development (R&D), Marketing and Operations for it. Join a creative and dynamic R&D team working on leading edge printing technology!

We are looking for an experienced computer scientist or engineer to work as a firmware developer on the R&D community in the HP R&D division in Sant Cugat del Valles, Spain. You will be part of a multidisciplinary team responsible for the design and delivery of new HP printers and solutions.

The selected candidate will be part of the 3D printing multi-disciplinary R&D team located in Barcelona but with strong collaborations with international locations. This is an excellent opportunity to define and invent the future of 3D printing technology working within HP and external partners worldwide.

Generic Roles and responsibilities:

  • Software developer: be a proficient software developer, capable of develop high quality, well-architected, good performance software.
  • Teamwork: be an excellent team player
  • Process oriented: understand, follow and improve software development processes including Product Life Cycle.
  • Understanding of Requirement processes elicitation and typical software development processes and models.
  • Quality focused: demonstrated understanding of quality needs and techniques for achieving a robust solution.

Minimum Qualifications:

  • 3+ years of experience of product development or similar work on software quality.
  • In-depth understanding of low-level real-time firmware development.
  • In-depth understanding of modern operating systems, especially Linux.
  • In-depth understanding of C++.
  • Demonstrated ability to work with a group of peers.
  • Demonstrated ability to make in-depth technical or business contributions working with other engineers.
  • High level of initiative, with an ability to plan and manage tasks, ability to work collaboratively, both within and outside one’s own group.
  • Strong written and verbal communication skills in English.
  • Quality and process oriented, capable of manage automated testing infrastructure and plan for improvements in Quality Assurance and Quality Control areas.

Additional skills to be considered

  • Experience in embedded software development.
  • Experience in real time operating systems and tool chains.
  • Experience in concurrent programming. Experience in multithreaded and/or multi-process systems, understanding usage of synchronization primitives, different communication paradigms, mutual exclusion, producer-consumer schemes, memory sharing, data communication and priority assignment.
  • Experience in code debugging: usage of debuggers and (desirable) tracing tools, memory corruptions and leakage detection and correction, stack analysis.
  • Knowledge of interchange formats such as PDF and typical CAD and Design applications such as Autocad or Adobe CS Suite.
  • Experience in state machine design and implementation, event driven control, complex error detection and recovery, synchronization between multiple devices with multiple states.
  • Experience working with distributed teams.
  • STL knowledge and usage.
  • Experience with distributed control, communication protocols (i.e. RPCs, XDR, CORBA...
  • TCL, Perl scripting languages.
  • Experience with ARM & MIPS microprocessor architectures.
  • Experience with real time operating systems such as VxWorks, ThreadX or Integrity RTOS.
  • Experience in developing with ASICs or FPGA based devices.
  • Knowledge or electrical and mechanical development processes.


  • A Women Network that organizes activities all year long, such as the promotion of STEM vocations among girls.
  • Opportunity to work in an international organization with colleagues coming from all over the world.
  • Diverse internal growth and career opportunities.
  • An attractive package of benefits such as private health insurance, life insurance, lunch at reduced prices at our canteen, discounts on HP products, and flexible working schedule etc.
  • Sports centre (indoor and outdoor); gym, squash courts, tennis courts, basketball courts and regular fitness classes such as Yoga, Pilates, etc.
  • We also dedicate time and resources to contribute with our community through Corporate Volunteering activities.

For more jobs like this subscribe to the weekly newsletter or follow C++ JOBS on Facebook, Linkedin and Twitter for frequent social updates.