Senior Software Developer (C++/HPC) (f/m/d)
at GEMESYS GmbH
44803 Bochum, Nordrhein-Westfalen, Germany -
Start Date | Expiry Date | Salary | Posted On | Experience | Skills | Telecommute | Sponsor Visa |
---|---|---|---|---|---|---|---|
Immediate | 18 Feb, 2025 | Not Specified | 19 Nov, 2024 | N/A | Good communication skills | No | No |
Required Visa Status:
Citizen | GC |
US Citizen | Student Visa |
H1B | CPT |
OPT | H4 Spouse of H1B |
GC Green Card |
Employment Type:
Full Time | Part Time |
Permanent | Independent - 1099 |
Contract – W2 | C2H Independent |
C2H W2 | Contract – Corp 2 Corp |
Contract to Hire – Corp 2 Corp |
Description:
THE OPPORTUNITY
As a Senior Software Developer (C++/HPC) you will be an integral part of the core developer team at GEMESYS, which works on low-level optimization and scalable software for our brain-like chip. We are looking for a skilled Software Developer with extensive experience in C++ and familiarity with Python (advantageous) to join our team.
You will be at the forefront of cutting-edge technology, collaborating with excellent specialists to develop the foundational technology for new AI solutions in various industries such as healthcare, space, energy, and robotics.
Responsibilities:
As a (Senior) Software Developer (C++/HPC), you are responsible for developing, debugging, profiling, optimizing, testing, and documenting low-level software emulating our analog AI chip as a digital twin. Working closely with the Concept and Research team, you will build performance-optimized and scalable software to emulate our hardware chip. This role involves implementing numerical models of physical systems through numerical mathematics and digital signal processing in a high-performance computing (HPC) context. You’ll work on preliminary investigations using a digital twin of our analog chip, designed for AI training and inference on the edge.
- Design, implement, and optimize numerical models of physical systems using C++.
- Apply methods of numerical mathematics and digital signal processing within an HPC environment.
- Use HPC software design methods, e.g. multi-process/multi-node communication.
- Parallelize algorithms using CUDA and multithreading to achieve high computational efficiency.
- Profile and optimize computational workload to utilize available hardware fully
- Write unit tests and/or employ test-driven development.
- Create documentation and visualization of the developed software architecture.
- Create technical reports and present findings to the team and external stakeholders.
- Collaborate closely with cross-functional teams (software and hardware engineers) to implement performance-optimized hardware emulators.
- Support software development for preliminary research and investigations to advance our analog AI chip technology.
- Lead theproject planning and management with an agile approach to ensure adequate progress and adaptation.
- Work as a Dev-Ops engineer (development, testing, integration, and deployment).
- Stay current with industry trends, technologies, and best practices related to software engineering and solutions.
REQUIREMENT SUMMARY
Min:N/AMax:5.0 year(s)
Computer Software/Engineering
IT Software - System Programming
Software Engineering
Graduate
Proficient
1
44803 Bochum, Germany