this post was submitted on 06 Oct 2023
21 points (95.7% liked)
Experienced Devs
3980 readers
1 users here now
A community for discussion amongst professional software developers.
Posts should be relevant to those well into their careers.
For those looking to break into the industry, are hustling for their first job, or have just started their career and are looking for advice, check out:
- Logo base by Delapouite under CC BY 3.0 with modifications to add a gradient
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
If you described what a "systems engineer" did that'd be a big help.
Systems engineering is an established discipline, one you can get a degree in. It’s not just a random term I’m making up. https://en.m.wikipedia.org/wiki/Systems_engineering
No one said it’s made up, just that we don’t know what it is because it’s a term for big (and maybe hardware-oriented) industries. Most devs will never touch this in their lives.
From your link, it seems that the "software architect" is the closest equivalent. He must have a broad knowledge in a bit of everything from the code to talking with clients in order to make good decisions for everyone, and make sure that a good path is followed by everyone.
Last but not least, this book seems interesting and gives an overview of what I said: https://www.amazon.com/Fundamentals-Software-Architecture-Comprehensive-Characteristics/dp/1492043451
Software Architect.
Yes, most companies don't have them nor know about them. It's a pity, but software engineering isn't understood nor recognised by managers. Most still have the mindset that software engineers and programmers are the same thing because they sit behind a computer all day. I imagine that in their minds it's the equivalent of dicking around all day like a gamer does. It's ignorance.
"it can't be that hard, just tell the computer what to do"
People who don't understand coding think it's a bunch of mumbo jumbo made to sound difficult. They still think in the physical realm. Multiply engineers and it goes X times more quickly! If I wanted a building finished, all I need is manpower.
Of course they also don't value the profession. They think managing people is much more difficult than writing code. I've heard this over and over for years. "You don't understand how difficult it is to manage people". I think "You don't understand how difficult it is to write good software". Since they think it's easy and in some virtual, magical realm, that one person should be able to do many things. They don't understand the value of QA, architects, developers, devops, sysadmins, etc.
Probably my quotes implied sarcasm, what i should have said is there are so many hats that a "software developer" or "software engineer" is really really broad like by the wikipedia definition at my current company we typically call those "principal engineers", or "principal architect"; i've also seen them called staff software engineers.
Likely it's super domain dependent; the failure cost with a satellite's or hardware cost you the business. Where with a website the MTTR can be very small. So a large oversight isn't quite as needed, as the cost is so small.
I'm thinking more of design than oversight. In my experience building a large, complex system without seriously considering the system design (in the way that a systems engineer would) leads to many "oops" moments that will eat into the schedule.