Senior C++ Developer
ERNI - Swiss Software Engineering
Sant Cugat, Barcelona, ES
hace 3 días


  • Creates, analyzes, designs, programs, document, debugs, and modifies firmware and software components.
  • Analyzes design and determines coding, programming, and integration activities required based on general objectives and knowledge of overall architecture of product and solution.
  • Write and execute complete testing plans, protocols, and documentation for assigned portion of application.
  • Identifie and debugs, and create solutions for issues with code and integration into application architecture.
  • Collaborate and communicate with management, internal, and outsourced development partners regarding Firmware applications design status, project progress, and issue resolution.
  • Review specifications, design and development documentation.
  • Ability to work with multiple disciplines : software, firmware, electrical, ASIC and mechanical.
  • Work with Marketing and Human factors to define the requirements for the printing software application.
  • Align to the schedule needs given by the different program teams.
  • Investigate, define and implement algorithms related to digital printing.
  • Support the roadmap of the software taking into account industry trends, business strategy as well as market evolution.
  • Drives innovation and integration of new technologies into projects and activities in the software applications design organization.


  • 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.
  • Experience of product development or similar work.
  • Strong C++ / C++ 11 programming skills.
  • In-depth understanding of C++.In-depth understanding of modern operating systems, especially Linux.
  • Experience with Linux, Windows and Mac software development, package, test & release, and with libraries generations.
  • Experience with Visual Studio and QT creator STL knowledge and usage.
  • Experience in embedded software development.
  • Experience in concurrent programming.
  • Experience in multithreaded and / or multi-process systems, understanding usage of synchronization primitives, different communication paradigms and protocols, mutual exclusion, producer-consumer schemes, memory sharing, data communication and priority assignment.
  • 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.
  • In-depth understanding of low-level real-time firmware development.
  • Experience in real time operating systems and tool chains.
  • Experience in code debugging : usage of debuggers and (desirable) tracing tools, memory corruptions and leakage detection and correction, stack analysis.
  • 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.
  • Experience in 2D / 3D computer graphics and color.TCL, Perl and Python scripting languages.
  • Benefits

  • Permanent contracts.
  • ERNI career path.
  • Flexibility package : Flexible working hours.Home office program*Friday intensive shift*
  • Gym for less.
  • Free language courses (English, Spanish and German).
  • Private medical insurance with Adeslas.
  • Flexible pay.
  • Attractive referral bonus. If needed : Relocation package.Transport bonus.
  • Inscribirse
    Mi Correo Electrónico
    Al hacer clic en la opción "Continuar", doy mi consentimiento para que neuvoo procese mis datos de conformidad con lo establecido en su Política de privacidad . Puedo darme de baja o retirar mi autorización en cualquier momento.
    Formulario de postulación