6 ms·
> ... nobody in the field of "Software Engineering" is actually an Engineer if we go by a strict definitions. This is a pet peeve of mine, so while I understan
by keeda 6mo ago
> ... nobody in the field of "Software Engineering" is actually an Engineer if we go by a strict definitions.
This is a pet peeve of mine, so while I understand what you mean, I will challenge you to come up with a strict definition that excludes software engineering!
And since I've had this discussion before, I'll pre-emptively hazard a guess that the argument boils down to "rigor", and point out that a) economic feasibility is a key part of engineering, b) the level of rigor applied to any project is a function of economics, and c) the economics of software projects is a very wide range.
Put another way, statistically most devs work on projects where the blast radius of failure is some minor inconvenience to like, 5 users. We really don't need rigor there, so I can see where you're coming from. But on the other extreme like aviation software, an appropriately extreme level of rigor is applied.
- Jcampuzano2 6mo agoI don't really disagree with you. I was just pointing out how the parent mentioned how "engineering" is changing when it already has changed many many times. Of course I want the best of the best who are top notch and rigorously trained working on mission critical software.
- 2OEH8eoCRo0 6mo agoIt's a pet peeve because the truth hurts. We (most of us) aren't doing anything that resembles engineering.
- keeda 6mo agoI'd agree that applies to people, or more accurately specific projects, but not the discipline of software engineering as a whole. Even most of the projects I personally have worked on simply did not need "engineering" as such, but other projects where uptime was critical and the cost of failure was high, there was a much higher level of rigor.
- coldtea 6mo ago>I will challenge you to come up with a strict definition that excludes software engineering! "Structured, mature, legally enforced, physically grounded standards based approach to the construction of repeatable, reliable, verifiable, artifacts under stable (to the degree that matters) external constraints". Some niche software development (e.g. NASA/JPL coding projects with special rules, practices, MISRA etc) can look like that. 99.9% of the time though, software "engineering" is an ad hoc, mix and match, semi-random, always changing requirements and environments, half-art half-guess, process, by unlicensed practicioners, that is only regulated at some minor aspects of its operation (like GDPR, or accessibility requirements), if that.
- fc417fc802 6mo agoBy that definition the vast majority of historic engineers weren't "real" engineers. It's correct to claim that software engineering isn't currently an accredited profession and it's also quite reasonable to question the extent to which the vast majority of software development qualifies as the practice of engineering. But the latter is highly subjective and will likely also rule out a significant fraction of the grunt work that accredited engineers perform. Which is to say, engineer the job title is distinct from engineering the activity is distinct from engineer the accreditation.
- coldtea 6mo ago>By that definition the vast majority of historic engineers weren't "real" engineers. And they weren't. They were craftsmen and tradesmen, e.g. stonemasons.
- arealaccount 6mo agoYea we do standups every day and plan story points twice a month???
- keeda 6mo ago>* ... legally enforced ...* Other than that part (most countries in the world do not have regulations or licensing requirements for most engineering disciplines) I would agree. But I would also point out the set of software projects that meet that definition is much larger than those you listed. As mentioned, it's a matter of economics, so the rigor scales with the pain it can cause if something that goes wrong. Hence any software that has a high blast radius is that rigorously built, probably even more. There are entire categories (not just individual examples!) of such projects. An obvious category are platforms that run or build other applications: OS kernels, databases, compilers, frameworks, cloud platforms (yes those 9's are an industry standard), and so on. Then there are those regulated ones like automotive, aviation and medical software. There is even a case to be made for critical financial software. Another less obvious category applies to any large software services company that has oncall engineers, because the high cost of engineers quickly climbs and quality processes quickly get installed, which basically amount to those critera you listed. That internal LoB app with 5 users? That level of rigor simply does not make economic sense. Which is probably what you mean by: > 99.9% of the time though, software "engineering" is an ad hoc, mix and match, semi-random, always changing requirements and environments, half-art half-guess, process, by unlicensed practicioners, that is only regulated at some minor aspects of its operation (like GDPR, or accessibility requirements), if that. To that I'll say, as someone whose first site outage as an intern was an actual industrial manufacturing factory (not an AbstractFactoryFactory!) a surprisingly large fraction of projects in other engineering disciplines match that description ;-)
- deleted 6mo ago[deleted]
- skywhopper 6mo ago“Accredited”
- keeda 6mo agoMost countries do not need accreditation for engineers.