Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Multiple years is a lot of opportunity cost, and while it is probably tough to get a sci programming aerospace job without at least a CS degree, (a) you might not manage to land a job in such a narrow specialty, and (b) even if you do, you might not earn back the lost wage, especially because you'll be sort of tacitly acknowledging an EXP "reset" and starting from a lower salary rank.

These are obstacles you can overcome if you have a lot of career and negotiation savvy. But the Venn diagram of programmers with that kind of savvy is not encouraging, so you may want to do some personal reflection before investing.

The good news is that if you want to get away from piecework web grunt stuff, you don't need a degree (or even any formal education) to do that. If you apply yourself as seriously as you'd have to in school to practicing serious development, on personal projects, in specialized areas that are interesting to you, have some job market applicability, and involve more hardcore programming, you should be able to get yourself to a place where you can start interviewing for serious dev jobs.



Most CFD guys have aerospace engineering/physics backgrounds, not CS. Trust me, the coding is the EASIEST part of the field. It's almost an afterthought. CFD development, at the level where you are contributing novel work, is applied math. Nothing more, nothing less.

OP, your aspiration is possible but difficult. CFD is a rarefied field of heads-down, highly quantitative minds. If you were outstanding at math in HS then I say go for it. Going back to undergrad isn't a bad idea. You'd be a non-traditional student, but I knew a few of those when I was in undergrad who did well. You should be pretty comfortable in math through vector calculus and linear algebra; if you're really struggling, you might want to reconsider paths. You have to be ready for 3-4 years of hardcore aerospace engineering and math courses, which could be a tough transition. Good luck.


Fluid dynamics is only a part of an aerospace degree, I'm not sure studying materials science, control systems, or air traffic rules would help much in writing a CFD program. A couple of courses in fluid dynamics, one in thermodynamics, and a course like this would get you started: http://www.nptelvideos.in/2012/11/foundation-of-scientific-c...

Engineering Mathematics I and II (Stroud) are really nice self-study books.


Going into HPC for the aerospace industry is more of a dream job, end game goal than something I'd get into quickly. But generally speaking I'm tired of doing small-scale work and want to become trained and knowledgeable in programming for large-scale systems where performance optimization is crucial. Whatever that entails. I've read short experiences of BS students getting internships at NVidia and that stuff inspires me.

Starting from a entry level salary rank is also actually a non-issue for me. My jobs pay little (I guess it correlates with low-quality experience). An entry-level job at a reputable tech company will probably pay more than most companies have paid me in my entire career. I'm talking $20-$25/hr 1099 contract jobs here. In between I have no work, so it ends up like living paycheck to paycheck.

The main thing that has driven me towards considering the education option is that students get viewed in a different frame of mind by companies. Companies evaluate students and new grads by their potential.

People whose skills have gotten stale or incompatible need training, but training is almost exclusively given to new grads. So that's another plus for returning to school. Right now I have temporary "project burnout" to push on to doing a new project, and think a change of personal experience would be beneficial to me.


Why do you want to be in the aerospace industry?

It is a very long, and risky path to get there. Do you just want more challenging work? Do you want to do more math and less coding? You can more easily accomplish these goals.

And in terms of opportunity cost remember just cause you made $20-25 the last few years doesn't mean you will make that much over the next 4 years you would be going to school. And if you are willing to work hard you could be making six figures in two years by staying in web or moving to mobile.

Also your ideas of training in the software world are way off base. I don't know any devs who are any good from training.

For instance I did well getting a CS degree from a reputable state school, all my project and test scores were in the 90s.(UT Austin) But I didn't know how to program my way out of a paper bag. I learned this the hard way, failing spectacularly at my first internship. So I spent the next year working as hard as I could at learning how to develop. It was all self-training and it made a world of difference.

You'll find that all the best devs are voracious auto-didacts. 95% of all learning that happens in software is reading websites, books, and trial and error, not being sat down and trained how to do something. And the 5% who rely on training are usually pretty shitty devs, because you can't grow very quickly as a dev relying on other people to train you. The spoon fed training usually isn't that good, or complete. To be honest I don't know any devs who could even be generously called mediocre who relied on training/teaching to be good.


Space science is something that greatly interests me and I'd like to get employed in aerospace contributing to space exploration. HFT for fluid simulations is just one example, but there are several other ways I'm open to getting into. Other examples include providing support for processing telemetry data, or embedded programming for the on-board hardware in launch systems.

If I will return to school, I will try to get into a good internship each summer. Many internships already pay higher hourly wages than the $20-25 I have been getting paid.

I am very self-taught myself, but as you can see it hasn't led me to a good career. Being the lone developer is actually a bad thing in the long run, and I learned the hard way that if you're the smartest person in the team, you should move up to a different team or a different company. I learn better by working with someone that can kick my ass at software development most of the time. I don't even know how to write unit tests!

But I'm also talking about the training done at big companies like Google. I expect their sort of infrastructure and resources to be top of the line.


This is good advice.

A lot of those scientific programmers have at least a MS in amath or an engineering discipline. PhDs are extremely common for the people writing adaptive meshers for fluids. Plus they are pretty good programmers.

Experience building websites and an undergrad CS degree does not get you that job. In fact, an undergrad CS is (imo) a waste of time. From CS, all you need is programming skills / data structures. You need a graduate level understanding of PDEs and linear algebra to do most fluid work.


That shows how much I need to go back to school to understand the different disciplines in the field, as I didn't know most sci-tech programming is reserved for PhD's.

But what if, while you are going for your undergrad CS degree, you get internships from places doing heavy computing? I've read several accounts of undergrad students getting internships at JPL/NASA and NVidia, so it should be possible at least to get interest from these places.


I agree with other commenters that if you want to do aerospace CFD, I wouldn't start with CS (if you want to build compilers, sure).

This conversation makes me think of physics, which I'd consider the liberal arts of scientific degrees.

https://xkcd.com/793/

Perhaps the graduates are annoying, but I think there is an assumption that if you can do physics you can succeed in other areas (which may not be assumed in reverse).

Either way, much of the value of a degree is signaling and there are other ways to signal competence, e.g. open source projects (might be less expensive but harder).


Opportunity cost of time is a big one. I personally think it's very dumb that 99% of the time, you must be currently enrolled in college in order to get an internship. On the other hand, I feel like some people do need it despite their experience. There is no age limit to enroll in college, and there is always a ton of stuff that you do not know. There are lots of older people that are dragging their feet, who still need personal mentoring or job training.

Things that you need to master at many job interviews are most fresh in the minds of a recent graduate. Now this is just from reading anecdotes, but people have received more responses from big tech co's as a new graduate than they have after being in several years in the field.




Consider applying for YC's Winter 2027 batch! Applications are open till November 2.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: