At Cirrus Logic, mixed-signal engineering drives our company. We develop high-performance, low-power signal processing solutions in audio, voice and haptics, delivering innovative end-user experiences and solving difficult challenges for new generations of mobile and consumer devices. While breaking the innovation barrier, we’ve also built an award-winning company culture, thanks to our extraordinary workforce and our ongoing efforts to champion and promote diversity, as well as our principles of equality and fairness in the workplace. Do you enjoy working alongside the industry's top engineers and solving sophisticated challenges for the world's top consumer brands? Join our team and help us continue to make this an exceptional place to work!
We are looking for an experienced Senior Software Engineer - Tools to join our team, to work alongside our applications, firmware and algorithm development engineers to build our products. You have a proven track record in software development and familiarity with consumer electronics and embedded systems to gain a deep understanding of each product, apply your development skills to author rich, graphical configuration, tuning and command-line tools our customers need to integrate those products into their devices. Do you have any experience with embedded systems, and are highly proficient in OOP languages such as Java, C# or C++? If yes, apply!
- Lead development of critical desktop tools software projects that enable graphical configuration and tuning of Cirrus Integrated Circuits.
- Work cross functionally with team members to build customer-facing tools used by customer-facing Engineers.
- Collaborate closely with the development team for stand-ups, requirement gathering and estimates, and project planning.
- Break project requirements down into stories and tasks, along with work estimates
- Contribute to the continuous improvement of your team’s development processes, with a focus on quality, scalability and performance.
Required Skills and Qualifications
- A degree in Computer Science or equivalent experience in a related area
- 5 years of object-oriented software development experience on enterprise level software
- Working experience with development and testing of embedded systems
- A track record of non-trivial application development for the desktop or for mobile devices
- Strong grasp of multi-threaded systems, multi-process systems, IPC
- Expert in Java, C#, C++ or similar statically-typed system language
- Familiarity in Python, Ruby or similar scripting language
- Interest in digital signal processing, microcontrollers
- Eagerness to work iteratively and collaboratively
- Strong written and verbal communication skills
- Ability to work well with users, both internal and external to the company
Preferred Skills and Qualifications
- JavaFX, Swing, XAML/.NET, Qt or similar high-level UI frameworks
- Strong interest in electronics, embedded systems
- Build system creation
- Build and test automation
- Continuous Integration
- Gradle or Maven