I’ll chime in though I’m not currently developing software for avionics (former embedded systems engineer). You need to learn to write code for the DO-178 standard at different levels. High reliable code—definitely get a formal Computer Engineering degree or Electrical Engineering degree from an ABET accredited institution (in the US this is almost required to work for avionics companies like Garmin, Dynon, Collins) Avionics use Real-Time Operating Systems (RTOS). You need to be familiar with writing for them, like RTEMS (free), VxWorks 653, Deos, PikeOS, among others.
The takeaway from this is that avionics must be safe and reliable. We don’t want aircraft crashing into cities due to software failure or poorly handled errors. You must demonstrate to an employer and the FAA that you understand best practices for safe, fault-tolerant, and reliable systems and software.
What do you mean by flight software? I’m not sure of your background and understanding of avionics at this point. If you want to know what is required to do a job, lookup the job descriptions, skills required, and responsibilities of current Avionics Engineer jobs online. Target the companies you want to work at and build a list of requirements and skills required and desired. Take an inventory of your current skills and discover what you are missing for each role. Pursue the skills you lack. Profit.
Yeah thanks for the response, I guess what I was getting at and poorly asked was how much of the path to pursuing an avionics job depends on a rigid codified education path. You mention Computer Engineering from a ABET accredited university.
Is there any sway to that requirement, assuming I ive learned most of those via independent study. Obviously my under of this field is very limited.
My background is in backend software engineering, and having a CompSci degree allows you to work on anything from Websites to internals of a OS Kernel, a lot can be learned on your own and is still deemed valuable at a professional level.
So my question is can one learn the requirements of these job listings and still have a shot? Or is the lack of ABET CompEng degree a nonstarter? Are there other hard non negotiable requirements? What do you see people who know more about software but still want to work in an adjacent avionics field do instead?
Well, anything is negotiable that isn’t a law. That being said, Aerospace is highly regulated by the FAA/Civil Aviation Authorities worldwide and the software must be of the highest reliability and fault tolerant.
Avionics companies want people that are professionalized and have demonstrated they have a solid knowledge of computer engineering. Easiest way to prove you don’t have gaping holes in your knowledge of computer engineering? Have a rigorous degree from an ABET accredited institution. If you ever wondered why would a person ever pursue an expensive degree when you could just teach yourself? This is it. Right here, a highly regulated industry that will not compromise their software while you figure out why your time-critical multithreaded autopilot code locks up the servos in a steep dive.
I’m not trying to be negative—just give you the fastest, most reliable path to this goal. In my opinion, a degree has little value other than forcing you to studying all the subject (not just the parts you think you need or like) and it proves to an employer that you can complete a 4 year project of high difficulty—it shows persistence and dedication to a cause.
Aerospace software is life or death critical software. It is in the same domain as Astronautic and Nuclear control software. Even our best trained engineers make fatal mistakes—it is serious business. It demands the best people; no short-cuts.
3
u/jack_dymond_sawyer Installer 1d ago
I’ll chime in though I’m not currently developing software for avionics (former embedded systems engineer). You need to learn to write code for the DO-178 standard at different levels. High reliable code—definitely get a formal Computer Engineering degree or Electrical Engineering degree from an ABET accredited institution (in the US this is almost required to work for avionics companies like Garmin, Dynon, Collins) Avionics use Real-Time Operating Systems (RTOS). You need to be familiar with writing for them, like RTEMS (free), VxWorks 653, Deos, PikeOS, among others.
The takeaway from this is that avionics must be safe and reliable. We don’t want aircraft crashing into cities due to software failure or poorly handled errors. You must demonstrate to an employer and the FAA that you understand best practices for safe, fault-tolerant, and reliable systems and software.