streamhpc Stream HPC
Open positions: 8
We’re playfully serious. We handle serious problems, but we’re mostly active gamers.
Our job is simply building extremely fast software using the latest hardware (both GPUs and CPUs) and the most efficient HPC and GPGPU tech (CUDA, HIP, SYCL, OpenCL, MP, MPI). Besides technical skills, this takes good project management, putting most time to problem solving and have extremely good understanding of how code and data stream through the CPUs and GPUs.
For over 10 years we’ve been called on by companies world-wide to solve their HPC- and GPU-problems. We seek people who’d like to strengthen our group of GPU- and HPC-enthusiasts.
As we’re not a university, there needs to be a balance between things you can offer and the things we offer. Like in every job description there is a list of bullet points to explain what we seek. To make it possible to self-asses your fitness for the job, we put the number of points (✪) for each bullet point. Important: these are vectors and not booleans, so you can sum up fractions of points and neither do we expect the perfect candidate to even exist.
You, as a CPU/GPU Developer (20 points)
We seek people with experience. This can be open source projects for first job seekers, or past jobs for those with job experience.
- You are capable of designing mathematical algorithms. ✪
- You know several hardware architecture specification documents. ✪
- You know how compilers work and when they don’t. ✪✪
- You have good experience with C and C++. ✪✪
- You have practical experience with CUDA/HIP. ✪✪✪
- You have practical experience with OpenCL/SYCL. ✪✪✪
- You have experience designing performance-driven architectures. ✪✪
- You know how to write tests. ✪✪✪
- You are experienced with continuous development. ✪✪
- You have experience with low-level optimizations. ✪
As the four stars indicate, we do need minimal GPGPU-experience, as you won’t learn it here.
You, as a Problem Solver (20 points)
Coding is only one part of solution. Most of the time we’re solving problems, where coding is just the means.
- You like the ideas and theories around the “learning mindset”. ✪✪✪
- You have a structured problem solving approach that you could explain. ✪✪✪
- You have high self-awareness and can self-observe. ✪✪✪
- You have high standards for yourself. ✪✪
- You test out approaches by making quick experiments. ✪✪
- You test out possible solutions by mentally putting them in different scenarios. ✪
- You regularly take time to zoom out to get an overview on the problem, to be able to balance the inputs for the solution. ✪✪✪✪
- You always follow through. ✪✪
If you score high here, this will compensate for any lack of technical experience. Also for continuous growth, you’ll need to score high here.
You, as a Project Team Member (20 points)
Our company’s strength is that we work in teams. We don’t know everything as individuals, but as a team we can solve almost any problem around HPC and GPUs. This means we highly value collaboration and thus must be efficient in project handling.
- You have a proven track record of being focused on results. ✪
- You have talent for turning vague problems into the right actions, and you want to build on it. ✪
- You normally write down tasks, and then prioritize & ESTIMATE them. ✪✪✪
- You understand that well-defined, well-communicated delivery criteria are the responsibility of every team member. ✪✪✪
- You can identify something missing to move a project forward smoothly. ✪✪✪
- You speak up when the project diverges from the trajectory. ✪✪
- You are used to administrate your time spent on an issue. ✪
- You can delegate work. ✪✪
- You can get work delegated. ✪✪
- You can explain, with examples, why the above are important. ✪✪
We explicitly did not state “project management”. It is about playing your part of making an efficient team.
Us, as your team and your employer
We are specialists in performance driven software designs, GPUs and high-end CPUs. Our clients come to us when they have a scientific computing problem to solve, build GPU-software or to build complex tools. Our initial effort focuses on understanding their needs, provide clarity on potential solution paths, and work with their experts to deliver the right solution. We then build. Every project is different.
We strive to become better. We are all learners in a broad sense. We like to work with people who like both learning and teaching.
We are still a young company and our engineers have a say in every part of the company to improve it for the long term. This means they commit time to things that are not coding.
We value teamwork. This means having conversations about what is working, what isn’t and what to do about it. It means following up and making things happen. Occasionally it means talking about feelings.
We value openness to new experiences, to people, to feedback and especially to learning. Particularly in areas where doing so is uncomfortable. How comfortable are you dealing with the unknown?
Avoiding boring/simple projects is a company foundation. See https://streamhpc.com/jobs/what-does-it-mean-to-work-at-stream-hpc/
Understanding of business problems (clients and own) Strong in math and hard sciences Working times in EU timezone (CET, UTC+1)
If you respond quickly for every step, you can land a job in 2 weeks.
We try to minimize the time it takes you, while also giving you enough chances to proof yourself. As we sometimes are flooded with applications, we filter out on simple things like “Did not mention CUDA, OpenCL, SYCL, GLSL, HLSL, etc” – be sure you add GPU-experience!
- You send a CV, some public code (preferably C/C++/CUDA/HIP/OpenCL) and your motivational letter/email.
- We do a quick scan of your CV and letter. (In most cases you’ll get feedback within 2 to 5 days)
- For those who are left, you do a simple online test. This is to get a grasp of your way of working and thinking, and to prepare you for the longer test. (25 minutes max)
- You will have a talk (video) with Samantha (30-45 minutes)
- After that you are invited for a longer online test. You show your skills on C/C++ and algorithms. Be warned this includes the ridiculous puzzles, simply because we actually use those ridiculous things (takes 2 – 3 hours)
- You’ll get a technical interview on C++ and GPGPU (2 hours)
- We’ll send you a conditional job-offer, assuming that the rest will be ok
- We now go into the long interview to be absolutely sure we are a fit, and to introduce each other in more detail (takes 3 hours)
- We check your references
Made it till here? The job-offer becomes final and we’ll welcome you in our team!
So what are you waiting for? Apply for this job!
To apply for this job email your details to firstname.lastname@example.org.