Logo go-e

C++ Embedded Software Engineer

Job

  • Level
    Experienced
  • Job Field
    IT, System, Embedded
  • Employment Type
    Full Time
  • Contract Type
    Permanent employment
  • Location
    Graz
  • Working Model
    Onsite
  • AI Summary

    In this role, you develop firmware for ESP32 microcontrollers and enhance collaboration with hardware and Linux development teams. You implement high-quality, maintainable software features and conduct testing.

    Job Technologies

    Your role in the team

    • You are part of our core team working on the ESP32 microcontroller firmware (written in C++23 and newer), which is used in our charging systems and smart meters.
    • Close collaboration with our hardware development team to validate and implement new hardware designs.
    • Close collaboration with our Linux firmware team to offer similar features on products with ESP32 as on products with Linux.
    • Implementation of maintainable, reliable, and verifiable software.
    • Performance measurement, detection of regressions.
    • Code reviews, release creation, writing of changelogs for customers.
    • Implementing new features and interfaces.

    This text has been machine translated. Show original

    Our expectations of you

    Qualifications

    • Ability to research problems and propose solid solutions.
    • Ability to act as a mentor and participate in knowledge transfer.
    • Excellent knowledge in memory-efficient C++ development, preferably including:
    • Avoidance of heap allocations by moving objects to the stack or by converting them into constexpr.
    • Improvement of performance by converting raw function pointers and virtual methods into C++ template arguments.
    • Asynchronous I/O.
    • (Secure!) Multithreading and atomic operations.
    • C Linux APIs such as fopen(), bind(), etc.
    • Knowledge of the esp-idf framework (we use the latest IDF master branch with many customer-specific improvements and no outdated compilers).
    • Good Linux debugging skills.
    • Knowledge of the Linux network protocol stack.
    • Basic knowledge of cryptography (for example, why the choice of a random IV is necessary in encrypted firmware update files).
    • Excellent German and English skills.

    Experience

    • Experience in troubleshooting embedded systems down to the hardware level (UART, I2C, SPI, logic analyzer).
    • Experience with Linux shell scripting and command-line utilities (we have a complete CI/CD for all microcontroller projects and Sentry for customer crash reports).
    • Experience in implementing abstraction APIs/wrappers for lower-level library.
    • Experience with version control git, continuous integration with GitLab, project management methods (with Jira and Confluence).

    This text has been machine translated. Show original

    Benefits

    Work-Life-Integration

    Job Locations

    Map of company locations
    • Location Graz

      Location Graz

      Steiermark

      Austria

    Topics that you deal with on the job

    This is your employer

    go-e

    go-e

    The Austrian company go-e GmbH is a leading manufacturer of AC charging stations for electric vehicles, with a charging capacity of up to 22 kW.

    Description

  • Founding year
    2015
  • Company Type
    Established Company
  • Working Model
    Onsite
  • Industry
    Electronics, Automatization
  • Logo go-e

    C++ Embedded Software Engineer

    Location
    Graz
    Working Model
    Onsite

    More Jobs