Location: Fully Hybrid, or optionally onsite in Seattle, WA or Atlanta, GA
Salary Range:
Level 1: $98,805 - $148,155
Level 2: $123,480 - $185,220
The Role
We're hiring a Senior Software Engineer who is, unapologetically, a generalist. You're the kind of engineer who gets bored staying in one lane. You'd rather debug an I²C bus in the morning, track down a jank in a Flutter render pipeline after lunch, and tune a ClickHouse or TimescaleDB query before dinner. You take pride in being a master of none - not because you cut corners, but because you've learned that the most interesting problems live at the seams between disciplines, and you want to live there.
This role spans embedded firmware, mobile applications, and backend and web services — the full vertical slice of a connected hardware product. You won't be expected to be the deepest expert in any one area on day one, but you should have real shipping experience in at least two of them, and genuine enthusiasm for getting your hands dirty in the third. Our codebases are written for performance, efficiency, and mission-critical durability. Our products get dropped, soaked, frozen, and sailed in anger at world championships — and our users trust them on race day in conditions where failure isn't an option. That trust is the bar we're engineering to.
What You'll Work On
- Firmware for our next generation of ARM Cortex–based sailing instruments — sensor fusion, GNSS processing, wireless communication, and power-optimized real-time systems, running on our own in-house bare-metal C++ framework
- Custom radio stacks and end-to-end Bluetooth Low Energy integration — protocol design, throughput, and reliability under real-world conditions like RF interference, connection drops, and reconnection behavior
- Flutter mobile apps that configure devices, deliver live race data, and sync sessions to the cloud
- Go-based backend services handling high-volume telemetry ingestion, race management orchestration, and differential GNSS correction distribution
- Custom wire protocols — binary formats, radio link layers, and device-to-cloud transports designed from scratch for the constraints of small-boat racing
- Developer tooling, simulation harnesses, and automation that let a small team punch far above its weight
- Cross-boundary debugging — tracing the real cause of issues that span firmware, mobile, and backend, where the bug is rarely where it first appears
- Close collaboration with our mechanical, electrical, and product teams — our engineering problems rarely respect discipline boundaries, and neither does our team
Core Qualifications
- 5+ years of professional software engineering experience across multiple domains
- Shipping experience in at least one of: embedded firmware, mobile, backend — with real curiosity and willingness to ramp up in the other two
- Strong proficiency in C++ (we target C++23) and C; you've written both in resource-constrained environments and know the pitfalls of both
- Fluency with CMake and modern build tooling
- Outstanding debugging and tooling instincts - a logic analyzer, an oscilloscope, a profiler, a packet capture - you reach for whatever the problem actually needs
- Basic comfort with linear algebra - matrix operations, rotations, coordinate frames, and sensor fusion math should not scare you
- You actively use LLM-based developer tools to accelerate your workflow: code generation, debugging, research, documentation, all while retaining full ownership of your software
Embedded Firmware
- Professional experience developing firmware for ARM Cortex-M microprocessors
- Comfort with bare-metal programming — writing drivers from a datasheet, bringing up a new board, reasoning about memory maps, linker scripts, and boot sequences
- Fluency in our bare-metal C++ framework environment; RTOS experience (especially Zephyr) is a big plus
- Deep familiarity with embedded peripherals and protocols: UART, SPI, I²C, GPIO, DMA, ADC, PWM, timers, interrupts, USB, and CAN
- Experience bringing up and integrating sensors and ICs: IMUs, GNSS receivers, pressure sensors, power management ICs, flash memory, and RF front-ends
- Experience with Bluetooth Low Energy — both as a user of a vendor stack and, ideally, with exposure to the lower layers (GATT, L2CAP, link layer)
- Experience with firmware update systems (OTA / DFU), bootloaders, and secure boot
Mobile
- Experience with Flutter / Dart — you've shipped real apps, navigated platform channels, and are comfortable with Riverpod for state management
- Bonus points for Kotlin Multiplatform, Swift, or React Native experience
- Comfort with native-to-app integrations: BLE, background services, and filesystem/storage quirks on both iOS and Android
Backend & Web
- Professional experience with Go for production backend systems
- Working knowledge of PostgreSQL, ideally with TimescaleDB, or familiarity with ClickHouse
- Experience with Docker and container orchestration
- Familiarity with the Cloudflare stack (Workers, R2, Tunnels) or equivalent edge platforms
- Comfort with Python for services, data pipelines, and internal tooling
- Experience designing and implementing custom protocols — binary wire formats, message framing, and versioning strategies
- A mindset tuned to high performance, efficiency, and mission-critical durability — our backend can't be down during a World Championship start sequence
Nice to Have
- Experience with the Nordic Semiconductor family (nRF52 / nRF53 / nRF54) and the nRF Connect SDK
- Experience shipping connected hardware products — IoT, wearables, consumer electronics, or similar systems where firmware, mobile, and cloud all have to work together
- RISC-V experience
- Rust or Zig experience, particularly in embedded or systems contexts
- Experience running local LLMs, fine-tuning models, and building RAG pipelines and agentic processes
- GNSS, sensor fusion, Kalman filtering, or related signal-processing background
- You sail. Not required — but a big plus. If you don't sail yet and you're open to the idea, we'd be thrilled to help you learn.
What You Bring as a Person
- Intellectual breadth and restlessness: you'll dig into a datasheet, you take pride in seeing things you built being enjoyed by customers, you consider engineering a creative process
- Pragmatism: you ship. You know when to reach for the clever solution and when a boring one is better. You push back constructively when a plan won't survive contact with reality.
- Ownership: when something breaks on the water, you want to be in the room figuring out why
- Clear communication: our team is small enough that no one is just heads-down. You can explain what you're doing, write a useful PR description, and disagree productively.
Benefits & Perks
- Competitive salary and meaningful equity in an award-winning, rapidly growing company
- Medical, dental, and vision insurance
- 401(k)
- A role that occasionally takes you to regattas and sailing events — we go where our customers race
- The chance to work on products used at World Championships and beloved by the best sailors in the world
How to Apply
Send your resume and a cover letter to careers@vakaros.com. In your cover letter, we'd love to hear:
- Which of our three domains (embedded, mobile, backend) you're strongest in today — and which one you're most excited to grow into
- A project you're proud of, ideally one that crossed disciplinary boundaries
- Anything about sailing, the water, or the outdoors we should know