Embedded Software Engineer

Puck Enterprises

$70K — $95K *
Telecommunications & Hardware
Less than 5 years of experience
Job Overview by Ladders

Qualifications

  • Bachelor's degree in Computer Science, Software Engineering, Electrical Engineering, or related field or equivalent experience.
  • 3-5 years of experience in software engineering for embedded or industrial systems.
  • Strong proficiency in C++ and understanding of object-oriented design, memory management, and performance.
  • Hands-on experience with Qt for application development.
  • Experience in Structured Text Language for automation/control-related applications.
  • Knowledge of embedded Linux development and system-level debugging.
  • Experience with source control, automated testing, and software development lifecycle.

Responsibilities

  • Design and implement embedded software components using C++ in Linux.
  • Develop user interfaces with Qt for industrial HMI applications.
  • Create and support control logic using Structured Text for automation systems.
  • Contribute to software architecture with emphasis on performance and reliability.
  • Integrate software with hardware and communication interfaces as needed.
  • Write clean, production-ready code and participate in code reviews.
  • Troubleshoot and resolve software integration defects across systems.

Benefits

  • Medical insurance with multiple plan options and low employee premiums.
  • Free virtual doctor visits covered at 100%.
  • Dental and vision insurance included.
  • Health Savings Account (HSA) and Flexible Spending Accounts (FSA) options available.
  • Company-paid basic life insurance and optional supplemental life insurance.
  • 401(k) retirement plan with varying contribution options.
  • Employee Assistance Program (EAP) for personal support.
Full Job Description
Embedded Software Engineer

Location: Worthing, SD Department: Engineering Employment Type: Full-Time Schedule: Monday - Friday, 8:00 AM - 5:00 PM

What You'll Do

As an Embedded Software Engineer, you will design, develop, and support embedded software solutions using C++, Qt, and Structured Text Language (ST) in an embedded Linux environment. You will independently deliver reliable, production-ready software for connected industrial, vehicle, or machine-control systems and own features through development, testing, integration, and support.

Your day-to-day responsibilities will include:
  • Designing, implementing, testing, and maintaining embedded software components and applications using C++ in an embedded Linux environment
  • Developing and enhancing user interfaces and application frameworks using Qt for device-based or industrial HMI solutions
  • Creating, modifying, and supporting control logic using Structured Text for PLC or automation-related system functionality
  • Contributing to software architecture and technical design decisions with attention to performance, reliability, maintainability, and hardware integration
  • Integrating software with embedded hardware, communication interfaces, peripherals, and industrial protocols as required by the system design
  • Writing clean, well-tested production code and participating actively in peer code reviews and engineering best practices
  • Troubleshooting and resolving defects across software, device, and system integration layers, including field or lab debugging when needed
  • Supporting build systems, deployment processes, and software version control practices to improve release quality and consistency
  • Documenting technical designs, interface behavior, implementation details, and troubleshooting procedures for embedded systems
  • Collaborating with cross-functional teams including product, program, QA, and peer engineering teams to deliver integrated embedded software solutions


What We're Looking For

Competencies:
  • Technical Capacity
  • Problem Solving/Analysis
  • Communication Proficiency
  • Collaboration/Teamwork
  • Time Management
  • Initiative


Required Education & Experience:
  • Bachelor's degree in Computer Science, Software Engineering, Electrical Engineering, or a related technical field - or equivalent practical experience
  • 3-5 years of professional software engineering experience developing production software for embedded or industrial systems
  • Strong proficiency in C++ with solid understanding of object-oriented design, memory management, and performance considerations
  • Hands-on experience developing applications or interfaces using Qt
  • Experience programming in Structured Text Language for automation, control, or PLC-related applications
  • Working knowledge of embedded Linux development, including system-level debugging, process management, and interaction with hardware interfaces
  • Experience with source control, automated testing, build systems, and standard software development lifecycle practices
  • Experience using AI-assisted development tools to improve software design, coding efficiency, testing, and debugging while maintaining code quality and sound technical judgment
  • Strong debugging and problem-solving skills across software, device, and system integration environments
  • Ability to work independently on defined technical problems while collaborating effectively within a multidisciplinary engineering team
  • Clear written and verbal communication skills


Preferred Education & Experience:
  • Experience with multithreaded application development, inter-process communication, and performance optimization in Linux-based systems
  • Practical experience with industrial or vehicle communication protocols including J1939 and CANBus or Ethernet, with strong understanding of message-based system integration and diagnostics
  • Familiarity with cross-compilation toolchains, Yocto, Buildroot, or similar embedded Linux build environments
  • Understanding of real-time or near-real-time software behavior and system resource constraints
  • Experience with hardware bring-up, board support packages, or low-level debugging tools
  • Experience building UI or application components with Qt in embedded or industrial device environments
  • Experience with automated test frameworks, scripting, or simulation tools for embedded software validation
  • Experience mentoring junior engineers or supporting cross-functional knowledge sharing
  • Familiarity with secure software development practices for connected embedded devices
  • Familiarity with regulated, industrial, automotive, agricultural, or heavy equipment environments


Physical Requirements

This is primarily a sedentary role in a professional office environment. Team members must be able to:
  • Sit for extended periods and work on a computer throughout the day
  • Occasionally stand, walk, and use hands and fingers to handle or feel objects and reach with hands and arms
  • Occasionally lift office products and supplies up to 20 lbs.


Work Environment

This role operates in a professional office environment and routinely uses standard office equipment such as computers, phones, photocopiers, and filing cabinets.

Travel

Travel is primarily local during the business day, although some out-of-area and overnight travel may be expected.

Relocation

At this time, relocation assistance is not available for this position. We encourage candidates within a commutable distance of Worthing, SD or those willing to relocate independently to apply.

What Puck Offers You

We believe our team members deserve a benefits package as strong as the products we build. Full-time team members are eligible for benefits beginning the first of the month following 60 days of employment.

Health & Wellness
  • Medical insurance through Wellmark Blue Cross Blue Shield - choice of $2,000 PPO or High Deductible Health Plan (HDHP)
  • Employee-only medical premium starting at $120/month
  • Free Doctor on Demand virtual visits (covered at 100% on both plans)
  • Dental insurance through Delta Dental of Iowa
  • Vision insurance through Delta Vision
  • Health Savings Account (HSA) - eligible with HDHP enrollment
  • Flexible Spending Accounts (FSA) - Health Care, Limited Purpose, and Dependent Care options


Financial Protection
  • Company-paid Basic Life & AD&D Insurance (1x annual earnings up to $50,000)
  • Voluntary Supplemental Life Insurance for employee, spouse, and dependents
  • Voluntary Short-Term Disability - replaces up to 60% of income (up to $1,500/week)
  • Voluntary Long-Term Disability - replaces up to 60% of income (up to $7,500/month)
  • Voluntary Accident, Critical Illness, and Hospital Indemnity Insurance through Mutual of Omaha
  • 401(k) retirement plan


Support & Well-Being
  • Employee Assistance Program (EAP) through Mutual of Omaha - free, confidential support for emotional, legal, financial, and personal well-being available 24/7/365


Ready to Join the Team?

Apply today at www.puck.com/careers or contact our HR team:



Puck | Built to Lead.

Similar Jobs

More Jobs at Puck Enterprises

More Telecommunications & Hardware Jobs

Find similar Embedded Software Engineer jobs: