Synced from Ashby · Sep 18

Senior Desktop Engineer (Electron.js)

Ruby LabsUkrainePosted Sep 18, 2026
Software EngineerRemoteSenior
Apply nowSave & get alerts

Mirrored from Ruby Labs's own Ashby careers system · refreshed hourly

31
Other open Ruby Labs roles
Sep 18
Posted
Ashby
Applicant system
Job description

About us

Ruby Labs is a leading tech company that creates and operates innovative consumer products. We offer a diverse range of opportunities across the health, education, and entertainment industries. Our innovative teams are driving the future of consumer-led products, and we're always looking for passionate individuals to join us. Learn more about our story at: https://rubylabs.com/about-us/

About the role

At Ruby Labs, we are looking for a Senior Desktop Engineer to own and drive a new cross-platform desktop product from first commit to production.

This is a high-ownership role with an unusually deep systems component. The application is not a wrapped web app: it captures system and microphone audio in real time, renders an always-on-top overlay across the user's workspace, registers global shortcuts, and integrates with the operating system at a level that requires native code on both macOS and Windows.

Our architecture is Electron for the application and UI layer, with native modules and helper processes in Swift and C++ where the platform requires it. You will own that boundary, deciding what belongs in TypeScript, what belongs in native code, and making the two halves behave as one reliable product.

You will also own everything that happens after the build: code signing, notarization, entitlements, permission onboarding, auto-update, and crash reporting. On this product, those are not an afterthought; they are a significant share of the engineering work, and getting them wrong is what stops users from ever running the app.

You will operate as the senior technical voice for desktop within your team, setting the engineering standard for the platform.

Key Responsibilities

Desktop Application & Engineering Quality

  • Own the Electron architecture end to end — main, renderer and helper processes, IPC design, context isolation, process lifecycle — and deliver major features within agreed timelines.

  • Build transparent, frameless, always-on-top overlay windows that behave correctly across full-screen spaces, multiple displays and mixed-DPI setups, alongside global shortcuts, tray presence and low-latency UI under continuous background load.

  • Design a clean platform abstraction in TypeScript so the macOS and Windows implementations stay isolated and independently testable, and write idiomatic Swift and C++ in the native layer.

  • Keep the product reliable: defensive handling of unstable platform APIs, tests and code reviews, performance, memory and battery budgets, and remediation of security-review and penetration-test findings within agreed severity SLAs.

Native Platform Integration

  • Build and maintain the native layer: Node addons (N-API / node-addon-api) and out-of-process helpers in Swift and C++.

  • Implement real-time system audio capture — Core Audio process taps and ScreenCaptureKit on macOS, WASAPI loopback on Windows — including device change handling, format negotiation and graceful recovery from driver-level failures.

  • Integrate with the Accessibility API (AXUIElement) on macOS and UI Automation on Windows to read application context reliably.

  • Own the IPC protocol and lifecycle between Electron and the native helpers, and keep the application working as Apple and Microsoft change their platforms.

Distribution, Permissions & Release Reliability

  • Own code signing and notarization on macOS — hardened runtime, entitlements, nested binary signing, provisioning profiles — and Authenticode signing, SmartScreen reputation and antivirus false positives on Windows.

  • Design the permission onboarding flow — microphone, system audio, screen recording, accessibility — so that grant rates stay high and failure states are recoverable.

  • Build and maintain the release pipeline: CI matrix builds, signing from CI with HSM-backed certificates, auto-update, staged rollout and rollback.

  • Own crash reporting and production telemetry for the desktop client, and act on what it tells you.

Qualifications

  • 6+ years of software engineering experience, including production-grade TypeScript/Node.js.

  • 3+ years building and shipping Electron applications to real end users, not internal tools or proofs of concept.

  • Hands-on native macOS development in Swift and/or Objective-C, with AppKit and at least one system-level framework such as Core Audio, AVFoundation, ScreenCaptureKit, or the Accessibility API.

  • Practical experience writing native Node addons (N-API / node-addon-api) or bundling and communicating with out-of-process native helpers.

  • Demonstrated experience with macOS code signing, notarization, entitlements, and the TCC permission model — you have debugged a rejected notarization and know how to read the log.

  • Working knowledge of the Windows desktop platform: Win32 APIs, Authenticode signing, and the practical realities of SmartScreen and antivirus reputation.

  • Strong grasp of multi-process architecture, IPC, and debugging issues that only reproduce on a user's machine.

Nice to have

  • Real-time audio pipelines — buffering, resampling, mixing multiple sources, or streaming to speech-to-text services.

  • Signing from CI with hardware-backed certificates (Azure Key Vault, DigiCert KeyLocker, or similar), and antivirus whitelisting or SmartScreen reputation building for a new product.

  • Auto-update infrastructure such as Squirrel, electron-updater or Sparkle, including staged rollouts.

  • Crash reporting and symbolication for native code (Crashpad, Sentry, or similar).

  • Prior experience shipping a consumer desktop product at meaningful scale.

Location

Ruby Labs operates within the CET (Central European Time) zone. Applicants from any country are welcome to apply for the position as long as they are located within approximately ± 4 hours of CET. This ensures optimal collaboration and communication during working hours.

Benefits

Discover the perks of being part of our vibrant team! We offer:

  • Remote Work Environment: Embrace the freedom to work from anywhere, anytime, promoting a healthy work-life balance.

  • Unlimited PTO: Enjoy unlimited paid time off to recharge and prioritize your well-being, without counting days.

  • Paid National Holidays: Celebrate and relax on national holidays with paid time off to unwind and recharge.

  • Company-provided MacBook: Experience seamless productivity with top-notch Apple MacBooks provided to all employees who need them.

  • Flexible Independent Contractor Agreement: Unlock the benefits of flexibility, autonomy, and entrepreneurial opportunities. Benefit from tax advantages, networking opportunities, reduced employment obligations, and the freedom to work from anywhere. Read more about it here: https://docs.google.com/document/d/1nkrN76JlZkbKj9WSOhlT1_mni_CZeDkHdwfIjPXVwvk/preview?tab=t.0#heading=h.ndsdl4wapxtt

Be part of our fast-growing team and seize this excellent opportunity for personal and professional growth!

Interview Process

After submitting your application, we conduct a thorough review which typically takes 3 to 5 days, but may occasionally take longer due to the volume of applications received. If we see a potential fit, we proceed with the following steps:

  • Recruiter Screening (40 minutes)

  • Technical Interview (60 minutes)

  • Final Interview (40 minutes)

Life at Ruby Labs

At Ruby Labs, we move fast, aim high, and expect the same from our team. We’re not here to play small—we’re here to build, grow, and win. That means we look for people who are ambitious, driven, and ready to give their best every single day.

This is a place for individuals who thrive under pressure, embrace challenges, and see opportunity in every obstacle. If you’re hungry to achieve, motivated by impact, and want to grow at the speed of your own ambition, Ruby Labs offers the platform to make it happen.

Here, effort is matched with reward. We recognize those who go all in and deliver results, and we create space for people who want more—more responsibility, more growth, and more success.

#LI-Remote

View original posting on Ashby

What applying to Ruby Labs usually looks like

Based on publicly available information, candidates applying through ashby for roles at Ruby Labs can generally expect a structured and relatively streamlined digital application process. Ashby-based systems typically allow candidates to submit resumes and application materials through a clean online portal, and applicants may receive automated confirmation upon submission. The process may include multiple stages, such as an initial screening, one or more interviews with team members, and potentially a skills assessment or take-home task depending on the role, particularly for technical or specialized positions like engineering or analytics roles. Communication is commonly handled through email or the ashby platform itself, and response times vary based on the volume of applicants and internal hiring timelines. Candidates should typically ensure their application materials clearly reflect relevant skills and experience, as ATS systems like ashby often rely on structured data fields for initial review.

Based on publicly available information. LandEarly does not verify interview process details.

Land this one early - before the req fills.

LandEarly tailors your resume and screening answers to each posting, submits while the role is still new, and tracks every application in one place.

Set up in minutes · Cancel anytime · No contract

Keep exploring

What this role pays, where else it is open, and how to write the application.

Senior Desktop Engineer (Electron.js)
Ruby Labs · Ukraine
Apply