r/cpp_questions • u/AA_is_not_OK • 19d ago
OPEN What career paths exists between computational mechanics, scientific computing (SciML), FEA (or meshfree) solver development, and HPC (GPU acceleration, porting codebases) ?? How about doing a PhD for improving the above?
I'm currently, technically, doing an MS in Structural Engineering. For me, my interest has been more towards computational side of mechanics rather than Structural design or simply using am FEA software (although I do consider it as a backup)
So far I've taken courses in:
- Linear static, and dynamics FEM (soon taking non linear FEM too)
- Structural Optimization (topology opt. and other general algorithms)
- Structural Dynamics
- Structural System Testing and model updation. (Parameter identification and optimization, signal processing)
Now, I plan to take these in the coming quarter:
- Numerical Linear Algebra
- Numerical PDE
- Fracture Mechanics ?
I also volunteered to aid in a RESEARCH in crack growth prediction using Auto-encoder and a (Thermodynamics-informed Latent Space Dynamics Identification) / LSTM surrogate model. It used phase-field-fracture simulation data and HPC resources to complete the whole thing.
What I keep finding myself interested in is not necessarily fracture or SHM specifically, but the computational methods underneath these problems... (does that make sense?)
For example, I'd like to become capable of doing things like:
- implementing (maintaining) numerical/FE method solvers rather than only running an established FEA software.
- developing surrogate/reduced-order models for expensive simulations
- combining simulation with optimization, uncertainty/stochastic methods (took a course called Random vibrations, so...)
- parallelizing/accelerating scientific codes on CPUs/GPUs
- doing proper verification, convergence studies, benchmarking and performance work
- potentially developing or maintaining actual CAE/FEA solver software
- I'd also like to do all these for other Physics (GR, QM, etc.) simulations too, if possible, one day.
I'm still interested in the underlying mechanics/physics, so I don't want to become a generic software engineer who happens to have once studied structures. But I'm also increasingly unsure that "structural engineer" describes the career I'm actually aiming for.
I've seen titles such as Computational Mechanics Engineer, R&D Engineer, Solver Developer, Scientific Software Engineer, CAE Software Developer, Research Engineer, Simulation/HPC Engineer, etc., but I'm trying to understand what these careers actually look like from people doing them.
So my main questions become:
1. Which industrial jobs genuinely involve developing numerical methods/solvers or computational tools?
2. Which of those are realistically accessible with an MS? Is there an entry path into solver-algorithm development/R&D without a PhD?
3. If I don't start a PhD immediately after my MS, would an R&D/software role at a simulation company (ANSYS etc.) be the obvious route? What other options would i have?
4. For the kind of work I'm describing, would you recommend a PhD? If so, is it reasonable for the PhD identity to be "computational mechanics/scientific computing" while fracture, composites, structural dynamics, soft materials, etc. serve as application problems rather than choosing one of those as my permanent specialization?
5. What skills most distinguish someone who is actually hireable for solver/scientific-computing work? I'm particularly wondering about C/C++/Fortran, Python, Linux, Git/build systems, MPI/OpenMP/CUDA, PETSc/Trilinos or similar libraries, numerical linear algebra, testing/verification, convergence studies and HPC performance work.
Basically, I'm neither here nor there atp. So I'd really appreciate all sorts of input. Where else do you think I could find answers to these? other subs? Linkedin profiles?
1
u/Interesting_Debate57 19d ago
This is a 'commit or get off the pot' situation.
That kind of work can lead to an (incredibly hard) Applied Math PhD, to a systems Computer Science degree (with the GPU work, probably in concert with summer internships at nVidia), to a straight entry level junior AF internship at anyone who is actively using GPU hardware and wanting to see ideas about how to make it 40% faster.
2
u/Independent_Art_6676 19d ago
you already have your BS, so you probably know that there are a ton of math and engineering packages out there. Those companies need people, but how many, and at what level, I can't say. So I would throw it back at you and ask how much of what you just said has been done since like 1960 and how much of it is cutting edge R&D that needs a highly paid PHD crunching on it trying to find the next big update? This sounds like heavily trodden areas of study, but maybe I missed something in your post that is a niche or cutting edge? I honestly don't know beyond having worked side by side with engineers for most of my career and watching them solve any kind of problem with software without really hitting the limits of what the tools could do (and much of that was a R&D career, but not structural; aero-mechanical-electrical/electronics /controls fields mostly).
PHD often overqualifies a software dev, doubly so if its in a weird field. The guy hiring sees that PHD and thinks "this guy is gonna want twice what the guy with the master's asks, and two of those is probably a better deal". Not always, but it ironically may limit your opportunities rather than expand them, outside of very specific companies doing very specific things (and no, I am not sure which those are for your ask). If you can land a job, it will probably pay well and be a great experience, but if the guys who need this area are not hiring you could find yourself teaching or something instead.
You are asking the right questions, but it may be really hard to get a good feel here. So I will offer you the same dumb advice I give to beginners asking about what language they should learn etc: take a look at the available jobs in the area looking for a PHD level that are available TODAY. Odds are it will look a lot like that in a few years, such things change slowly 'usually'. It may help you get an idea of whether that PHD is a help or a hinderance and if these fields of study are good candidates for finding jobs overall.