DeveloperJobs.io
← Back to all jobs

Job Description

Nokomis, Inc. is seeking a Senior or Mid-Level C++ Software Developer to build and support software for Linux-based embedded platforms. The role focuses on embedded Linux application development, integration with custom hardware and sensors, and involvement across design, reviews, integration, testing, and field support.

Role Overview

You will design, develop, and maintain C++ and C software running on embedded Linux systems. Work includes multithreaded and networked development, performance-sensitive implementation, and troubleshooting across Linux, networking, and hardware integration. You will also maintain build and development workflows using CMake and Git.

Responsibilities

  • Design, develop, test, and maintain C++ and C software for embedded Linux systems.
  • Develop multithreaded, networked, and performance-sensitive applications.
  • Integrate software with custom hardware, sensors, and external systems.
  • Participate in design reviews, code reviews, integration, testing, and field support.
  • Troubleshoot issues across software, Linux, networking, and hardware integration.
  • Maintain CMake-based builds and a Git-based development workflow.
  • Own assigned work and drive it through completion.

Required Qualifications

  • 3+ years of hands-on professional C++ software development, with C++ as a primary development language.
  • Linux software development and debugging experience.
  • Practical experience developing and/or maintaining software in C.
  • Strong understanding of software design, concurrency, data structures, and algorithms.
  • Experience with Git-based development workflows and CMake.
  • Ability to work effectively in a fast-moving, multidisciplinary environment.
  • Degree in computer science or a related field is preferred; equivalent experience will be considered.
  • Ability to work fully on-site.

Preferred Technologies and Technical Exposure

  • C++17 or newer
  • Embedded Linux and cross-compilation
  • ARM, FPGA, or system-on-chip platforms
  • FFT and digital signal processing or real-time data processing
  • Lightweight messaging and networking such as MQTT, ZeroMQ, NATS, TCP, or UDP
  • C# application development
  • GoogleTest, static analysis, profiling, CI/CD, Bash, or Python
  • Machine-learning inference or integration
  • Hardware interfaces, device communications, or sensor systems
  • Active or prior U.S. government security clearance is a plus

Experience Level Expectations

  • Senior: Independently design and deliver complex software, lead debugging and integration efforts, make sound technical tradeoffs, and mentor other developers.
  • Mid-Level: Independently implement and test defined features, contribute to design decisions, and take ownership of assigned work with appropriate technical guidance.

Location and Employment

  • Location: Canonsburg, PA (onsite)
  • Work location: In person
  • Job type: Full-time

Compensation and Benefits

  • 401(k)
  • 401(k) matching
  • Dental insurance
  • Health insurance
  • Paid time off
  • Relocation assistance
  • Bonus opportunities

Export Control Compliance

This position must meet export control compliance requirements. To meet export control compliance requirements, a “U.S. Person” as defined by 22 C.F.R. §120.15 is required. “U.S. Person” includes U.S. Citizen, lawful permanent resident, refugee, or asylee.

Application Question

Are you a US citizen?

Similar Jobs