Senior Software Engineer – Signal Processing
We have a superb opportunity for a Senior Software Engineer Signal Processing to join a well-established Cambridge technology company who are growing from strength to strength. You will join an enthusiastic R&D team who are developing cutting edge ultrasonic / ultrasound technology. This is a diverse role which will see you involved in all facets of systems & software development, including hardware integration, signal processing, user interface development and cloud system interfaces.
As a key member of a small, agile software development team, you will be designing, developing and maintaining high quality, production-ready code, predominantly using C++. You will also constructively peer-review the code of other developers and foster team culture and knowledge-sharing.
In addition to a highly competitive salary and benefits package, this exciting fast growing company offer hybrid (remote) working and excellent career development potential with opportunities to develop new skills in addition to enhancing your existing expertise.
Requirements for Senior Software Engineer (Signal Processing)
- 2:1 or higher degree in computer science, electronics engineering, mathematics or physics
- At least 5 years post graduate industry experience
- Strong C++
- Experience developing for Real-Time operating systems (RTOS)
- Signal processing (theory and practice)
- Experience designing hardware-software systems, such as sensors, instrumentation products, embedded systems, audio processing, etc.
- Proven ability to develop software requirements by collaborating with scientific and commercial colleagues
- Knowledge of software design patterns and object-oriented design principle
- Experience handling large scientific data sets beneficial
- Experience with hands-on hardware integration beneficial
- C#, especially with WPF beneficial
- OpenCL beneficial