3 ms·
This is very helpful thank you. I tried looking at a few job pages on those links but can't seem find any open SWE positions. Couple of follow up questions: 1.
by jvans 3y ago
This is very helpful thank you. I tried looking at a few job pages on those links but can't seem find any open SWE positions. Couple of follow up questions:
1. What am I looking for in a job description that would indicate i'd be working on CFD simulations?
2. What would make me a compelling applicant? This seems very different than the distributed systems/recommendation system work that I have a lot of experience in.
Thanks again!
- atrettel 3y ago1. You should look look for jobs that mention terms like computational fluid dynamics (CFD), finite volume methods (FVM), and other numerical methods. It's difficult in a short post to list everything, but terms like large eddy simulation (LES), Reynolds-averaged Navier-Stokes (RANS), structured grids, unstructured grids, etc. would be helpful. The numerical methods used are quite vast and depend highly on the particular application. 2. A background in distributed systems is actually very good for this field, but high-performance computing (HPC) is a bit different than other kinds of distributed computing, largely because if a node fails or communication breaks down in some way, it is easier to just kill the job. There's no need to make it fail gracefully. Some of your distributed computing knowledge will be extremely valuable but other parts will never come up. I suggest taking some time and getting familiar with Message Passing Interface (MPI). It is the standard used for distributed memory programming in HPC applications. Almost all of these programs use MPI at least in part. There are several good tutorials online. I recommend [1]. A strong background in MPI is invaluable in a lot of these codes, especially if you can master non-blocking communication. Learning Fortran may help with some projects and be useless for others. It might be worth the time to at least learn some so that the terminology is not foreign. I'd also add that many of these jobs are difficult to get even if you have a PhD in the field. Many projects only hire when there is a real need for a new person (or when somebody retires, etc.). Timing the market is an unfortunately reality here. Good luck! [1] https://mpitutorial.com/tutorials/ https://mpitutorial.com/tutorials/
- araes 3y agoThank you for the additional info @atrettel. Quite accurate in terms of what I remember of the field. On the NASA perspective, mostly use Linux qsub with MPI. An example of such is: https://www.nas.nasa.gov/hecc/support/kb/running-multiple-small-rank-mpi-jobs-with-gnu-parallel-and-pbs-job-arrays_545.html https://www.nas.nasa.gov/hecc/support/kb/running-multiple-sm...
- atrettel 3y agoI hate making two posts, but I remembered there is also an CFD industry job board that you may find useful: https://www.cfd-online.com/Jobs/ https://www.cfd-online.com/Jobs/ Many of the positions unfortunately are for grad students and postdocs, but there are a lot of CFD software developer positions posted here. It is a good place to check periodically to see what is available. Good luck!
- jvans 3y agoboth posts are very much appreciated, thank you
- araes 3y agoGlad you found the original post helpful, and thank you to @atrettel for the additional posts, the job board was especially helpful. Sorry for the delay in replay, as HN has no "waiting replies" notification, so I only noticed based on number change. From looking over the jobs @atrettel linked to. One other point, is there are actually a lot of different fields other than the "norm". There tends to be a stereotype that its all rockets, airplanes, and cars, yet there's a bunch of others. Healthcare CFD (Worcester Polytechnic Institute, Ohio State University), Food CFD (University of Michigan-Dearborn), Ocean CFD (Louisiana State University), Plasma CFD (University of Texas at Austin), Civil CFD (UC Berkeley), Petroleum CFD (Pennsylvania State University), Environmental/Pollution CFD (New Jersey Institute of Technology), Weather/Hurricane CFD (Florida International University), Mining/USGS CFD (Colorado School of Mines), CUDA/GPU CFD (Altech LLC), and a bunch of others. So being from a certain background should not be a worry. There's a lot of industries to lateral in from. The only issue is the limited job pool. However, I started at NASA simply writing software (Perl, FORTRAN, Linux), with a background and knowledge of CFD. Also, there are definitely jobs (12/24/2023): Glassdoor, 780: https://www.glassdoor.com/Job/united-states-cfd-engineer-jobs-SRCH_IL.0,13_IN1_KO14,26.htm?sc.keyword=cfd%2520engineer&locId=1&locT=N https://www.glassdoor.com/Job/united-states-cfd-engineer-job... LinkedIn, 50000: https://www.linkedin.com/jobs/computational-fluid-dynamics-jobs/?currentJobId=3793098020 https://www.linkedin.com/jobs/computational-fluid-dynamics-j... Indeed, 800: https://www.indeed.com/q-Computational-Fluid-Dynamics-jobs.html?vjk=9dc2140fe07fcf87 https://www.indeed.com/q-Computational-Fluid-Dynamics-jobs.h...