Roles and Responsibilities
- Coding of algorithms and reconstruction tools in C++/ OpenCL parallel environments.
- Architecture and design of complex software subsystems.
- Work with algorithms engineers and scientists to understand mathematical and physical algorithms, and design optimal solutions to implement the algorithms.
- Work with other software teams to define interfaces between the Reconstruction environment and other software subsystems.
- Optimize reconstruction engines to meet performance run-time requirements and usage of memory resources.
- Write software requirements and design documents.
- Design and execute software unit-tests.
- Define and support Engineering Quality team in design and execution of system testing plans.
- Support field investigations – upon need.
- Data and configuration management and control of generated code.
- Initiate and conduct technical reviews of work done.
- Get to know trends and new technologies in the computing and software industry.
Required Qualifications
- B.A/B.Sc./M.Sc. in computer sciences/computer engineering/software engineering from a known academic institution.
- 2+ years of hands-on experience in C/C++.
- Excellent C/C++ programming, including debugging, performance analysis, and testing.
- Experience in software architecture and design.
- Ability to creatively solve complex problems
- Strong oral and written communication skills to work effectively with other team members.
Desired Characteristics
- + years of algorithms implementation hands-on experience.
- Experience in parallel programming multi-core CPU / GPU.
- Experience in OpenCL/CUDA.
- Knowledge in MATLAB.
- Knowledge in image processing.
- Strong performance optimization skills.
Our total rewards are designed to unlock your ambition by giving you the boost and flexibility you need to turn your ideas into world-changing realities. Our salary and benefits are everything you’d expect from an organization with global strength and scale, and you’ll be surrounded by career opportunities in a culture that fosters care, collaboration and support.