All offersWrocławCSenior Firmware Engineer
Senior Firmware Engineer
C
Softeq

Senior Firmware Engineer

Softeq
Wrocław
Type of work
Full-time
Experience
Senior
Employment Type
B2B
Operating mode
Remote

Tech stack

    Git
    advanced
    C++
    advanced
    Confluence
    advanced
    JIRA
    advanced
    C
    advanced
    SPI
    advanced
    Linux
    nice to have

Job description

Softeq is looking for a Senior Firmware Engineer in the Embedded department. This position will require collaborating with a multi-disciplinary team to provide embedded firmware for custom hardware solutions. Analyze, design, program, debug and modify the firmware for execution of drivers, board support packages and other custom embedded platforms. Work often involves analog and digital hardware and real-time operating systems. Position requires knowledge of and exposure to hardware design and strong C/C++ programming skills. 

 

Employment contract or B2B in Vilnius, Lithuania (preferable) 

OR 

B2B contract in Poland (100% remote work) 

 

Responsibilities: 

  • Design and implement systems using C, C++ and a variety of languages (e.g. Bash, Python). 
  • Experience with RTOS and bare metal systems development. Write code from high-level embedded applications down to register-level device drivers. 
  • Experience with wireless communications (WiFi, BT/BLE) 
  • Utilize a variety of processors and hardware peripherals (e.g. PWM, ADC, DAC, CAN, UART, etc.). 
  • Write and execute complete testing plans, protocols, and documentation for assigned portion of the application; identifies and debugs, and creates solutions for issues with code and integration into the application architecture. 
  • Board bring-up as well as debugging and validation of new hardware 


Requirements:

  • 3+ years of degreed experience in firmware development
  • Strong C, C++ programming skills.
  • Knowledge of firmware testing methodology, including writing and execution of test plans, debugging, and testing scripts and tools.
  • Full understanding of SPI, I2C, USB 2+, RS232, CAN etc. interfaces;
  • Experience with collaboration tools (i.e. GIT, JIRA, and Confluence) and software configuration tools
  • Demonstrated ability to take initiative to identify and solve complex system-level issues.
  • Excellent analytical and empirical problem solving and troubleshooting skills as well as to work collaboratively, both within and outside one's own workgroup.
  • English language written and verbal communication skills (min. B2 level).
  • Bachelor’s degree in Computer Science, Electrical Engineering or related field

 

Nice to have:

  • Experience with communications protocols in a low power environment: BLE, NB-IoT, LTE-M
  • Linux kernel basic knowledge and principles of the kernel, DT, bootloader and how the system works is plus