Senior Embedded Systems Engineer

PNG LLC
Hudson, United States of America
4 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior
Compensation
$ 150K

Job location

Hudson, United States of America

Tech stack

Unit Testing
C++
Cloud Computing
Debian Linux
Software Debugging
Linux
Linux on Embedded Systems
Firmware
Hardware-In-The-Loop Simulation
Inter-Process Communication
Python
Sensor Fusion
Software Configuration Management
Universal Asynchronous Receiver/Transmitter
Visual Systems
Data Logging
Diagnostic Tools
Serial Peripheral Interface
Delivery Pipeline
Integration Tests
Low Latency
Bare Metal
U-Boot

Job description

Our pods are living machines - Linux-based controllers, custom firmware, sensors, actuators, and cloud infrastructure all working together, deployed in the field, running unattended. When a customer is disappointed in their experience, that's not acceptable to us.

We're looking for a Senior Embedded Systems Engineer who has made interconnected hardware actually reliable - not just on the bench, but in the field, at scale, under conditions nobody planned for. You've debugged a production system from a laptop with a serial cable. You know the difference between a software bug and a ground loop. You're not afraid to pull out a scope or multimeter and figure out what's happening. You understand that uptime isn't a metric, it's a promise - and that speed, consistency, and security are just as non-negotiable as reliability.

This is our first dedicated embedded hire. You'll own the hardware software stack end to end - from bare-metal firmware on microcontrollers to the Linux services that tie everything together. You'll set the patterns the rest of the team inherits. You'll ship systems that run autonomously across a growing fleet of deployed pods, deliver fast and consistent service to every customer, and don't wake anyone up at 3 am.

Ready to make machines that just work, everywhere? We want to hear from you.

What you'll do

In your first 30 days:

  • Get deep on the existing pod stack - understand every service, every interface, every failure mode. Ask hard questions. As you go, fill the gaps: if a system isn't documented, document it. Leave everything in better shape than you found it.
  • Own at least one live reliability improvement from diagnosis through deployment
  • Establish your local dev and debug workflow; get comfortable deploying to field hardware
  • Spend time on-site during customer testing - work with our site hosts, watch real customers interact with the pods, and understand what's actually at stake when the system works (or doesn't)

In your first 2-12 months:

  • Own firmware development and maintenance for microcontroller subsystems (STM32, ESP32, and others) - motor control, sensors, actuators, safety interlocks
  • Design and maintain the embedded Linux control layer: inter-process communication, hardware abstraction, service reliability, watchdog strategies
  • Improve and expand our OTA update pipeline - ensuring we can ship firmware and software changes to a distributed fleet confidently, with robust rollback and failure recovery
  • Build and maintain internal tools and dashboards that give every member of the team - engineering, ops, and beyond - instant visibility into what the fleet is doing, fast paths to diagnosing issues, and clear workflows for resolving them
  • Build out testing coverage across the stack: unit tests, integration tests, and hardware-in-the-loop validation; develop test procedures, diagnostic tools, and repeatable benchmarks that help us continuously improve our hardware, software, and operational processes - and ensure every customer gets a consistently excellent experience
  • Design for performance: our customers expect a fast, predictable experience every time - latency and consistency matter as much as uptime
  • Harden the system against real-world failure modes: power loss, thermal stress, connectivity drops, hardware wear - and against security threats, with secure communication, authenticated updates, and a minimal attack surface
  • Design systems that preserve beverage quality and consistency - the software and hardware choices we make directly affect what ends up in the customer's hands
  • Establish observability practices - logging, telemetry, alerting - so we know what our pods are doing before our customers tell us
  • Design for portability and consistency: systems that behave the same way regardless of where a pod is deployed

Ongoing:

  • Partner with mechanical and ops to close the loop between field failures and software fixes fast
  • Define embedded architecture patterns and code standards as the team grows
  • Own production reliability and performance KPIs - uptime, MTBF, service latency, time-to-detect, time-to-recover
  • Be the person the team calls when something weird is happening in the field

Requirements

Do you have experience in Voltage testers?, Reliability obsessive · Full-stack tinkerer, * 5+ years of embedded Linux development - you've owned a Linux-based hardware product through design, deployment, and sustained field operation

  • Strong Python and C/C++ - you know when to use each, and you write code other people can maintain at 6 am
  • Real hardware fluency: GPIO, SPI, I2C, UART, PWM - not just theoretical, but debug-with-a-scope fluency. You're comfortable wiring things up, pulling out a multimeter, and figuring out what's happening at the hardware level.
  • Systemd, service supervision, and Linux reliability patterns - you've designed systems that recover from failures without human intervention
  • OTA firmware update experience - you've shipped updates to deployed hardware and thought carefully about rollback, atomicity, failure recovery, and security
  • A security mindset - encrypted communications, authenticated updates, secure boot, minimal attack surface. You don't bolt security on at the end.
  • A performance mindset - you care about latency, determinism, and predictability, not just correctness
  • Experience building internal tooling and dashboards - you've made complex systems legible to people who aren't staring at the same terminal you are
  • Comfort with the full vertical stack - from register-level firmware to cloud-connected services
  • A compulsion toward clarity over chaos - your architecture docs, READMEs, and inline comments are things people actually read and rely on. You document as you go, not as an afterthought.
  • Builder mentality: not content to inherit a system, excited to design one - and to leave it better documented than you found it
  • Scrappy and resourceful - when the tool you need doesn't exist, you build it
  • Energized by ambiguity and fast iteration; comfortable making good decisions with incomplete information, * Experience building systems that people and businesses genuinely depend on - mission-critical uptime, real consequences when things go wrong
  • Vision systems or sensor fusion exposure
  • Debian packaging and APT repository management - you've built repeatable, auditable deployment pipelines for Linux systems
  • You've carried a pager (or the modern equivalent) for a production system and have the instincts to show for it, * Are you able to reliably commute to Hudson, NH for this role? If you are located outside of New Hampshire or Massachusetts, would you be willing and able to relocate at your own expense?

About the company

p!ng is an equal opportunity employer. We are a proud veteran-, woman-, and minority-owned business. We are committed to building a team that reflects the communities we serve - and we strongly encourage applications from veterans, women, people of color, and folks from underrepresented backgrounds in engineering and manufacturing.

Apply for this position