Senior Embedded/Firmware Engineer (with Linux)

intent sp. z o.o.

Warszawa

Hybrid

PLN 165,000 - 248,000

Full time

6 days ago
Be an early applicant

A complete application in a minute

Tailored resume and cover letter, ready to send.

Get past ATS filters

Benefits offered by this job

Fully remote
Flexible hours
Knowledge sharing access

Job summary

intent is seeking an experienced Embedded / Firmware Engineer for freelance, time & material work. You’ll build a custom embedded Linux distro, bring up hardware, and work across hardware and software teams on real devices.

The role emphasizes hands-on C/C++, Linux kernel and U-Boot, with robust debugging using JTAG/SWD, logs, and oscilloscopes. Flexible hours and remote Europe-wide collaboration are offered; Warsaw office available.

Qualifications

  • 4+ years of professional embedded/firmware experience.
  • Hands-on C/C++ for embedded systems.
  • Experience with embedded Linux build systems (Yocto/Buildroot).
  • Knowledge of Linux kernel, drivers, and device tree.
  • CI/CD for embedded projects (GitHub Actions, Jenkins, GitLab).
  • Experience with bootloaders, especially U-Boot.
  • Understanding constraints: timing, memory, peripherals, boot time, power.
  • Ability to debug firmware with JTAG/SWD, logs, scope.
  • Able to read schematics, datasheets, documentation, errata.
  • Familiarity with UART, SPI, I2C, GPIO, or similar.

Responsibilities

  • Design, develop and maintain a custom embedded Linux distro (Yocto/Buildroot).
  • Bring up new hardware with hardware team to debug schematics to software.
  • Develop and maintain BSP and bootloaders (U-Boot) and kernel drivers.
  • Write robust C/C++ system services and applications.
  • Optimize boot time, memory usage and power consumption.
  • Implement security features: Secure Boot and encrypted FS.
  • Debug firmware and hardware-adjacent issues with probes and tools.
  • Collaborate across hardware, mobile, QA, backend, product and client teams.
  • Participate in requirements, planning, architecture decisions and estimations.
  • Test firmware releases, investigate issues, and maintain docs.
  • Share knowledge and improve Firmware & Hardware practices.

Skills

C/C++ (embedded)
Embedded Linux debugging
JTAG/SWD & oscilloscope
Git & PRs
Bash/Python automation
English (B2)
CI/CD for embedded
U-Boot bootloader

Tools

Yocto Project
Buildroot
Linux kernel & device tree
Driver development

Job description

If you're an Embedded / Firmware Engineer who is just as comfortable on a Linux board as on a microcontroller, and you know that a boot hang or a flaky BLE connection is rarely "just a software bug," we'd love to talk.

We're looking for a freelancer with a strong embedded foundation: C/C++, hardware-aware debugging, and real embedded Linux experience (Yocto or Buildroot, U-Boot, kernel, device tree, drivers). The role is not tied to one platform: depending on the project, you might work on a Cortex-A SoC, a Raspberry Pi-class board, or a Cortex-M microcontroller next to it.

You'd join us on a freelance, time & material basis: you're paid for the hours you actually work on real client projects. We're ready to start right away. The first three months are about getting to know each other, and if it works, we'd love to bring you into our core team with a fixed salary and the full benefits package. Not a promise, a real possibility we actively root for.

About intent

We've been designing and co-creating connected devices since 2008. Wearables, smart audio, health-tech hardware, and IoT products for clients like Oura, BOSE, Neurable, and McIntosh. We're a 60+ person, fully remote team that works at the intersection of physical and digital products.

At intent, firmware is not treated as an isolated layer. It sits right in the middle of hardware, mobile, cloud, QA, and product decisions. That means you'll work with people who care about what actually happens on the device, not just what the ticket said should happen.

Who this role is NOT for

If you only want to be handed a perfectly written spec, disappear for two weeks, and return with a pull request, we're probably not your people.

Embedded work at intent means dealing with real-world constraints: imperfect hardware, changing client needs, boards that boot on the bench and not in the enclosure, radios that behave differently in the lab than in the field, power trade-offs, vendor BSPs, datasheets, errata, and edge cases that don't always show up on day one.

We're looking for someone who asks "why?" before jumping into implementation, who can read a schematic and question it, and who understands that "it works on my desk" is not the same as "it works in the product."

Requirements
  • 4+ years of professional experience in embedded or firmware development.

  • Strong hands-on experience with C / C++ for embedded systems.

  • Hands-on experience with embedded Linux build systems such as Yocto Project or Buildroot.

  • Good understanding of the Linux kernel, device drivers, and the device tree.

  • CI/CD experience for embedded projects (e.g., GitHub Actions, Jenkins, GitLab CI).

  • Experience with bootloaders, particularly U-Boot.

  • Experience with embedded constraints: timing, memory, peripherals, boot time, and power consumption.

  • Ability to debug firmware and hardware-adjacent problems using practical tools: JTAG/SWD, serial logs, logic analyzers, and oscilloscopes.

  • Comfort reading schematics, datasheets, technical documentation, and errata.

  • Familiarity with common embedded interfaces such as UART, SPI, I2C, GPIO, or similar.

  • Proficiency with Bash and/or Python for automation and testing.

  • Solid Git skills and comfort collaborating on GitHub: pull requests, code reviews, shared repos.

  • Good command of written and spoken English, minimum B2.

  • Ownership, self-reliance, and responsibility for assigned work.

  • Clear communication, with engineers, PMs, QA, and clients.

  • A problem-solving mindset over line-counting.

Nice to have
  • Experience with different platforms (even exotic ones).

  • Embedded Linux toolchains, drivers, and user-space apps.

  • Experience with microcontrollers (ARM Cortex-M) and RTOS such as FreeRTOS or Zephyr.

  • Bluetooth / BLE beyond the basics: GATT design, pairing and bonding, connection parameters, throughput and power trade-offs, and secure OTA/DFU.

  • Networking: TCP/IP, Wi‑Fi, Ethernet, and IoT protocols such as MQTT.

  • Multimedia and audio: GStreamer, V4L2, ALSA, I2S, codecs, graphics acceleration.

  • Security: Secure Boot, OP-TEE, TrustZone, encrypted filesystems, cryptography.

  • Sensor integration (IMU, PPG, biosignals) and power profiling.

  • Containerization on embedded devices (e.g., Docker).

  • A portfolio of personal projects on a GitHub or GitLab profile.

What you'll do
  • Design, develop, and maintain a custom embedded Linux distribution using Yocto or Buildroot.

  • Bring up new hardware platforms, working closely with the hardware team to debug issues from schematics to software.

  • Develop and maintain the BSP and bootloaders (e.g., U-Boot), and customize the Linux kernel, including writing and debugging drivers (e.g., I2C, SPI, UART, MIPI-CSI/DSI).

  • Write robust, efficient C/C++ code for system services and applications.

  • Optimize system performance: boot time, memory usage, and power consumption.

  • Implement and maintain system security features such as Secure Boot and encrypted filesystems.

  • Debug firmware and hardware-adjacent issues using JTAG/SWD, serial logs, logic analyzers, oscilloscopes, and vendor tooling.

  • Collaborate with hardware, mobile, QA, backend, product, and client-side engineering teams to solve cross-functional device problems.

  • Participate in requirements discussions, technical planning, architecture decisions, estimations, and delivery planning.

  • Test firmware releases, investigate issues found during development or QA, and maintain technical documentation.

  • Share knowledge and contribute to better engineering practices within our Firmware & Hardware chapter.

How we work

Fully remote. We have an office in Warsaw. The team operates between 10:00 and 18:00 CET, and that's when most meetings happen. Depending on the project, occasional evening calls with US-based clients (up to ~20:00) may happen, always scheduled in advance, never a surprise. You'll be part of the Firmware & Hardware chapter for knowledge‑sharing, and simultaneously on a project squad led by a PM for day‑to‑day delivery.

What we offer
  • 120-180 PLN/h net B2B, depending on your experience

  • Truly flexible hours (most of the team works 10-18 CET, but you organize your day)

  • Fully remote (all Europe)

  • Access to our internal knowledge‑sharing: tech talks, experiments, side projects

No sugarcoating: during the freelance period there's no paid leave or medical benefits. Those come with the permanent contract, and we're transparent about that upfront.

Your first weeks

We don't throw you into the deep end on day one. New engineers go through a structured ramp‑up period before landing on target projects: you'll work alongside the team, get paired with a technical buddy, and tackle progressively bigger tasks so both sides can see how the collaboration feels. Feedback comes early and often, no one waits three months to tell you something isn't working. We believe in fast, honest signals: if it's great, you'll know. If something needs adjusting, you'll hear about it while there's still time to adjust.

Recruitment process

The entire process is in English. All interviews are recorded for internal evaluation purposes.

  1. HR call (~45 min, casual)

  2. Technical meeting (~90 min, with the technical team)

  3. Final feedback within a few days


Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Senior Embedded Linux Engineer
Senior Embedded Linux Engineer

Intent • Polska

Hybrid
PLN 165,000 - 248,000
Fully remote work
Flexible hours
Private medical care
+3
Ingeniero sénior de Linux embebido
Ingeniero sénior de Linux embebido

intent • Warszawa

Remote
PLN 165,000 - 248,000
Remoto
Senior Embedded-/Firmware-Engineer (mit Linux)
Senior Embedded-/Firmware-Engineer (mit Linux)

intent • Warszawa

Remote
PLN 165,000 - 248,000
Fully remote (Europa)
Office in Warschau
Flexible Arbeitszeiten
+1
Senior Backend Developer (freelance)
Senior Backend Developer (freelance)

intent sp. z o.o. • Polska

Hybrid
PLN 123,984 - 247,968
Flexible working hours
Fully remote work option
Pet-friendly office in Warsaw
Senior iOS Developer (freelance)
Senior iOS Developer (freelance)

intent sp. z o.o. • Polska

Hybrid
PLN 123,984 - 247,968
Flexible hours
Remote work
Access to internal knowledge-sharing
+1
Mobile Developer (BLE | Flutter / iOS / Android | freelance)
Mobile Developer (BLE | Flutter / iOS / Android | freelance)

intent sp. z o.o. • Warszawa

On-site
PLN 123,984 - 247,968
Flexible working hours
Remote work options
Access to internal knowledge-sharing
Senior Flutter Developer (freelance)
Senior Flutter Developer (freelance)

intent sp. z o.o. • Polska

Hybrid
PLN 123,984 - 247,968
Flexible working hours
Access to internal knowledge-sharing
Path to permanent contract with benefits
Quality Assurance Lead
Quality Assurance Lead

.intent • Warszawa

Remote
PLN 229,000 - 312,000
Saltus medical care
Self-development budget
Flexible hours
+3
Regular/Senior Embedded Software Engineer (f/m)
Regular/Senior Embedded Software Engineer (f/m)

INTechHouse • Bydgoszcz

On-site
PLN 110,000 - 165,000
Benefits package
Embedded Software Engineer (IoT)
Embedded Software Engineer (IoT)

EMBIQ GmbH • Lublin

Hybrid
PLN 140,000 - 180,000
Good office location
No dress code
Medical care
+8
Top locations