Firmware Engineer Middle/Senior

Role Description

This is a full-time on-site role based in Athens (Attica), or Patras (Achaia) for a Middle/Senior Firmware Engineer. The Firmware Engineer will develop and maintain embedded software solutions for our energy submeters and controllers, engage in debugging and improving firmware to ensure reliability and performance, collaborate with cross-functional teams, contribute to software development projects, and design energy measurement and control solutions based on ARM architecture.

 

Responsibilities

  • Build reusable components and
  • Translate designs and wireframes into high-quality
  • Optimize components
  • Collaborate with other team members and stakeholders.
  • Understand and implement security and data protection best practices.
  • Stay up to date with developments in the field and share your knowledge with the team.

 

Must have Qualifications in a glance

  • Be legally authorized to work in Greece
  • Live in commutable distance to Athens (Attica), or Patras (Achaia)
  • Bachelor’s degree in computer science or electrical engineering
  • 3 years of work experience with familiarity with modern design/development/build pipelines and tools.
  • 3 years of work experience with embedded OS and Board Support Packages
  • 3 years of work experience with Hardware Testing, automation test and benchmarking tools and frameworks

 

Technical Skills – Software engineering

  • Experience with different phases of the Software Development Life Cycle (SDLC), and methodologies (e.g., Agile, Waterfall, Scrum)
  • Experience in software architecture and design modeling techniques and tools (e.g., UML, SysML, state diagrams, use-case modeling)

 

Technical Skills – Embedded Software Development

  • 3+ years of experience in embedded Linux and Board Support Packages (BSP)
  • Firmware development and bootloader programming, Firmware updates
  • Proficiency in languages such as C / C++ and python or Rust
  • Understanding of assembly language for low-level programming

 

Technical Skills – General

  • Understanding of network protocols (TCP/IP, UDP)
  • IoT Communication Protocols, Knowledge of MQTT, CoAP, HTTP/HTTPS, and WebSockets
  • Cloud Integration, RESTful API design and integration

 

Technical Skills – Testing, DevOps and Agile PM Practices

  • Debugging tools and techniques (GDB, JTAG)
  • Familiarity with modern design/development/build CI/CD pipelines and tools.
  • Experience with unit testing, integration testing, and contract Hardware in the Loop testing environment.

 

Technical Skills – Security

  • Network (TLS/SSL, encryption) security
  • Secure coding practices, vulnerability scanning and compliance.
  • Knowledge of cryptographic methods (AES, RSA, SHA)

 

Technical Skills – Machine Learning and AI (optional)

  • Understanding of ML/AI concepts and their application in IoT
  • Experience with frameworks like TensorFlow Lite, Edge AI

 

Nice to have

  • Knowledge of network security (TLS/SSL, encryption) and secure coding practices.
  • Knowledge of cryptographic methods (AES, RSA, SHA).
  • Understanding of ML/AI concepts and their application in IoT.
  • Experience with frameworks like TensorFlow Lite, Edge AI.
  • Ability to understand business requirements and translate them into technical requirements.