Software Designer

🇺🇸 United States - Remote
🎨 Design🔵 Mid-level

Job description

Software Design Engineer - Contract

DISHER is looking for a contract Software Designer to support one of our customers for a 6-month contract (with possible extensions) in the Portage, MI area. This role is Hybrid (one day in office). You must be willing to commute and be on-site in Portage, MI one day per week or as needed.

What it’s like to work here:

Make a positive difference! It’s why we exist. We are always looking for teammates who are eager to use their diverse set of talents with our customers, coworkers, and communities. We want to leave this world better than we found it.

What you will get to do:

  • Design, implement, and maintain C++ applications running on a custom Yocto-based Linux platform
  • Integrate and configure Pulseaudio, spdlog, RapidJSON, and related libraries into existing or new services
  • Implement and debug inter-process communication using Linux sockets
  • Manage application configuration and persistence using the Linux filesystem and JSON-based configs
  • Create, configure, and troubleshoot systemd services for application components (start-up, shutdown, restart policies, logging)
  • Work with in-house engineers to diagnose and resolve issues on target hardware (e.g., performance, stability, resource usage)
  • Contribute to build and deployment workflows for Yocto images and application updates

What will make you successful:

  • Strong modern C++ (C++11 or later) application development on Linux targets
  • Hands-on experience with custom Linux distributions built using Yocto or OpenEmbedded (building images, debugging target issues, integrating packages)​
  • Comfortable developing Linux user-space applications that use:
  • Pulseaudio for audio routing and playback/capture on Linux systems​
  • spdlog for structured, high-performance logging in C++​
  • RapidJSON (or similar) for efficient JSON parsing/serialization in C++
  • POSIX/Linux sockets (TCP/UDP, basic networking, and IPC)
  • Linux filesystem APIs (file I/O, directory operations, permissions)
  • Linux service management (systemd units, logging, enabling/disabling services, service supervision)

We may use artificial intelligence (AI) tools to support parts of the hiring process, such as reviewing applications, analyzing resumes, or assessing responses. These tools assist our recruitment team but do not replace human judgment. Final hiring decisions are ultimately made by humans. If you would like more information about how your data is processed, please contact us.

Share this job:
Please let DISHER know you found this job on Remote First Jobs 🙏

Similar Remote Jobs

Find Remote Jobs

Connect with top companies hiring for remote jobs, work-from-home roles, and 100% online jobs worldwide.

Discover Hidden Jobs

Unique jobs you won't find on other job boards.

Advanced Filters

Filter by category, benefits, seniority, and more.

Priority Job Alerts

Get timely alerts for new job openings every day.

Manage Your Job Hunt

Save jobs you like and keep a simple list of your applications.

Apply