Principal Software Engineer

Engineering Embedded Systems Engineer

Eden Prairie, MN
120k/year - 145k/year
January 5, 2026
Candidates: 10 Interviewing: 1 Hired: 0
Direct Hire In Person

About the Job

Gentis Solutions is looking for a Principal Software Engineer to join our client's team. Client-specific benefits are available and will be discussed in detail during your interview.

Compensation for this position ranges from 120k/year - 145k/year per year, based on experience. Payment is bi-weekly and is based on all hours worked, without eligibility for overtime.

This position requires the individual to be located in the Eden Prairie, MN area.

POSITION SUMMARY:

Develop and customize Linux board support packages (BSP). This position focuses on bootloaders including U-Boot and the Linux kernel (Yocto and Buildroot based distributions). This is NOT an IT or application development role.

Key Responsibilities: Supervisory Responsibilities:

This role has no direct supervisory responsibilities but does serve as a coach and mentor for other positions in the department

Essential Duties & Responsibilities:

  • Instruct, direct, and check the work of other design engineers
  • Translate product requirements into implementable architectures
  • Design and develop software for 32 and 64-bit processor platforms
  • Design and develop software for bare metal, RTOS, Linux, Android and QNX platforms
  • Design and develop device drivers for USB, Video, Audio, Ethernet, CAN, NAND flash, NOR flash, DDR, SDRAM, HDMI, PCI Express, SPI, I2C, and other devices
  • Experience developing software solutions for wireless technologies such as 802.11, Wi-Fi, Bluetooth, GPS, and cellular technologies
  • Prepare technical data such as design verification test documents, software development plan, software design specifications and software requirements specifications
  • Support electrical engineering/hardware engineering with board bring-up and overall system debugging
  • Experience reading electrical datasheets and schematics
  • Analyze business requirements and document a suitable technical approach for internal projects and proposals
  • Complete assigned engineering projects within budgetary and scheduling guidelines
  • Communicate with engineers and project managers to coordinate and assure project completion; may manage an entire customer project
  • Provides technical leadership and help in improving development process and procedure
  • Actively engage with external technical community through writing or talks to promote Beacon EmbeddedWorks Solutions for business development purposes
  • Lead a multi-discipline development project
  • Mentor other engineers as they work through day-to-day technical challenges

Essential Responsibilities of all employees

  • Support, demonstrate and drive our core values
  • Lead, don't follow
  • Consistently deliver
  • Never stand still
  • Create relationships not transactions
  • Interact positively and professionally with all employees and customers
  • Maintain reliable attendance
  • Perform work safely and adhere to all safety requirements
  • Complete required training as scheduled
  • Perform other duties as assigned

Job Qualifications Required Qualifications:

  • Bachelor of Science in Computer Science, Computer Engineering, Software Engineering or equivalent
  • 12+ years’ experience developing software for embedded processor platforms
  • Experience with embedded systems and microprocessor-based (MPU) design
  • Experience with all aspects of product design including: requirements documentation, system architecture, design for manufacturing, design for test and design verification
  • Experience working in teams including engineers from multiple engineering disciplines
  • Experience with managing teams of engineers in-house and offshore, and working with partners
  • Capable of providing day-to-day technical design leadership and mentorship
  • Ability to analyze customer requirements for feasibility, cost and development timeline
  • Strong communication skills including the ability to write technical specifications and design documentation, create and author templates for engineering documents, create project proposals with technical details, present verbally in one-on-one or group settings
  • Thorough technical knowledge of application software methodologies including OOA/OOD and Design Patterns
  • Understanding of CPU functions such as L1/L2 cache, MMU, power states, bus arbiters & multiplexers, interrupts, and DMA
  • Understanding of coding for embedded peripherals including Ethernet, USB, I2C, CAN, Flash, SPI
  • Experience using Spectrum analyzers, Oscilloscopes, and JTAG debuggers is highly desirable
  • Experience with ARM, PowerPC, MSP430, PIC 32, and x86 processor cores is highly desirable
  • Experience with embedded Linux, Android, and RTOSs at the application, device-driver and board support package level is highly desirable
  • Familiarity with TCP/IP, Internet protocols, Routing protocols and networking is desirable
  • Ability to work in a fast-paced environment with quickly changing priorities to ensure superior customer satisfaction
  • Experience with Agile/Scrum Development