JOBSEARCHER

Senior Software Engineer

AlgoworksNiles, ILL6 LeadSeptember 4th, 2026
As a Senior Embedded Software Development Engineer, you will work in the Product Development Division designing, implementing, testing, and integrating real-time software for Shure’s products with a focus on the Linux platform. This role will work on architecture and design work as well as interacting with other engineering disciplines within Shure.This role will be hybrid-based out of our Niles, IL office. ResponsibilitiesDesign, develop and test embedded software and associated components that are part of a software and hardware system for audio products.Development will emphasize Linux platforms and can include leveraging Yocto toolsuite, hardware drivers, embedded software applications, audio and control networking and other networking protocols and related areas using C++ and C as the primary programming languages.Work as part of a cross-functional development team on product architecture as well as the software design implementation cutting edge audio products and technologiesEstimate, organize, and document tasksPractice established software development methodologies and principles focusing on software architecture and design.Model designs using UML or similar methodologies as appropriate; develop use cases to model real-time systems behaviorReview the design and code developed by peer engineers. Engage in unit, integration and testing of software components and systems.Other duties as assignedQualificationsBS degree in Computer Science, Electrical Engineering or Computer Electrical Engineering; MS a plus5 or more years of requisite experienceSpecific experience with embedded Linux, HW/SW platforming desired, along with YoctoDemonstrated skills in C++ and/or C with object oriented design, analysis and programming.Experience using and designing software with networking protocols - Ethernet, IP, TCP/UDP as well as exposure to network security and protocols a plus.Understanding of operating system concepts, embedded software development environment and tools for real-time embedded operating systems.Experience with embedded system architectures, development environments and debugging.Hardware Driver development and hardware debugging exposure a plusExperience with software version control and releaseDemonstrated attention to detail and ability to analyze complex interdependent variablesDemonstrated verbal and written communication skillsAbility to work effectively within a team environmentQuality consciousness