Position Summary
Nokomis, Inc. is seeking an experienced C++ Software Developer to build and support software for Linux-based embedded platforms.
This role requires strong technical fundamentals, adaptability, and a commitment to getting important work completed. The developer will work with software, hardware, signal-processing, and systems engineers in a dynamic environment where priorities may evolve during development, integration, and testing.
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 software, Linux, networking, and hardware-integration issues.
- Maintain CMake-based builds and Git-based development workflows.
- Take ownership of assigned work and drive it through completion.
Required Qualifications
- 3+ years of hands-on professional C++ software development, with C++ used as a primary development language.
- Linux software development and debugging experience.
- Practical experience developing 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.
- A degree in computer science or a related field is preferred, but equivalent experience will be considered.
- Ability to work fully on-site.
Desired Experience
- C++17 or newer.
- Embedded Linux and cross-compilation.
- ARM, FPGA, or system-on-chip platforms.
- FFTs, digital signal processing, or real-time data processing.
- Lightweight messaging 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.
- An active or prior U.S. government security clearance is a plus.
Level Expectations
Senior candidates should be able to independently design and deliver complex software, lead debugging and integration efforts, make sound technical tradeoffs, and mentor other developers.
Mid-Level candidates should be able to independently implement and test defined features, contribute to design decisions, and take ownership of assigned work with appropriate technical guidance.
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.
Job Type: Full-time
Benefits:
- 401(k)
- 401(k) matching
- Dental insurance
- Health insurance
- Paid time off
- Relocation assistance
Compensation Package:
Application Question(s):
- 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. Are you a US citizen?
Work Location: In person